Commit Graph

3277 Commits

Author SHA1 Message Date
John "Juce" Bruce
7f16e103e6 Sony Patch to LicenseKeys::GetAllowedUsage()
Merged from http://go/wvgerrit/175350.

Sony has identified a 5-year-old copy-and-paste error in
LicenseKeys::GetAllowedUsage(). For entitled keys, it was calling
CanDecryptContent() instead of GetAllowedUsage() on the entitlement key
session. This meant that for entitled keys, the allowed_usage parameter
was never updated and the return value of the function was indicating
something different than intended.

Bug: 280902715
Test: build_and_run_all_unit_tests
Change-Id: Ic1db01b6dce08d444572f53157ff08b337c48d31
2023-05-23 18:08:31 +00:00
Jooyung Han
9baac89008 Fix build script: set output path explicitly am: 49cc8da350 am: ac1ede5d73
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/23246770

Change-Id: I56c63b308731e158e9a01ac470fc6985ee19b3ea
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-16 21:03:06 +00:00
Jooyung Han
49cc8da350 Fix build script: set output path explicitly
dev_sign_bundle uses `out/dist` as default out directory. It should
respect DIST_DIR setting.

Bug: 281617982
Test: git_mainline-widevine-release/mainline_modules-user
Change-Id: I2ede21b099b512c948e4e83702a1478982acc779
2023-05-16 13:35:34 +09:00
Vicky Min
8132bb7e84 Fix oec session id in dynamic adpater am: 74a9f80790 am: 197bb32b42
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/23246132

Change-Id: Ibb2ab6d79d389d836c1949a503c31b334a4e40b4
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-16 03:49:26 +00:00
Vicky Min
74a9f80790 Fix oec session id in dynamic adpater
[ Merge of http://go/wvgerrit/175310 ]

Pass the real oemcrypto session id from `pair.session` instead of
`session` for LoadEntitledContentKeys, since `session` can be
changed when L1 and L3 are running in parallel and `session` in
that case may not be the correct oemcrypto session id any more.

Bug: 279967915, 282180589
Test: wvts
Change-Id: I127ff37abf8b618dfbcb623f59bc999e58e7a028
2023-05-15 18:40:21 +00:00
Treehugger Robot
f83700273d Merge "Update gts/cts helper script with WVTS paths" into udc-dev am: 99b760c857 am: 8485b9a3d2
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/22961195

Change-Id: Iab36e3e345589d8c795d1414fa27775f4fc3523f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-13 09:49:19 +00:00
Treehugger Robot
99b760c857 Merge "Update gts/cts helper script with WVTS paths" into udc-dev 2023-05-13 08:13:55 +00:00
Rahul Frias
1fbaded0f8 Merge changes I5cbfcc73,I3070b3f3 into udc-dev am: 75c1b88603 am: baa6824d9a
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/23094536

Change-Id: I24032e5564998d45043d2a1fe2627fcf0b719c54
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-13 05:18:19 +00:00
Treehugger Robot
234b58cec7 Merge "Fix oec session id in dynamic adpater" into udc-dev am: 81cb2ba955 am: 90269c3633
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/23218888

Change-Id: I5c0cd405cbcb34592a814086a439e5d9f7298bb4
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-13 05:18:11 +00:00
Rahul Frias
75c1b88603 Merge changes I5cbfcc73,I3070b3f3 into udc-dev
* changes:
  Indicate support for initial_renewal_delay_base
  Fixes for renew on license load
2023-05-13 04:08:22 +00:00
Treehugger Robot
81cb2ba955 Merge "Fix oec session id in dynamic adpater" into udc-dev 2023-05-13 03:59:16 +00:00
Jooyung Han
6dc6d87624 Fix build_test breakage am: 5a6c57b11a am: ccb93ea4b1
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/23213877

Change-Id: Ic31362276d4aaa8b06e7b5e3a4266319fb225f12
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-13 01:26:55 +00:00
Jooyung Han
5a6c57b11a Fix build_test breakage
CI build_test target tests every product, which invokes the new
widevine_generic product out of the build script. This makes build fail
due to the missing TARGET_BASE_PRODUCT.

Fix it by fallback to module_arm as base product.

Bug: 281617982
Test: TH
Change-Id: I36d437a56609865e64aea86c5d3af02887b42bc7
2023-05-13 07:34:07 +09:00
Rahul Frias
0c288c1cda Indicate support for initial_renewal_delay_base
[ Merge of http://go/wvgerrit/174555 ]

This is only announced if OEMCrypto is v18+

Bug: 278751387
Test: Duration use case tests, wvts tests
Change-Id: I5cbfcc733ed2af2c940fde381b40a5be850e7e88
2023-05-12 15:05:44 -07:00
Rahul Frias
669fc9c7af Fixes for renew on license load
[ Merge of http://go/wvgerrit/173290 ]

* Renew timer offset from when license is loaded verifies that the
  rental duration has not expired and begins decryption.
* Renew timer offset from first decrypt bugfix
* Feature is enabled based on oemcrypto v18 presence
* Renewal logic verifies that |can_renew| is enabled
* Unit tests were added to reflect use cases from duration
  and renewal documentation

Bug: 278751387
Test: policy unittests, CdmUseCase tests, wvts tests
Change-Id: I3070b3f31b316e150c28ebe38d0440ab1eeb89b9
2023-05-12 15:02:32 -07:00
Vicky Min
5026c50ebc Fix oec session id in dynamic adpater
[ Merge of http://go/wvgerrit/175058 ]

Pass the real oemcrypto session id from `pair.session` instead of
`session` for LoadEntitledContentKeys, since `session` can be
changed when L1 and L3 are running in parallel and `session` in
that case may not be the correct oemcrypto session id any more.

Bug: 279967915, 282180589
Test: wvts
Change-Id: Iad0ac5e505d3b38d220f1484d4cf5f8bc3b5337f
2023-05-12 21:17:58 +00:00
Rahul Frias
cba5f6df51 Merge changes Ied664ce8,I90004025 into udc-dev am: 13368f4076 am: ff69157968
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/23088670

Change-Id: I685780940b18d74a03f76e82009201b8613da7cf
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-12 16:09:37 +00:00
Rahul Frias
13368f4076 Merge changes Ied664ce8,I90004025 into udc-dev
* changes:
  Test refactoring to support load on renewal tests
  Fix formatting of renew on license load integration tests
2023-05-12 15:08:16 +00:00
Jooyung Han
1af120c6db Merge "Add build script for widevine apkset." into udc-dev am: d13f8124ff am: 4c18d98bc7
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/23157000

Change-Id: If9f983906bc12706449008318ca0895f4ef6aa2e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-12 09:30:00 +00:00
Jooyung Han
d13f8124ff Merge "Add build script for widevine apkset." into udc-dev 2023-05-12 08:14:22 +00:00
Rahul Frias
d50b9031c9 Test refactoring to support load on renewal tests
[ Merge of http://go/wvgerrit/174470 ]

There are two sets of changes
* Mocking CryptoSession so that OEMCrypto API version can be queried
* Creating a PolicyEngineTestV16 so that API version expectations
  can be set and V18 can be accommodated.

Bug: 278751387
Test: policy_engine_unittest
Change-Id: Ied664ce87e22f697b6a45d3c573e22273e65e37f
2023-05-11 16:16:20 -07:00
Alex Dale
358846f286 Remove duplicate session ID in metrics dump. am: ed81ae2b11 am: 6204d8b5fe
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/23149071

Change-Id: Ia77107eecbc3441a15f4ee2111479fc68a2f76f4
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-11 20:38:18 +00:00
Rahul Frias
f0e546d703 Fix formatting of renew on license load integration tests
[ Merge of http://go/wvgerrit/174270 ]

Bug: 240995342
Test: Duration use case tests
Change-Id: I900040256b4accf2b695a6da0827033eadb4f2e4
2023-05-11 01:52:08 -07:00
Jooyung Han
6808813f46 Add build script for widevine apkset.
This builds Widevine APEXes for every target arch and then build APKS
file signed with devkeys.

Bug: 281617982
Test: DIST_DIR=out/dist UNBUNDLED_BUILD_SDKS_FROM_SOURCE=true \
  TARGET_BUILD_APPS="com.google.android.widevine \
    com.google.android.widevine.nonupdatable \
    com.google.android.widevine.lazy" \
  vendor/widevine/libwvdrmengine/apex/device/build.sh
Change-Id: I6b47d9de3d572298e84b26b744710818e9f75210
2023-05-11 16:01:39 +09:00
Alex Dale
ed81ae2b11 Remove duplicate session ID in metrics dump.
[ Merge of http://go/wvgerrit/174932 ]

Bug: 281794097
Test: adb shell dumpsys android.hardware.drm.IDrmFactory/widevine -m
Change-Id: Id29e1c4298ed5b86453f22012cfccc2cb5ee7d05
2023-05-10 16:20:45 -07:00
Kyle Zhang
79575fcdf6 Merge changes Icd280b53,I6eed117e into udc-dev am: 1a42aed25b am: 41990b43b9
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/23049485

Change-Id: Ib59bb191ea45d18ae29240abad4ed59a9010d7aa
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-10 22:53:48 +00:00
Kyle Zhang
1a42aed25b Merge changes Icd280b53,I6eed117e into udc-dev
* changes:
  Cast Receiver integration test
  Combine provisioning code for tests and improve logging
2023-05-10 18:40:30 +00:00
Fred Gylys-Colwell
d211195f92 Cast Receiver integration test
Merge from Widevine repo of http://go/wvgerrit/169471

Remove the test in android tests and add it to the
core tests.

Bug: 276464340
Test: GTEST_FILTER="CorePIGTest.CastReceiverProvisioning*" jenkins/run_fake_l1_tests
Change-Id: Icd280b532ddae274f66b2fab3e65520e96adb7cb
2023-05-10 18:40:21 +00:00
Fred Gylys-Colwell
836b1a30a6 Combine provisioning code for tests and improve logging
Merge from Widevine repo of http://go/wvgerrit/169018

This CL adds a provisioning holder that attempts to
provision and logs the request and response for
failures. The server team can replay the request to debug
problems on their end.

Bug: 276464340
Test: ran cast and ota tests
Change-Id: I6eed117e504ae3287f2ba16c3c507cfdc7456f8d
2023-05-10 18:38:50 +00:00
Rahul Frias
8e57831133 Fix oec session id in dynamic adpater am: 09d7572ece am: 6dbee88175
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/23104917

Change-Id: I3fc0abfc7987afb5680a5a24f2ec500ca88f35eb
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-10 07:52:39 +00:00
Pawan Wagh
acbfc3ce7d Disable leak detection in widevine aidl fuzzer
Setting up ASAN and HWASAN options to ignore leaks while fuzzing.

Test: m android.hardware.drm-service.widevine.aidl_fuzzer
Bug: 272721367
Change-Id: Icc9aebeb579a224b0f1aa4c0e4e60cb282830682
2023-05-09 19:01:43 +00:00
Rahul Frias
09d7572ece Fix oec session id in dynamic adpater
[ Merge of http://go/wvgerrit/174572 ]

Pass the real oemcrypto session id from `pair.session` instead of
`session` for CopyBuffer, since `session` can be changed when L1
and L3 are running in parallel and `session` in that case may not
be the correct oemcrypto session id any more.

Bug: 279967915
Test: wvts
Change-Id: Ic5e21ccb227d4c4992ef500435fa3b68812c4d9b
2023-05-08 23:21:47 -07:00
Treehugger Robot
daada605c0 Merge "Skip RenewOnLicenseLoad tests for v17 OEMCrypto" into udc-dev am: 24c3bbb783 am: 49891001a6
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/23049486

Change-Id: I197ded77d47304a7e0f62b5cf8ee60634547163b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-09 02:08:08 +00:00
Treehugger Robot
5c07b90b2b Merge "Expect failure on license load for expired LDL license" into udc-dev am: 6511d44f3c am: e7a5379e2b
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/23049483

Change-Id: I660eb6bba17a58c9d0fb427fc4f762cf93a67be9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-09 01:43:55 +00:00
Alex Dale
3e2a153669 Updated usage test to expect v16 duration values. am: f2bf164914 am: 766904974b am: 340fd56fe1 am: ecb9cef2f6
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/23066555

Change-Id: I34f29cdd6cda47f01fd4483265063d5e6cb3b1df
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-08 21:16:48 +00:00
Treehugger Robot
24c3bbb783 Merge "Skip RenewOnLicenseLoad tests for v17 OEMCrypto" into udc-dev 2023-05-08 20:38:47 +00:00
Treehugger Robot
6511d44f3c Merge "Expect failure on license load for expired LDL license" into udc-dev 2023-05-08 19:03:33 +00:00
Rahul Frias
fa4f9ca07d Skip RenewOnLicenseLoad tests for v17 OEMCrypto
[ Merge of http://go/wvgerrit/173950 ]

Bug: 280641992
Test: duration use case tests
Change-Id: If81df367c9359592b1ba797f6192d413afe55273
2023-05-08 11:55:40 -07:00
Alex Dale
f2bf164914 Updated usage test to expect v16 duration values.
[ Merge of http://go/wvgerrit/174431 ]

It is possible that the initial license duration was limited due to
the finit rental duration; however, if the license has a soft rental
duration, it will be considered unlimited after playback has begun.

The *.UsageTest* have been updated to ignore cases where initial
license durations are finit, but later report as unlimited.

Bug: 275651559
Test: cdm_extended_duration_test
Change-Id: I689163b1066b2bc9f9345e2279e9373010f844cc
2023-05-05 17:30:13 -07:00
Fred Gylys-Colwell
65d52908af Expect failure on license load for expired LDL license
Merge from Widevine repo of http://go/wvgerrit/170970

RenewOnLicenseLoad.Case2 tests are failing because they
are expecting to load an expired license. However, the spec
says that the license should return KEY_EXPIRED. The test is
being updated.

Some other RenewOnLicenseLoad tests were failing because
they forgot to request the renewal.

Bug: 278750980
Test: Run tests on Luci
Change-Id: I7196db11fcf43859ba9310b87fd8ccb609e47039
2023-05-04 21:18:06 -07:00
Treehugger Robot
160dfd26d4 Merge "Drop prebuilt files to android source tree." into udc-dev am: 651776f475 am: 7056d1cf9c
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/22975314

Change-Id: I883a752df82e3da2b99400635bdd998f7bfbfbdb
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-03 20:24:34 +00:00
Treehugger Robot
fff77cba30 Merge "Widevine apex cleanup" into udc-dev am: 630fbd2251 am: 2d6a8e0adf
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/22938238

Change-Id: Id3257fdd4cb5aaf4b972b58f95fa7c354f8dc900
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-03 20:24:33 +00:00
Alex Dale
3d0e4aa1d3 Merge "Exclude the default CDM from metrics history." into udc-dev am: 2e84e8b5f7 am: e8a9de1414
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/22957292

Change-Id: I76b4f72e611236b7586b82106ac143474852783c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-03 20:18:49 +00:00
Treehugger Robot
651776f475 Merge "Drop prebuilt files to android source tree." into udc-dev 2023-05-03 19:34:04 +00:00
Treehugger Robot
630fbd2251 Merge "Widevine apex cleanup" into udc-dev 2023-05-03 19:34:04 +00:00
Alex Dale
2e84e8b5f7 Merge "Exclude the default CDM from metrics history." into udc-dev 2023-05-03 18:44:06 +00:00
Kyle Zhang
dc9fbae1b4 Widevine apex cleanup
1. Remove prerelease tag.
2. Add TARGET_BUILD_WIDEVINE_USE_PREBUILT to control building from source.
3. Unify config namespace to "widevine".

Bug: 251299786
Bug: 277764729
Change-Id: I2f19bcf8efd280a1a3aa86f595599d79e20b4ff4
2023-05-03 17:38:43 +00:00
Alex Dale
aa0886b85a Merge "DRM Pluging uses CDM core's generic crypto API." into udc-dev am: 82709ebab0 am: fd481de76f
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/22956431

Change-Id: I45055578f0614842ac9b811d7ac83bf0fd6e4bac
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-03 02:37:07 +00:00
Treehugger Robot
ad94c2e960 Merge "Piped CdmEngine's generic crypto operations to Android CDM." into udc-dev am: c77b0a6bf2 am: 3fa190202b
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/22824317

Change-Id: Ie6b0eaee344b45e23b31c943d0ab7305e808d684
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-03 02:36:11 +00:00
Alex Dale
82709ebab0 Merge "DRM Pluging uses CDM core's generic crypto API." into udc-dev 2023-05-03 02:02:45 +00:00