Commit Graph

3770 Commits

Author SHA1 Message Date
Rahul Frias
1c6633d408 Merge changes I295f66f9,I142f286c into rvc-dev am: 05fbb3dd87 am: 0db9b974c2
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11620164

Change-Id: I31070cfbc0f7f8742fea3dc5e25c1328df68de22
2020-06-16 09:03:23 +00:00
Rahul Frias
0db9b974c2 Merge changes I295f66f9,I142f286c into rvc-dev am: 05fbb3dd87
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11620164

Change-Id: I59aa80b62824a29a8350b99a8f9a35d193aa968e
2020-06-16 08:54:27 +00:00
Rahul Frias
05fbb3dd87 Merge changes I295f66f9,I142f286c into rvc-dev
* changes:
  Add ATSC support - part 2
  Add ATSC support - part 1
2020-06-16 08:46:02 +00:00
Automerger Merge Worker
9833b1e86d Merge "Remove Android.mk for OEMCrypto ref code am: 119932ea69 am: 859038e6c8" into rvc-d1-dev-plus-aosp 2020-06-16 02:20:20 +00:00
Fred Gylys-Colwell
1ee911150a Remove Android.mk for OEMCrypto ref code am: 119932ea69 am: 859038e6c8
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11870737

Change-Id: I47571f3ab78d1e917f3361258b3c29ee1f4883c4
2020-06-16 02:20:16 +00:00
Fred Gylys-Colwell
8ff9d2255d Remove Android.mk for OEMCrypto ref code am: 119932ea69 am: d0259e0942
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11870737

Change-Id: I90988810cb3a1e5443ca58fe65a9ddb775e6f326
2020-06-16 02:20:15 +00:00
Fred Gylys-Colwell
859038e6c8 Remove Android.mk for OEMCrypto ref code am: 119932ea69
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11870737

Change-Id: Iab024d334ba53aacd6813a350749f6a31568d635
2020-06-16 02:12:45 +00:00
Fred Gylys-Colwell
d0259e0942 Remove Android.mk for OEMCrypto ref code am: 119932ea69
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11870737

Change-Id: I3eba5d14aa17dc70888964154b11e70ff7e6bdbc
2020-06-16 02:12:30 +00:00
Fred Gylys-Colwell
119932ea69 Remove Android.mk for OEMCrypto ref code
Merge from Widevine repo of http://go/wvgerrit/101905

The reference OEMCrypto should not be built as part of Android.

Test: Builds
Bug: 146361995
Change-Id: Ic25e6e567fcac519636f64dabc0d59b3df78990e
2020-06-15 17:40:28 -07:00
Dan Willemsen
abf67e2910 Replace libcrypto_static with libcrypto am: 761d1723ff
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11815604

Change-Id: If659bab9de0b6878e21035aac6b99c4d4bf83e15
2020-06-15 20:00:10 +00:00
Rahul Frias
8da1145012 Add ATSC support - part 2
[ Merge of http://go/wvgerrit/100905 and http://go/ag/10708438 ]

Add support for ATSC certificate and licenses handling. ATSC
files are distinguished from the apps DRM certificate and licenses
by file naming conventions.

Bug: 139730600
Test: WV unit/integration test, GtsMediaTestCases
Change-Id: I295f66f92fe01d7716978deac9dc360d74addedd
2020-06-12 03:48:58 -07:00
Dan Willemsen
761d1723ff Replace libcrypto_static with libcrypto
libcrypto_static has restricted visibility, which is now being
implemented in Make, so we either need to allow it for all vendor
modules, or use the shared library instead.

Bug: 158599308
Test: treehugger
Test: mmma vendor/widevine/libwvdrmengine
Change-Id: I88ddce7ad221c66a20f4e05409ae77421e4196ad
2020-06-10 00:10:06 +00:00
Rahul Frias
bbe9f6afc4 Add ATSC support - part 1
[ Merge of http://go/wvgerrit/100864 and http://go/ag/10704773 ]

ATSC 3.0 allows for licenses to be downloaded OTA and are tied to
a DRM certificate that may be shared across apps. The provisioning
process for ATSC may happen at the factory or during an OS update.

This contrasts from the regular OTT model, which requires that
provisioning and license download have an uplink as well as a
downlink connection.

This adds support for the ATSC mode property. ATSC mode can only be
set (or unset) before sessions are opened. Once the CDM identifier is
set/sealed, requests to modify the ATSC mode will be rejected.

If one needs to open sessions with both ATSC mode and regular (non-ATSC)
mode, separate MediaDrm objects will need to be created. The default
mode is to not use ATSC.

Enable ATSC mode by calling
  mediaDrm.setPropertyString("atscMode", "enable")

Disable ATSC mode by calling
  mediaDrm.setPropertyString("atscMode", "disable")

Provisioning and unprovisioning requests for ATSC will be rejected as
certificates will be retrieved by the ATSC service.

Bug: 139730600
Test: WV unit/integration test, GtsMediaTestCases
Change-Id: I142f286c711fe007ff42125c3c8cdc6450b6ea36
2020-06-08 14:56:48 -07:00
Automerger Merge Worker
b8d8bdbf38 Merge "Update OEMCrypto documentation to v16.3 am: aa5fc5afd0 am: d974c03dd1" into rvc-d1-dev-plus-aosp 2020-06-04 22:00:34 +00:00
Fred Gylys-Colwell
798ceec5d6 Update OEMCrypto documentation to v16.3 am: aa5fc5afd0 am: d974c03dd1
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11707216

Change-Id: I8fda483d3c35d05b89979937845887a8d65af851
2020-06-04 22:00:31 +00:00
Fred Gylys-Colwell
615bf191a5 Update OEMCrypto documentation to v16.3 am: aa5fc5afd0 am: 30ea7ee843
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11707216

Change-Id: Ie1c3ac931db1c7f969d8e0a9e75a46b08b9ec02f
2020-06-04 22:00:28 +00:00
Fred Gylys-Colwell
d974c03dd1 Update OEMCrypto documentation to v16.3 am: aa5fc5afd0
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11707216

Change-Id: Ic40d39691e70d6ad30d9061ee510f0c38c6c4b02
2020-06-04 21:34:15 +00:00
Fred Gylys-Colwell
30ea7ee843 Update OEMCrypto documentation to v16.3 am: aa5fc5afd0
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11707216

Change-Id: Ie462379eedd98d16a3ac33d9184147baf7a47988
2020-06-04 21:34:08 +00:00
Fred Gylys-Colwell
aa5fc5afd0 Update OEMCrypto documentation to v16.3
Merge from Widevine repo of http://go/wvgerrit/101243

Changed the version number to 16.3 and the date to June 1st.  The
delta document has a short description of CL's added since
April 6th.

Test: documentation changes only
Bug: 157030231
Change-Id: I93c2b09d6a24efc71ed77110b115cafbd6fde1c6
2020-06-03 06:14:35 -07:00
Fred Gylys-Colwell
ee6c56b6fd Update OEMCrypto unit tests to require ODK 16.3 am: 45681615b8 am: b831ee0237
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677949

Change-Id: Iae74a721ce3056652e9b2081595ded2da2d70b3a
2020-06-02 22:02:00 +00:00
Fred Gylys-Colwell
f3049a4c17 Do not verify decrypt hash when no key selected am: 36968de671 am: 9b8b71a9ba
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677948

Change-Id: I98251e8de8cf9e874e74215968c2b56cd197ecec
2020-06-02 22:01:59 +00:00
Fred Gylys-Colwell
5d89bcbfa8 Unit test for loading nonce-free offline license am: a615671f48 am: e93082da54
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677947

Change-Id: I8cd1cdf4ff1a726cee5c007b4d1ad84fd1887a17
2020-06-02 22:01:57 +00:00
Fred Gylys-Colwell
54c6559f83 Check for null pointers in oemcrypto adapter am: 42eb79a3ff am: bc78188bb3
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677946

Change-Id: I362073af914d6b19980490c8571b0865d76c587c
2020-06-02 22:01:56 +00:00
Fred Gylys-Colwell
26d6f84917 Update ODK Library to 16.3 am: 166b3e8403 am: 3b9be16415
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11699230

Change-Id: Ic648b8486e9371563fa90ed20da371391aff5ca7
2020-06-02 22:01:54 +00:00
Fred Gylys-Colwell
e4ba489225 ODK: forward compatibility and nonce-free offline license support am: 8dc1d7a11d am: 3c027f9373
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11688972

Change-Id: I13b7aadbb059d1754ca7634e1fdae99ee7914421
2020-06-02 22:01:53 +00:00
Fred Gylys-Colwell
a12d082a11 Update OEMCrypto unit tests to require ODK 16.3 am: 45681615b8 am: d599c74011
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677949

Change-Id: If664f8732bd8cbef5184aea7d6679481f95e457e
2020-06-02 22:01:36 +00:00
Fred Gylys-Colwell
23f9a69a7f Do not verify decrypt hash when no key selected am: 36968de671 am: 51992ab155
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677948

Change-Id: I9e90fca0b5539c7a99ea5c840f32a81e1d32fab6
2020-06-02 22:01:34 +00:00
Fred Gylys-Colwell
32b318e7c4 Unit test for loading nonce-free offline license am: a615671f48 am: ed900f242b
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677947

Change-Id: Ie8a0e3ab425a263b07cf3a265f46ffb6aa11fc20
2020-06-02 22:01:32 +00:00
Fred Gylys-Colwell
2643b76731 Check for null pointers in oemcrypto adapter am: 42eb79a3ff am: 7a4313483c
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677946

Change-Id: I17badea700bcf40780baf33787a496da1c5b67c9
2020-06-02 22:01:30 +00:00
Fred Gylys-Colwell
4b9e91eefd Update ODK Library to 16.3 am: 166b3e8403 am: 62802d8e10
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11699230

Change-Id: I736fcfe4c1f3347d7587bd83ba22e0f2ce71a71a
2020-06-02 22:01:28 +00:00
Fred Gylys-Colwell
c2920550ed ODK: forward compatibility and nonce-free offline license support am: 8dc1d7a11d am: 5bb396fb72
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11688972

Change-Id: Ia7a272da6d58ce201348782addb2a7d201b4ebda
2020-06-02 22:01:26 +00:00
Fred Gylys-Colwell
b831ee0237 Update OEMCrypto unit tests to require ODK 16.3 am: 45681615b8
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677949

Change-Id: I3a972b2eed4b2afeb20d0fc0eab59a69420b58cd
2020-06-02 21:49:27 +00:00
Fred Gylys-Colwell
d599c74011 Update OEMCrypto unit tests to require ODK 16.3 am: 45681615b8
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677949

Change-Id: Ic8c45cc7fce842f67777ab0a003a541fbae7f9fb
2020-06-02 21:49:26 +00:00
Fred Gylys-Colwell
9b8b71a9ba Do not verify decrypt hash when no key selected am: 36968de671
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677948

Change-Id: I505682e63ccdde933696d7e6ea7cfc583cba6bfc
2020-06-02 21:49:25 +00:00
Fred Gylys-Colwell
51992ab155 Do not verify decrypt hash when no key selected am: 36968de671
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677948

Change-Id: I7f9acec222c2840720be3b36423b502582c2ee25
2020-06-02 21:49:24 +00:00
Fred Gylys-Colwell
e93082da54 Unit test for loading nonce-free offline license am: a615671f48
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677947

Change-Id: Iaf08b1c411fcd0cbc6e33ab35a7e776fd251ab01
2020-06-02 21:49:23 +00:00
Fred Gylys-Colwell
ed900f242b Unit test for loading nonce-free offline license am: a615671f48
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677947

Change-Id: Ia129aba764568a853b6b89a7f35f902ef2068942
2020-06-02 21:49:22 +00:00
Fred Gylys-Colwell
bc78188bb3 Check for null pointers in oemcrypto adapter am: 42eb79a3ff
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677946

Change-Id: Ie3aea481b19996b1086122d783b2843f0c2f74bd
2020-06-02 21:49:21 +00:00
Fred Gylys-Colwell
7a4313483c Check for null pointers in oemcrypto adapter am: 42eb79a3ff
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11677946

Change-Id: I01d29869ce9f1ce6c252066cbb8f9b4f5286a5ef
2020-06-02 21:49:21 +00:00
Fred Gylys-Colwell
3b9be16415 Update ODK Library to 16.3 am: 166b3e8403
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11699230

Change-Id: Ia6425deb08dff4ccaa50beee5fa4d9485396db06
2020-06-02 21:49:19 +00:00
Fred Gylys-Colwell
62802d8e10 Update ODK Library to 16.3 am: 166b3e8403
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11699230

Change-Id: I4d951b808e21128d8dbe4e0fafe4fd24b4753124
2020-06-02 21:49:19 +00:00
Fred Gylys-Colwell
3c027f9373 ODK: forward compatibility and nonce-free offline license support am: 8dc1d7a11d
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11688972

Change-Id: I39d7495211ed390a46e06acd22fab65ddd98b893
2020-06-02 21:49:18 +00:00
Fred Gylys-Colwell
5bb396fb72 ODK: forward compatibility and nonce-free offline license support am: 8dc1d7a11d
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/11688972

Change-Id: I61a70e52e875c017a706f1337d75405f19748dfa
2020-06-02 21:49:17 +00:00
Fred Gylys-Colwell
45681615b8 Update OEMCrypto unit tests to require ODK 16.3
Merge from Widevine repo of http://go/wvgerrit/101144

This CL updates the version string of the oemcrypto unit tests.

Test: unit tests on taimen and with reference oemcrypto v16.
Bug: 156789529
Change-Id: I504a32f0c3781870052b58d30312c58e090b145c
2020-06-02 09:36:38 -07:00
Fred Gylys-Colwell
36968de671 Do not verify decrypt hash when no key selected
Merge from Widevine repo of http://go/wvgerrit/101143

This CL removes the check for a decrypt hash error when CopyBuffer is
used instead of DecryptCenc because a key was not selected.

We also remove the attempt to check the decrypt hash when there are
multiple buffers, because that is not well defined behavior.

Bug: 155185867
Bug: 155192141
Test: ran unit tests on taimen and on v16  reference oemcrypto
Change-Id: I640e904e256f0913ca606bb5db891430b23f44a3
2020-06-02 08:30:34 -07:00
Fred Gylys-Colwell
a615671f48 Unit test for loading nonce-free offline license
Merge from Widevine repo of http://go/wvgerrit/100964

The previous nonce-free test used the same session to generate the
request as to load the license. However, it is a realistic use case to
have a new session used for loading the license.

The use case relates to a pre-loaded, shared license.

Test: Ran unit tests on taimen and on v16 ref implementation
Bug: 156853321
Change-Id: Ibc07744a16edcd3952d88d73660a75d0c3e8eeb8
2020-06-02 08:30:34 -07:00
Fred Gylys-Colwell
42eb79a3ff Check for null pointers in oemcrypto adapter
Merge from Widevine repo of http://go/wvgerrit/100963

Test: unit tests on taimen
Bug: 156967805
Change-Id: Ic8ba7461ffcaa371a5239dca84e8a3007b0df517
2020-06-02 08:30:34 -07:00
Fred Gylys-Colwell
166b3e8403 Update ODK Library to 16.3
Merge from Widevine repo of http://go/wvgerrit/101130

https://cr/314253512
ODK Library: roll version number to 16.3

https://cr/314253425
ODK Library: Accept release request as renewal request

To support forward compatibility, the v16 server should parse a
release request as a renewal request.

https://cr/314213725
ODK: Accept larger message sizes

The ODK should accept a message size that is larger than the
current
API requires. This allows for future API versions to append
fields to
a message that current the current license SDK will
ignore.

https://cr/313962712
ODK: accept messages with future API version numbers

This CL updates the ODK parse functions to accept future versions
of
the message. This will allow a v16 server to talk to a v17
device.

https://cr/313814938
ODK Version String

Add an automatically generated version string to odk_structs.h

Bug: 157030231
Bug: 157512150
Bug: 157822248
Bug: 157512322
Test: unit tests on taimen
Change-Id: I346f73c41bc984fe17856d3b61cd08cf92b39919
2020-06-02 08:30:34 -07:00
Fred Gylys-Colwell
8dc1d7a11d ODK: forward compatibility and nonce-free offline license support
Merge of http://go/wvgerrit/101183

This is a combination of multiple commits from google3:
* http://cl/313814938
  ODK Version String
* http://cl/313962712
  ODK: accept messages with future API version numbers
* http://cl/312219187
  Ignore hash if initial load of license, and the nonce not required
  (squashed into http://cl/313962712)

Test: OEMCryptoLicenseTest.LoadKeyWithNoRequest
Bug: 157822248
Bug: 156853321
Change-Id: I735d355241876bddb0c52440b0049efb72a4b26f
2020-06-01 19:13:32 +00:00
Automerger Merge Worker
af5d4ff666 Merge "Merge "Fix implicit type conversion issue in ODK" into rvc-dev am: c34e2af181 am: 4f895ec8ec" into rvc-d1-dev-plus-aosp 2020-05-30 03:31:16 +00:00