Loading drm/mediadrm/plugins/clearkey/common/ClearKeyUUID.cpp +21 −13 Original line number Diff line number Diff line Loading @@ -20,20 +20,28 @@ namespace clearkeydrm { bool isClearKeyUUID(const uint8_t uuid[16]) { static const uint8_t kCommonPsshBoxUUID[16] = { namespace { const std::array<uint8_t, 16> kCommonPsshBoxUUID{ 0x10,0x77,0xEF,0xEC,0xC0,0xB2,0x4D,0x02, 0xAC,0xE3,0x3C,0x1E,0x52,0xE2,0xFB,0x4B }; // To be used in mpd to specify drm scheme for players static const uint8_t kClearKeyUUID[16] = { const std::array<uint8_t, 16> kClearKeyUUID{ 0xE2,0x71,0x9D,0x58,0xA9,0x85,0xB3,0xC9, 0x78,0x1A,0xB0,0x30,0xAF,0x78,0xD3,0x0E }; return !memcmp(uuid, kCommonPsshBoxUUID, sizeof(kCommonPsshBoxUUID)) || !memcmp(uuid, kClearKeyUUID, sizeof(kClearKeyUUID)); } bool isClearKeyUUID(const uint8_t uuid[16]) { return !memcmp(uuid, kCommonPsshBoxUUID.data(), kCommonPsshBoxUUID.size()) || !memcmp(uuid, kClearKeyUUID.data(), kClearKeyUUID.size()); } std::vector<std::array<uint8_t, 16>> getSupportedCryptoSchemes() { return {kCommonPsshBoxUUID, kClearKeyUUID}; } } // namespace clearkeydrm drm/mediadrm/plugins/clearkey/common/include/ClearKeyUUID.h +5 −1 Original line number Diff line number Diff line Loading @@ -17,12 +17,16 @@ #ifndef CLEARKEY_UUID_H_ #define CLEARKEY_UUID_H_ #include <stdint.h> #include <array> #include <cstdint> #include <vector> namespace clearkeydrm { bool isClearKeyUUID(const uint8_t uuid[16]); std::vector<std::array<uint8_t, 16>> getSupportedCryptoSchemes(); } // namespace clearkeydrm #endif // CLEARKEY_UUID_H_ drm/mediadrm/plugins/clearkey/hidl/Android.bp +3 −0 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ cc_defaults { "android.hardware.drm@1.0", "android.hardware.drm@1.1", "android.hardware.drm@1.2", "android.hardware.drm@1.3", "libbase", "libbinder", "libcrypto", Loading Loading @@ -82,6 +83,7 @@ cc_binary { defaults: ["clearkey_service_defaults"], srcs: ["service.cpp"], init_rc: ["android.hardware.drm@1.2-service.clearkey.rc"], vintf_fragments: ["manifest_android.hardware.drm@1.3-service.clearkey.xml"], } cc_binary { name: "android.hardware.drm@1.2-service-lazy.clearkey", Loading @@ -89,4 +91,5 @@ cc_binary { defaults: ["clearkey_service_defaults"], srcs: ["serviceLazy.cpp"], init_rc: ["android.hardware.drm@1.2-service-lazy.clearkey.rc"], vintf_fragments: ["manifest_android.hardware.drm@1.3-service.clearkey.xml"], } drm/mediadrm/plugins/clearkey/hidl/CreatePluginFactories.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -22,7 +22,7 @@ namespace android { namespace hardware { namespace drm { namespace V1_2 { namespace V1_3 { namespace clearkey { extern "C" { Loading @@ -38,7 +38,7 @@ ICryptoFactory* createCryptoFactory() { } // extern "C" } // namespace clearkey } // namespace V1_2 } // namespace V1_3 } // namespace drm } // namespace hardware } // namespace android drm/mediadrm/plugins/clearkey/hidl/CryptoFactory.cpp +5 −2 Original line number Diff line number Diff line Loading @@ -27,9 +27,12 @@ namespace android { namespace hardware { namespace drm { namespace V1_2 { namespace V1_3 { namespace clearkey { using ::android::hardware::drm::V1_0::Status; using ::android::hardware::drm::V1_2::clearkey::CryptoPlugin; Return<bool> CryptoFactory::isCryptoSchemeSupported( const hidl_array<uint8_t, 16> &uuid) { Loading Loading @@ -60,7 +63,7 @@ Return<void> CryptoFactory::createPlugin( } } // namespace clearkey } // namespace V1_2 } // namespace V1_3 } // namespace drm } // namespace hardware } // namespace android Loading Loading
drm/mediadrm/plugins/clearkey/common/ClearKeyUUID.cpp +21 −13 Original line number Diff line number Diff line Loading @@ -20,20 +20,28 @@ namespace clearkeydrm { bool isClearKeyUUID(const uint8_t uuid[16]) { static const uint8_t kCommonPsshBoxUUID[16] = { namespace { const std::array<uint8_t, 16> kCommonPsshBoxUUID{ 0x10,0x77,0xEF,0xEC,0xC0,0xB2,0x4D,0x02, 0xAC,0xE3,0x3C,0x1E,0x52,0xE2,0xFB,0x4B }; // To be used in mpd to specify drm scheme for players static const uint8_t kClearKeyUUID[16] = { const std::array<uint8_t, 16> kClearKeyUUID{ 0xE2,0x71,0x9D,0x58,0xA9,0x85,0xB3,0xC9, 0x78,0x1A,0xB0,0x30,0xAF,0x78,0xD3,0x0E }; return !memcmp(uuid, kCommonPsshBoxUUID, sizeof(kCommonPsshBoxUUID)) || !memcmp(uuid, kClearKeyUUID, sizeof(kClearKeyUUID)); } bool isClearKeyUUID(const uint8_t uuid[16]) { return !memcmp(uuid, kCommonPsshBoxUUID.data(), kCommonPsshBoxUUID.size()) || !memcmp(uuid, kClearKeyUUID.data(), kClearKeyUUID.size()); } std::vector<std::array<uint8_t, 16>> getSupportedCryptoSchemes() { return {kCommonPsshBoxUUID, kClearKeyUUID}; } } // namespace clearkeydrm
drm/mediadrm/plugins/clearkey/common/include/ClearKeyUUID.h +5 −1 Original line number Diff line number Diff line Loading @@ -17,12 +17,16 @@ #ifndef CLEARKEY_UUID_H_ #define CLEARKEY_UUID_H_ #include <stdint.h> #include <array> #include <cstdint> #include <vector> namespace clearkeydrm { bool isClearKeyUUID(const uint8_t uuid[16]); std::vector<std::array<uint8_t, 16>> getSupportedCryptoSchemes(); } // namespace clearkeydrm #endif // CLEARKEY_UUID_H_
drm/mediadrm/plugins/clearkey/hidl/Android.bp +3 −0 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ cc_defaults { "android.hardware.drm@1.0", "android.hardware.drm@1.1", "android.hardware.drm@1.2", "android.hardware.drm@1.3", "libbase", "libbinder", "libcrypto", Loading Loading @@ -82,6 +83,7 @@ cc_binary { defaults: ["clearkey_service_defaults"], srcs: ["service.cpp"], init_rc: ["android.hardware.drm@1.2-service.clearkey.rc"], vintf_fragments: ["manifest_android.hardware.drm@1.3-service.clearkey.xml"], } cc_binary { name: "android.hardware.drm@1.2-service-lazy.clearkey", Loading @@ -89,4 +91,5 @@ cc_binary { defaults: ["clearkey_service_defaults"], srcs: ["serviceLazy.cpp"], init_rc: ["android.hardware.drm@1.2-service-lazy.clearkey.rc"], vintf_fragments: ["manifest_android.hardware.drm@1.3-service.clearkey.xml"], }
drm/mediadrm/plugins/clearkey/hidl/CreatePluginFactories.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -22,7 +22,7 @@ namespace android { namespace hardware { namespace drm { namespace V1_2 { namespace V1_3 { namespace clearkey { extern "C" { Loading @@ -38,7 +38,7 @@ ICryptoFactory* createCryptoFactory() { } // extern "C" } // namespace clearkey } // namespace V1_2 } // namespace V1_3 } // namespace drm } // namespace hardware } // namespace android
drm/mediadrm/plugins/clearkey/hidl/CryptoFactory.cpp +5 −2 Original line number Diff line number Diff line Loading @@ -27,9 +27,12 @@ namespace android { namespace hardware { namespace drm { namespace V1_2 { namespace V1_3 { namespace clearkey { using ::android::hardware::drm::V1_0::Status; using ::android::hardware::drm::V1_2::clearkey::CryptoPlugin; Return<bool> CryptoFactory::isCryptoSchemeSupported( const hidl_array<uint8_t, 16> &uuid) { Loading Loading @@ -60,7 +63,7 @@ Return<void> CryptoFactory::createPlugin( } } // namespace clearkey } // namespace V1_2 } // namespace V1_3 } // namespace drm } // namespace hardware } // namespace android Loading