DrmUtils: helpers to create hidl CryptoFactories/Plugins
Bug: 134787536
Test: testPocCVE_2017_13253
Change-Id: I3d71b249bd55d4895b5201d470f37817bcb5903b
diff --git a/drm/libmediadrm/interface/mediadrm/DrmUtils.h b/drm/libmediadrm/interface/mediadrm/DrmUtils.h
index a5bc09b..ab6f645 100644
--- a/drm/libmediadrm/interface/mediadrm/DrmUtils.h
+++ b/drm/libmediadrm/interface/mediadrm/DrmUtils.h
@@ -17,9 +17,13 @@
#ifndef ANDROID_DRMUTILS_H
#define ANDROID_DRMUTILS_H
+#include <android/hardware/drm/1.0/ICryptoFactory.h>
#include <utils/Errors.h> // for status_t
#include <utils/StrongPointer.h>
#include <binder/Parcel.h>
+#include <vector>
+
+using namespace ::android::hardware::drm;
namespace android {
@@ -77,6 +81,11 @@
obj.writeInt32(hasNewUsableKey);
}
+std::vector<sp<::V1_0::ICryptoFactory>> MakeCryptoFactories(const uint8_t uuid[16]);
+
+std::vector<sp<::V1_0::ICryptoPlugin>> MakeCryptoPlugins(const uint8_t uuid[16],
+ const void *initData, size_t initDataSize);
+
} // namespace DrmUtils
} // namespace android