New codes are being added to handle resource
contention, lost session state, frame size too
large and insufficient security level for
decryption. Also cleans up inconsistent use of
tamper detected error where invalid state error
should have been used.
bug:111504510
bug:111505796
test: cts and gts media test cases
Change-Id: I8581aed1871d728f7af80b246d0dba28b40fa4a3
The shared library path was incorrectly set based on
the drm.64bit.enabled flag. It should be set based
on whether the drm service is running as 32-bit or
64-bit.
Test: vts-tradefed run commandAndExit vts -m VtsHalDrmV1_0Target
bug:111289939
Change-Id: I388dc87bd4566211dc2901feccf1e6e1c90bfe67
Merged-In: I388dc87bd4566211dc2901feccf1e6e1c90bfe67
In change id Ie2f306bce6aec697ae584da3f55b3cf72edaa07b, a
shared memory leak was fixed using a workaround that
maintained compatibility with the frozen DRM HAL API
1.1. Unfortunately it triggered an error log message that
was no longer an error condition. This change just removes
the log line to avoid raising undue concerns.
Change-Id: I9abe08ef5ab86b2f8589a5c1e5c5175e19ab09d2
Test: Compiles
Bug:111131173
The shared library path was incorrectly set based on
the drm.64bit.enabled flag. It should be set based
on whether the drm service is running as 32-bit or
64-bit.
Test: vts-tradefed run commandAndExit vts -m VtsHalDrmV1_0Target
bug:111289939
Change-Id: I388dc87bd4566211dc2901feccf1e6e1c90bfe67
When calling update-makefiles.sh there are
some unrelated changes that were missed in
previous commits.
Bug: 8675309
Test: compilation
Change-Id: I5bf67fbcc809de36bde1869ada7b835566a5198b
* The testEnvBase template is only used to register the testing hal.
* The service name is specifically determined by the test logic, so
disable the feature for vts to run the test against all service
instance (by setting HalServiceCombMode::NO_COMBINATION)
Bug: 64203181
Test: make vts
vts-tradefed run vts -m VtsHalDrmV1_0Target
vts-tradefed run vts -m VtsHalDrmV1_1Target
Change-Id: Ib2e005e8ccbc815067f0e9455fcd3e6c5ec151fb
Vendors implementing the newly added MediaDrm.setSecurityLevel
HAL found that it was difficult to implement properly. Also the
semantics are somewhat ambiguous from the Java platform API
level. The APIs have changed to bind the security level
assignment to openSession which clarifies the API for apps as
well as making it more natural to implement in HAL modules. This
CL updates the VTS tests to account for those changes.
bug:72831697
bug:64001680
test: VtsHalDrmV1_1TargetTest, GTS media tests
Change-Id: I2adf13f9da7726b206df6fcc82b1e2e11fc94674
During development of the vendor/widevine HAL module, the newly added
MediaDrm.setSecurityLevel method was found to be difficult to
implement efficiently since the security level is needed at the time
a session is opened. This CL moves the security level parameter to
openSession to resolve this problem.
bug:72831697
bug:64001680
test: VtsHalDrmV1_1TargetTest, GTS media tests
Change-Id: Id9c765131d0ee6fa85f83d098955acf603229b46
Adds test cases for the getMetrics call in the DRM 1.1 HAL clear key
implementation.
Bug: 64001680
Test: VtsHalDrmV1_1TargetTest
Change-Id: I7c292f79f7477a6a88296aa62eae02cc70e35102
Test: VtsHalDrmV1_1TargetTest
Methods are for querying HDCP, security levels
and number of sessions.
Change-Id: Iaa865a0201a4c10b0c6b055aabab146dd31a2d01
Methods are needed to release a secure stop by ID and
return a list of secure stops.
Tests: gts media tests
bug:67361434
bug:64001680
Change-Id: I53cb0671b9b775e8da16bcc61008e1700466180b
Also added the appropriate type information for exporting metrics from a
plugin.
Bug: 64001676
Bug: 64001680
Change-Id: I9ccd4fbcf7201990e6d08c24e814e24833459a23
Test: Verified that the interface builds. No implementation, yet.
Two additional KeyRequestTypes have been added, None and Update. None
indicates that no key request is needed as keys have already been loaded.
Update indicates that while keys have previously been loaded, an
additional (non-renewal) license request is needed.
Bug: 70335058
Test: make
Change-Id: I43b7491110871332c3a79573773c441c2a4f5ccb
New methods are for querying HDCP, security levels and
number of sessions
bug:64001680
bug:33657579
Change-Id: Idb3d66a805ac530221536058614e0df8460e627b
bug:70205403
Test: manual play movies test forcing the legacy default
widevine plugin to be used, instead of the widevine hidl
service.
Change-Id: Icb5b234999c5bf49b31d967814e48d42d9dd767f
Removing whenever I see these in code reviews.
Test: none
Merged-In: I4322f533a837d55618ec2ed2125e8966ace9d61d
Change-Id: I4322f533a837d55618ec2ed2125e8966ace9d61d
To stay close to the original test, the only time the test will abort is
when it encounters errors in Setup.
The following changes are applied in this CL:
- #include <openssl/aes.h> should be sorted alphabetically
- gtest macro should follow convention of ASSERT_EQ(expected, actual)
- removed unused variables: num, ecount_buf and kNotSecure
- TestQueryKeyStatus needs to call closeSession()
- moved and renamed test dependent global constants:
e.g. k256SubSampleByteCount, k512SubSampleClearBytes and k512SubSampleEncryptedBytes
- use isOK() for checking Status::OK, e.g.
ASSERT_TRUE(cryptoPlugin->setMediaDrmSession(sessionId).isOk());
Test: VTS test
adb shell /data/nativetest/VtsHalDrmV1_0TargetTest/VtsHalDrmV1_0TargetTest
bug: 68735305
Change-Id: Ic8f43b4c35644bf7223f24a531eae818e59e0f4a
AesCtrDecryptor::decrypt() doesn't check whether the size of "key" is
equal to 16 bytes, which may lead to an OOB read problem in the context
of mediadrmserver. The fix is in clearkey plugin. Add tests to validate
the fix.
Test: VTS test
adb shell /data/nativetest/VtsHalDrmV1_0TargetTest/VtsHalDrmV1_0TargetTest
bug: 63982768
Merged-In: Ife2da17e7f39d8031bc36b83c3b27ba5e9d83eb7
Change-Id: Ife2da17e7f39d8031bc36b83c3b27ba5e9d83eb7