Commit Graph

3752 Commits

Author SHA1 Message Date
Fred Gylys-Colwell
eaa14012ea Replace OEMCrypto_LoadDeviceRSAKey with OEMCrypto_LoadDRMPrivateKey am: 56b836bda3 am: 4af6f0cf42 am: c78affbc28
Change-Id: Ic1c1a620680d8cce01c97c63a625a19ca636a823
2020-03-29 19:56:01 +00:00
Fred Gylys-Colwell
b3657d0a6e Replace OEMCrypto_LoadDeviceRSAKey with OEMCrypto_LoadDRMPrivateKey am: 56b836bda3 am: bb42e9bd41 am: 6b56c1c5ec
Change-Id: I05a984258ab5637351a2ef6d48fff3ac7da7b1a9
2020-03-29 19:55:57 +00:00
Fred Gylys-Colwell
c78affbc28 Replace OEMCrypto_LoadDeviceRSAKey with OEMCrypto_LoadDRMPrivateKey am: 56b836bda3 am: 4af6f0cf42
Change-Id: I938b2cad4c00df41562b0f7ddb327f60961f491e
2020-03-29 19:46:04 +00:00
Fred Gylys-Colwell
6b56c1c5ec Replace OEMCrypto_LoadDeviceRSAKey with OEMCrypto_LoadDRMPrivateKey am: 56b836bda3 am: bb42e9bd41
Change-Id: I4099a6dcd2aed17b2132ac0fad22b0268098d22d
2020-03-29 19:45:51 +00:00
Fred Gylys-Colwell
4af6f0cf42 Replace OEMCrypto_LoadDeviceRSAKey with OEMCrypto_LoadDRMPrivateKey am: 56b836bda3
Change-Id: Ia80b1cb34f01e6d85461eb2fef7f22abe219e6b4
2020-03-29 19:30:57 +00:00
Fred Gylys-Colwell
bb42e9bd41 Replace OEMCrypto_LoadDeviceRSAKey with OEMCrypto_LoadDRMPrivateKey am: 56b836bda3
Change-Id: I2478269c1165c4dac094b6f79eae77c80b65668e
2020-03-29 19:30:45 +00:00
Fred Gylys-Colwell
56b836bda3 Replace OEMCrypto_LoadDeviceRSAKey with OEMCrypto_LoadDRMPrivateKey
Merge from Widevine repo of http://go/wvgerrit/96783

This CL updates the reference code, unit tests, and adapter to use the
new v16 function OEMCrypto_LoadDRMPrivateKey. This is just an API
change to allow ECC support in the future. The reference code does not
yet support ECC certificates, and the CDM code assumes that all
certificates have an RSA key.

Bug: 152558018
Test: unit tests on taimen and w/v16 mod mock.
Change-Id: I0793b416513b81b3d74849f0b58dbdc91f075ac6
2020-03-29 10:43:54 -07:00
Rahul Frias
1aaa864456 Merge "Reject partial clear subsamples when keys are not loaded" into rvc-dev am: 3560247878 am: c79babac4c am: bb38d223f8 am: 4b28c9b871
Change-Id: I1242eeb6600bdf8770166111a71f810eb8b8d9b6
2020-03-28 19:47:31 +00:00
Rahul Frias
ac2dadef0e Merge "Reject partial clear subsamples when keys are not loaded" into rvc-dev am: 3560247878 am: eba182293d am: e53740a0c4
Change-Id: I03e00b968e99196bd53bd875fad98990ea9adfb5
2020-03-28 19:31:15 +00:00
Rahul Frias
ce55664f89 Merge "Reject partial clear subsamples when keys are not loaded" into rvc-dev am: 3560247878 am: c79babac4c am: 93bb315c8e
Change-Id: I514b0ec18e4b124dc8979826ed25730821e391d8
2020-03-28 19:31:08 +00:00
Rahul Frias
4b28c9b871 Merge "Reject partial clear subsamples when keys are not loaded" into rvc-dev am: 3560247878 am: c79babac4c am: bb38d223f8
Change-Id: I96a8df06aa5c94e7ada10ffe860202a748aeb1a6
2020-03-28 19:31:06 +00:00
Rahul Frias
e53740a0c4 Merge "Reject partial clear subsamples when keys are not loaded" into rvc-dev am: 3560247878 am: eba182293d
Change-Id: I917f52263e70e03ea958c789b2f366fc29e19608
2020-03-28 19:09:26 +00:00
Rahul Frias
bb38d223f8 Merge "Reject partial clear subsamples when keys are not loaded" into rvc-dev am: 3560247878 am: c79babac4c
Change-Id: I1e826fc634e3517898c10caa61624cc905242608
2020-03-28 19:09:26 +00:00
Rahul Frias
93bb315c8e Merge "Reject partial clear subsamples when keys are not loaded" into rvc-dev am: 3560247878 am: c79babac4c
Change-Id: Icfa7b9cf7c3714f86e3de812f386512f2be9a312
2020-03-28 19:09:14 +00:00
Rahul Frias
eba182293d Merge "Reject partial clear subsamples when keys are not loaded" into rvc-dev am: 3560247878
Change-Id: I8af7288266e5ad5ec82685ea7b467e8ef35a29cb
2020-03-28 18:43:07 +00:00
Rahul Frias
c79babac4c Merge "Reject partial clear subsamples when keys are not loaded" into rvc-dev am: 3560247878
Change-Id: I1a0ebfba3f4648e44dc3f28870076c6a6e0f1cc2
2020-03-28 18:42:55 +00:00
Rahul Frias
3560247878 Merge "Reject partial clear subsamples when keys are not loaded" into rvc-dev 2020-03-28 18:24:15 +00:00
Rahul Frias
734aea940b Reject partial clear subsamples when keys are not loaded
[ Merge of http://go/wvgerrit/96514 ]

The combined decryption call feature was introduced in android R.
In earlier releases, subsamples were passed one at a time for
decryption within the plugin. A decryption request that consists
entirely of clear data should be passed on to OEMCrypto even if
no keys are loaded.

A sample might consist of subsamples of clear and protected data.
In legacy mode, this proved to be an issue for OEMCrypto if the clear
subsamples were passed on but the protected ones were rejected (b/110251447).

For legacy mode and in the absence of keys being loaded, the subsample will
be passed to OEMCrypto only if the clear lead/frame is in a single subsample
and not broken up across multiple subsamples.

Bug: 150316417
Test: WV android unit/integration tests
Change-Id: Iff8ae8f58530cb9c5d31ce388742443ae807c16f
2020-03-27 15:07:29 -07:00
Fred Gylys-Colwell
c5dcb0dbca Add unit test for preloaded license am: ca404aae6f am: ab82b4b78f am: f2c24373a6 am: e3f5c1ae3f
Change-Id: Ibf9ab418251b97b2bb15d69d7fc7c37949d14804
2020-03-27 19:47:01 +00:00
Fred Gylys-Colwell
6e12c64da2 Add unit test for preloaded license am: ca404aae6f am: 6bd4b47612 am: 64e528dc99
Change-Id: I080c5f4fab3947d4e910e9e2472dac389c9a54fb
2020-03-27 19:36:08 +00:00
Fred Gylys-Colwell
3cdcf12c20 Add unit test for preloaded license am: ca404aae6f am: ab82b4b78f am: d8ea3672c4
Change-Id: Icf7f0036654ae5609bbe3c653fc8447c265567b0
2020-03-27 19:34:53 +00:00
Fred Gylys-Colwell
e3f5c1ae3f Add unit test for preloaded license am: ca404aae6f am: ab82b4b78f am: f2c24373a6
Change-Id: I092fdbd44330551134a6bb98511858cc9cbef0dc
2020-03-27 19:31:36 +00:00
Fred Gylys-Colwell
64e528dc99 Add unit test for preloaded license am: ca404aae6f am: 6bd4b47612
Change-Id: I0ce97c01bceaa48a5ea8fce2870f8c072eca3fbe
2020-03-27 19:21:28 +00:00
Fred Gylys-Colwell
f2c24373a6 Add unit test for preloaded license am: ca404aae6f am: ab82b4b78f
Change-Id: Icfcfda4c1410426ba3364907594a513052b04455
2020-03-27 19:21:27 +00:00
Fred Gylys-Colwell
d8ea3672c4 Add unit test for preloaded license am: ca404aae6f am: ab82b4b78f
Change-Id: I650eec69db450862ca645b1cab0f55c20926a635
2020-03-27 19:21:04 +00:00
Fred Gylys-Colwell
ab82b4b78f Add unit test for preloaded license am: ca404aae6f
Change-Id: I68c4098513de8313f7ecd9b30958c5b05a620703
2020-03-27 19:05:44 +00:00
Fred Gylys-Colwell
6bd4b47612 Add unit test for preloaded license am: ca404aae6f
Change-Id: Ieeff31dfb52a182da5217ab26ddd168d39e44381
2020-03-27 19:05:43 +00:00
Fred Gylys-Colwell
ca404aae6f Add unit test for preloaded license
Merge from Widevine repo of http://go/wvgerrit/96508

This adds a unit test for to verify that a preloaded license may be
loaded into OEMCrypto. A preloaded license is a license that does not
have a nonce, and for which there is no license request. This is used
in CAS and ATSC.

I also updated the test version string to
OEMCrypto unit tests for API 16.2. Tests last updated 2020-03-27

Bug: 144105097
Test: ran oemcrypto unit tests on taimen and with v16 modmock.
Change-Id: I6a4926917f36a084d15defa7b908d067612c4dcf
2020-03-26 15:38:38 -07:00
Cong Lin
0b792d2ebd Merge "Use unique_ptr in oemcrypto ref" into rvc-dev am: a55244025b am: 0abb41845e am: b9ef42f7a6 am: f42fbe6394
Change-Id: I15603c179e59e65d60e8060ef037ef3a2b3f0d2a
2020-03-26 19:02:47 +00:00
Cong Lin
7ede55d7c1 Merge "Use unique_ptr in oemcrypto ref" into rvc-dev am: a55244025b am: 275b896d9c am: a87dafc5ba
Change-Id: Ib185969162dc4ff2ba950995094b440f2f0bb60d
2020-03-26 18:54:04 +00:00
Cong Lin
63ad1466ee Merge "Use unique_ptr in oemcrypto ref" into rvc-dev am: a55244025b am: 0abb41845e am: b651eb3278
Change-Id: I15b7d558abe8ee52f9894fd0c7beab1df00639ee
2020-03-26 18:53:50 +00:00
Cong Lin
f42fbe6394 Merge "Use unique_ptr in oemcrypto ref" into rvc-dev am: a55244025b am: 0abb41845e am: b9ef42f7a6
Change-Id: I18dbb965ac53cff45ed75d4f0040c3db83cfa68d
2020-03-26 18:53:20 +00:00
Cong Lin
a87dafc5ba Merge "Use unique_ptr in oemcrypto ref" into rvc-dev am: a55244025b am: 275b896d9c
Change-Id: I871b21d3aabccbb70c271748332b145f56ebdca9
2020-03-26 18:42:56 +00:00
Cong Lin
b9ef42f7a6 Merge "Use unique_ptr in oemcrypto ref" into rvc-dev am: a55244025b am: 0abb41845e
Change-Id: I1b05161d7fe15f573a70a58768b186ef87c7188f
2020-03-26 18:42:34 +00:00
Cong Lin
b651eb3278 Merge "Use unique_ptr in oemcrypto ref" into rvc-dev am: a55244025b am: 0abb41845e
Change-Id: I1fef37738bf914471a412e199643874983ee9b1e
2020-03-26 18:42:25 +00:00
Cong Lin
275b896d9c Merge "Use unique_ptr in oemcrypto ref" into rvc-dev am: a55244025b
Change-Id: I266de93e39d6754539b562da6b24ce42892b294d
2020-03-26 18:28:22 +00:00
Cong Lin
0abb41845e Merge "Use unique_ptr in oemcrypto ref" into rvc-dev am: a55244025b
Change-Id: If9fd5ca1143cf3372cf70a7d3627c8e98514a3a8
2020-03-26 18:28:10 +00:00
Cong Lin
a55244025b Merge "Use unique_ptr in oemcrypto ref" into rvc-dev 2020-03-26 18:15:33 +00:00
Cong Lin
a53a6bf355 Use unique_ptr in oemcrypto ref
Merge from Widevine repo of http://go/wvgerrit/95945

The reference oemcrypto and testbed still use old style pointers, even
though we now require a more modern C++ compiler. Updated a few places
where smart pointer would be appropriate.

Bug: 141393616
Test: Ran unit tests
Change-Id: I8b1e155bce241075928e373478d6f8e1001233f9
2020-03-26 16:15:24 +00:00
Alex Dale
547ef61575 Merge "Usage table header operations no longer need an open session." into rvc-dev am: 73f301a66c am: ef31c865f2 am: a983f577b1 am: 228075d3f5
Change-Id: I6ce1d33eba4b2d754ead1da916d7c245be459add
2020-03-26 04:25:47 +00:00
Alex Dale
9ae6ffd1db Merge "New CDM error codes for usage table errors." into rvc-dev am: 8d45d93d0e am: b587f64cac am: c75f01f7c9 am: 819f20e6aa
Change-Id: Ic55ed4932c977caa23a6f6ac90453ddf0c0d013b
2020-03-26 04:25:26 +00:00
Alex Dale
21561e45dc Merge "Usage table header operations no longer need an open session." into rvc-dev am: 73f301a66c am: d650718c27 am: 970ceb343a
Change-Id: I13bf21d6405c9f8205bd82dbaf2f8a274040543c
2020-03-26 04:14:19 +00:00
Automerger Merge Worker
b5996adea3 Merge "Merge "New CDM error codes for usage table errors." into rvc-dev am: 8d45d93d0e am: 4188d4478b" into rvc-d1-dev-plus-aosp am: 72eebd9d75
Change-Id: I1e488e37b7bf9829e7e9a0219ba80dc069cbb661
2020-03-26 04:14:14 +00:00
Alex Dale
7402eb8f0f Merge "Usage table header operations no longer need an open session." into rvc-dev am: 73f301a66c am: ef31c865f2 am: 8aff059243
Change-Id: I97780666cdeb31aa93b4c219a1d65023acc3bb87
2020-03-26 04:14:07 +00:00
Alex Dale
228075d3f5 Merge "Usage table header operations no longer need an open session." into rvc-dev am: 73f301a66c am: ef31c865f2 am: a983f577b1
Change-Id: Idb46a4220146d271be1c25974445a17cfcb8c37c
2020-03-26 04:13:36 +00:00
Alex Dale
efc12c3cef Merge "New CDM error codes for usage table errors." into rvc-dev am: 8d45d93d0e am: b587f64cac am: 4e22b2253c
Change-Id: Id31e8bd535de82aad9434382c912298bff9222e7
2020-03-26 04:13:35 +00:00
Alex Dale
819f20e6aa Merge "New CDM error codes for usage table errors." into rvc-dev am: 8d45d93d0e am: b587f64cac am: c75f01f7c9
Change-Id: I32bcb618b47891f83fb49dd87ddb2938341c5a3c
2020-03-26 04:13:30 +00:00
Alex Dale
a983f577b1 Merge "Usage table header operations no longer need an open session." into rvc-dev am: 73f301a66c am: ef31c865f2
Change-Id: Ifa3470a582eb45437e98e25c49043cc08b6ffce7
2020-03-26 03:57:31 +00:00
Alex Dale
970ceb343a Merge "Usage table header operations no longer need an open session." into rvc-dev am: 73f301a66c am: d650718c27
Change-Id: I5b122e382a37fa977ae6f5e661fc64beff34eaa5
2020-03-26 03:57:26 +00:00
Alex Dale
c75f01f7c9 Merge "New CDM error codes for usage table errors." into rvc-dev am: 8d45d93d0e am: b587f64cac
Change-Id: Ic3bbf3ed9662db105921e68a2edaf54e035d1fc5
2020-03-26 03:57:26 +00:00