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) {
CdmSessionId cdmSessionId(reinterpret_cast<const char *>(sessionId.array()),
sessionId.size());
if (sessionId.size() == 0) {
return android::BAD_VALUE;
}
if (!mCDM->IsOpenSession(cdmSessionId)) {
return android::ERROR_DRM_SESSION_NOT_OPENED;
} else {

View File

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

View File

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

View File

@@ -21,7 +21,7 @@ namespace widevine_vts {
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>&
provisioningRequest, const std::string& url);
@@ -29,10 +29,11 @@ namespace widevine_vts {
virtual vector<uint8_t> handleKeyRequest(const vector<uint8_t>&
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
virtual std::string getServiceName() {return "default";}
virtual std::string getServiceName() const {return "default";}
private:
WidevineVTSVendorModule_V1(const WidevineVTSVendorModule_V1&) = delete;