Merge "Add additional VTS drm tests for widevine" into oc-dev

This commit is contained in:
TreeHugger Robot
2017-04-06 18:20:58 +00:00
committed by Android (Google) Code Review
4 changed files with 17 additions and 8 deletions

View File

@@ -82,6 +82,9 @@ void WVCryptoPlugin::notifyResolution(uint32_t width, uint32_t height) {
status_t WVCryptoPlugin::setMediaDrmSession(const Vector<uint8_t>& sessionId) { status_t WVCryptoPlugin::setMediaDrmSession(const Vector<uint8_t>& sessionId) {
CdmSessionId cdmSessionId(reinterpret_cast<const char *>(sessionId.array()), CdmSessionId cdmSessionId(reinterpret_cast<const char *>(sessionId.array()),
sessionId.size()); sessionId.size());
if (sessionId.size() == 0) {
return android::BAD_VALUE;
}
if (!mCDM->IsOpenSession(cdmSessionId)) { if (!mCDM->IsOpenSession(cdmSessionId)) {
return android::ERROR_DRM_SESSION_NOT_OPENED; return android::ERROR_DRM_SESSION_NOT_OPENED;
} else { } else {

View File

@@ -302,6 +302,9 @@ status_t WVDrmPlugin::provideKeyResponse(
} }
status_t WVDrmPlugin::removeKeys(const Vector<uint8_t>& sessionId) { status_t WVDrmPlugin::removeKeys(const Vector<uint8_t>& sessionId) {
if (!sessionId.size()) {
return android::BAD_VALUE;
}
CdmSessionId cdmSessionId(sessionId.begin(), sessionId.end()); CdmSessionId cdmSessionId(sessionId.begin(), sessionId.end());
CdmResponseType res = mCDM->RemoveKeys(cdmSessionId); CdmResponseType res = mCDM->RemoveKeys(cdmSessionId);
@@ -322,6 +325,9 @@ status_t WVDrmPlugin::restoreKeys(const Vector<uint8_t>& sessionId,
status_t WVDrmPlugin::queryKeyStatus( status_t WVDrmPlugin::queryKeyStatus(
const Vector<uint8_t>& sessionId, const Vector<uint8_t>& sessionId,
KeyedVector<String8, String8>& infoMap) const { KeyedVector<String8, String8>& infoMap) const {
if (sessionId.size() == 0) {
return android::BAD_VALUE;
}
CdmSessionId cdmSessionId(sessionId.begin(), sessionId.end()); CdmSessionId cdmSessionId(sessionId.begin(), sessionId.end());
CdmQueryMap cdmLicenseInfo; CdmQueryMap cdmLicenseInfo;

View File

@@ -22,7 +22,7 @@ namespace widevine_vts {
const int kHttpOk = 200; const int kHttpOk = 200;
vector<uint8_t> WidevineVTSVendorModule_V1::getUUID() { vector<uint8_t> WidevineVTSVendorModule_V1::getUUID() const {
uint8_t uuid[16] = { uint8_t uuid[16] = {
0xED,0xEF,0x8B,0xA9,0x79,0xD6,0x4A,0xCE, 0xED,0xEF,0x8B,0xA9,0x79,0xD6,0x4A,0xCE,
0xA3,0xC8,0x27,0xDC,0xD5,0x1D,0x21,0xED 0xA3,0xC8,0x27,0xDC,0xD5,0x1D,0x21,0xED
@@ -84,11 +84,11 @@ namespace widevine_vts {
} }
vector<DrmHalVTSVendorModule_V1::ContentConfiguration> vector<DrmHalVTSVendorModule_V1::ContentConfiguration>
WidevineVTSVendorModule_V1::getContentConfigurations() { WidevineVTSVendorModule_V1::getContentConfigurations() const {
vector<DrmHalVTSVendorModule_V1::ContentConfiguration> configurations; vector<DrmHalVTSVendorModule_V1::ContentConfiguration> configurations;
{ {
const string serverUrl = "https://proxy.uat.widevine.com/proxy"; const string serverUrl = "http://widevine-proxy.appspot.com/proxy";
const vector<uint8_t> initData = a2b_hex( const vector<uint8_t> initData = a2b_hex(
"00000042" // blob size "00000042" // blob size
"70737368" // "pssh" "70737368" // "pssh"
@@ -98,14 +98,13 @@ namespace widevine_vts {
"08011a0d7769646576696e655f746573" // pssh data... "08011a0d7769646576696e655f746573" // pssh data...
"74220f73747265616d696e675f636c69" "74220f73747265616d696e675f636c69"
"7031"); "7031");
vector<uint8_t> keyIdVec;
const vector<uint8_t> keyId = a2b_hex("371EA35E1A985D75D198A7F41020DC23"); const vector<uint8_t> keyId = a2b_hex("371EA35E1A985D75D198A7F41020DC23");
const vector<uint8_t> keyValue = a2b_hex("371EA35E1A985D75D198A7F41020DC23"); const vector<uint8_t> keyValue = a2b_hex("371EA35E1A985D75D198A7F41020DC23");
const vector<DrmHalVTSVendorModule_V1::ContentConfiguration::Key> keys = { const vector<DrmHalVTSVendorModule_V1::ContentConfiguration::Key> keys = {
{ {
.isSecure = false, .isSecure = false,
.keyId = keyId, .keyId = keyId,
.keyValue = keyValue .clearContentKey = keyValue
} }
}; };

View File

@@ -21,7 +21,7 @@ namespace widevine_vts {
WidevineVTSVendorModule_V1() {} WidevineVTSVendorModule_V1() {}
virtual ~WidevineVTSVendorModule_V1() {} virtual ~WidevineVTSVendorModule_V1() {}
virtual vector<uint8_t> getUUID(); virtual vector<uint8_t> getUUID() const;
virtual vector<uint8_t> handleProvisioningRequest(const vector<uint8_t>& virtual vector<uint8_t> handleProvisioningRequest(const vector<uint8_t>&
provisioningRequest, const std::string& url); provisioningRequest, const std::string& url);
@@ -29,10 +29,11 @@ namespace widevine_vts {
virtual vector<uint8_t> handleKeyRequest(const vector<uint8_t>& virtual vector<uint8_t> handleKeyRequest(const vector<uint8_t>&
keyRequest, const std::string& serverUrl); keyRequest, const std::string& serverUrl);
virtual std::vector<ContentConfiguration> getContentConfigurations(); virtual std::vector<ContentConfiguration>
getContentConfigurations() const;
// TODO: change to "widevine" when HAL service is available // TODO: change to "widevine" when HAL service is available
virtual std::string getServiceName() {return "default";} virtual std::string getServiceName() const {return "default";}
private: private:
WidevineVTSVendorModule_V1(const WidevineVTSVendorModule_V1&) = delete; WidevineVTSVendorModule_V1(const WidevineVTSVendorModule_V1&) = delete;