Commit Graph

1074 Commits

Author SHA1 Message Date
Jeff Tinker
aaf4427950 Add signature|system permission to MediaDrm signer APIs
Update test to require the system permission

Merge of https://widevine-internal-review.googlesource.com/#/c/9652
from the Widevine cdm repo.

Change-Id: I071e55f09f85c420e6778ebf170f5110cf39809e
related-to-bug: 12702350
2014-04-02 23:41:12 +00:00
John "Juce" Bruce
7eea20df86 Add Support for Audio MIME Types
The EME spec technically requires CDMs to treat audio/mp4 and
video/mp4 equivalently, as well as audio/webm and video/webm. We had
only been accepting video/mp4 and video/webm up until now.

This change also centralizes handling of init data types in the shared
CDM code instead of having it spread across multiple places in the
codebase.

(This is a merge of https://widevine-internal-review.googlesource.com/9532/
from the Widevine CDM repo.)

Bug: 13564917
Change-Id: Ib8bdfb2b003ffb00e8f0559561335abb3c5778b0
2014-04-02 15:39:12 -07:00
John "Juce" Bruce
46be6edcc3 am b920034e: Add Yet More Backwards-Compatibility
* commit 'b920034e3be73eb010a349115cf25ca2a4ef83a7':
  Add Yet More Backwards-Compatibility
2014-04-02 00:12:09 +00:00
Rahul Frias
1549f7b9bd am ef875d25: am 7e5c5c75: am cbcc609d: Update YT CP server URI to point to the UAT server
* commit 'ef875d25edf56d7f52d7b77d86b7576134635022':
  Update YT CP server URI to point to the UAT server
2014-04-02 00:03:23 +00:00
Jeff Tinker
965cedd5ee resolved conflicts for merge of 3db90f54 to master
Change-Id: Ie9e46292e003fefce9ca44a31cb338a0ecf51930
2014-04-01 16:57:14 -07:00
John "Juce" Bruce
b920034e3b Add Yet More Backwards-Compatibility
It turns out the array of things certain apps pass as the MIME type is
greater than we believed. To support this, we will treat anything that
is not a known type as video/mp4 to mimic old behavior.

(This is a merge of https://widevine-internal-review.googlesource.com/9636
from the Widevine CDM repo.)

Bug: 13750843
Change-Id: I4b7bbe7d266ade9b35c6c5beb21502bf0715b854
2014-04-01 16:01:27 -07:00
Rahul Frias
ef875d25ed am 7e5c5c75: am cbcc609d: Update YT CP server URI to point to the UAT server
* commit '7e5c5c75d6f3064ce76b64fa1f389ab24dbeddaf':
  Update YT CP server URI to point to the UAT server
2014-04-01 22:15:09 +00:00
Rahul Frias
7e5c5c75d6 am cbcc609d: Update YT CP server URI to point to the UAT server
* commit 'cbcc609d5b8488b33861a745bf73d3f134dbccad':
  Update YT CP server URI to point to the UAT server
2014-04-01 22:09:31 +00:00
Jeff Tinker
3db90f54c1 Support CAST V2 authentication
bug: 12702350

Squashed commit of these CLs from the widevine cdm repo:

Cast V2 cdm support
https://widevine-internal-review.googlesource.com/#/c/9190/

Add CASTv2 Support to DrmPlugin
https://widevine-internal-review.googlesource.com/#/c/9228/

Test for CastV2 authentication APIs
https://widevine-internal-review.googlesource.com/9550

Change-Id: I6d66bc1bbd653db5542c68687b30b441dd20617f
2014-04-01 14:26:27 -07:00
Rahul Frias
cbcc609d5b Update YT CP server URI to point to the UAT server
Privacy tests from request license were failing as the YTCP drm
server location had changed.

Also updates the MediaDrmAPI test to reference the UAT server

This affects OEMs doing Widevine integrations on KK devices.

Merge of https://widevine-internal-review.googlesource.com/#/c/9233/
from wv cdm git repository

b/13324394

Change-Id: I97152b2a79a9088303e5fc4a5c07a413e4c85e15
2014-04-01 01:36:49 +00:00
John "Juce" Bruce
c3444dc9e9 resolved conflicts for merge of f111bea1 to master
Change-Id: I7f95eba8d5fb1e9a20800b9c1ef7fcb813eff41c
2014-03-31 17:35:24 -07:00
Fred Gylys-Colwell
241daa262d am 2069af77: (-s ours) Remove Test Keybox - DO NOT MERGE
* commit '2069af7771c1f659c68ea1c466b68b2032a52080':
  Remove Test Keybox - DO NOT MERGE
2014-04-01 00:25:01 +00:00
John "Juce" Bruce
f111bea1b1 Merge "Add Support for WebM Back" into klp-modular-dev 2014-03-31 23:46:51 +00:00
John "Juce" Bruce
702aadf853 Add Support for WebM Back
Adds support for WebM to the CDM. Decryption remains untouched,
however the initialization data is passed differently for WebM.

The previous version of this change broke playback for certain
apps that were being allowed to pass invalid MIME types before
this change was made. This version maintains backwards-compatiblity
for these apps for now by rewriting their MIME types as "video/mp4".

Merge of https://widevine-internal-review.googlesource.com/9225/
and https://widevine-internal-review.googlesource.com/9611/ from
the Widevine cdm repo.

Bug: 10638562
Change-Id: Ib37e838d08363f07b34b3a2e79a3f80a1f43e9ad
2014-03-31 16:16:18 -07:00
Fred Gylys-Colwell
2069af7771 Remove Test Keybox - DO NOT MERGE
This CL removes the test keybox from the reference
implementation. This keybox is only needed temporarily for Cast
testing with the test server before the real certificate server is
working.

Change-Id: Icb8b5587acc91fd9f3ec35f04f91734437f804e0
2014-03-31 15:35:12 -07:00
Jeff Tinker
55f1de2fe5 resolved conflicts for merge of 66cadaa9 to master
Change-Id: I2a052d56516f0e246d77148a38191430ff139c3e
2014-03-29 12:33:46 -07:00
Jeff Tinker
66cadaa9fa Revert "Add Support for WebM"
This reverts commit ab95cf27f1.

Change-Id: Ie78c2c14fa9b598b5ea67d6e9e60479e652b0b06
2014-03-29 17:09:28 +00:00
John "Juce" Bruce
f23c54d834 resolved conflicts for merge of ab95cf27 to master
Change-Id: I194f2a00507a8469b3f15bd2d629d41dc07c1b45
2014-03-28 16:30:31 -07:00
John "Juce" Bruce
ab95cf27f1 Add Support for WebM
Adds support for WebM to the CDM. Decryption remains untouched,
however the initialization data is passed differently for WebM.

Merge of https://widevine-internal-review.googlesource.com/#/c/9225/
from the widevine cdm repo.

Bug: 10638562
Change-Id: I7b8cf4888fa408af77cee103f768f5a7c8ffdc7e
2014-03-27 14:46:45 -07:00
Fred Gylys-Colwell
5e0b7328e7 Merge "Unit Test for OEMCrypto_ERROR_KEY_EXPIRED" 2014-03-26 19:50:34 +00:00
John "Juce" Bruce
55e8f29b40 Allow Resetting Device to L1 from L3
This change allows the security level, after it is forced from L1 to
L3, to be reset back to L1 using the string "L1" instead of only
allowing the reset string. (the empty string)

Merge of https://widevine-internal-review.googlesource.com/#/c/8928/
from the widevine cdm repo.

Bug: 10651521
Change-Id: I39797bb0a51b82db3543aec800a08ad36e11d661
2014-03-26 19:10:14 +00:00
Fred Gylys-Colwell
7a4ae90b5b Unit Test for OEMCrypto_ERROR_KEY_EXPIRED
This is a copy from the Widevine CDM repository:
https://widevine-internal-review.googlesource.com/#/c/9177/4

This CL modifies some unit tests to make sure that OEMCrypto returns
the correct error code when the key has expired.  This behaviour is
required for OEMCrypto version 9.

It also updates the code for the reference implementation and the
Level 3 implementation.

This is half of b/9205119
The other half is for the CDM layer to respond to this error code.

bug: 9205119
Change-Id: I60f934886f4ecdd1ee04825dea289fda1c0a4303
2014-03-26 18:14:38 +00:00
Fred Gylys-Colwell
0a2c9889b0 Merge "Allow Version 8 OEMCrypto to be linked with CDM" 2014-03-26 18:13:52 +00:00
Fred Gylys-Colwell
02b6d75fdd am bd4d69c5: (-s ours) am a59b9359: Support CAST V2 authentication - OEMCrypto Interface - DO NOT MERGE
* commit 'bd4d69c58d692066bf73e378241db61fc0497212':
  Support CAST V2 authentication - OEMCrypto Interface - DO NOT MERGE
2014-03-25 03:34:19 +00:00
Fred Gylys-Colwell
bd4d69c58d am a59b9359: Support CAST V2 authentication - OEMCrypto Interface - DO NOT MERGE
* commit 'a59b9359288701fd1378fa9e21413c6102f94d2a':
  Support CAST V2 authentication - OEMCrypto Interface - DO NOT MERGE
2014-03-25 01:31:00 +00:00
Fred Gylys-Colwell
a59b935928 Support CAST V2 authentication - OEMCrypto Interface - DO NOT MERGE
Squashed commit of these CLs from the widevine cdm repo:

Allow Version 8 OEMCrypto to be linked with CDM (KLP Modular Branch)
https://widevine-internal-review.googlesource.com/#/c/9434/

Allow OEMCrypto v8 or v9 (KLP Modular Branch)
https://widevine-internal-review.googlesource.com/#/c/9172/

Add alternate RSA signing (KLP Modular Branch)
https://widevine-internal-review.googlesource.com/#/c/9171/

bug: 12702350
Change-Id: Ifd0c88c566bb10efe2411af49bc83265ed56cb23
2014-03-24 13:46:38 -07:00
Fred Gylys-Colwell
e9c07e1f9b Allow Version 8 OEMCrypto to be linked with CDM
This is a copy of the Widevine CDM change:
https://widevine-internal-review.googlesource.com/#/c/9337/

This CL provides some shim code that allows the Eureka
version 8 oemcrypto library to be linked and run with CDM.

As part of this change, obfuscated names in OEMCryptoCENC.h have been
changed.

Change-Id: I18a1f91f0dfde0006591f800f8f8a034f32d9004
2014-03-24 19:51:39 +00:00
Jeff Tinker
c149538125 Merge "Prevent Nonce Flood" 2014-03-21 19:01:24 +00:00
Jeff Tinker
d898c9e8ca Merge "Add alternate RSA signing" 2014-03-21 19:01:10 +00:00
Fred Gylys-Colwell
fec3e87167 Prevent Nonce Flood
From the Widevine CDM repository:
https://widevine-internal-review.googlesource.com/#/c/9182/

This CL adds a test to verify that at most 20 nonces may be created in
one second.  This should prevent the replay attack that an
appplication could do by generating large quantities of nonces until
it finds a repeat.

I've also updated the Level 3 and reference implementations.

This feature is required for OEMCrypto version 9.

Change-Id: Ia86323133810fcbbd79d7bb27bd5a004d7c87314
2014-03-21 18:31:52 +00:00
Fred Gylys-Colwell
80e9ea9cb0 Add alternate RSA signing
From the Widevine CDM repository:
https://widevine-internal-review.googlesource.com/#/c/9183/

This adds unit tests for RSA signing with  PKCS1 block type 1. It also
adds a reference implementation.  This is part of OEMCrypto v9.

Change-Id: I2a40dbff65f6e09d75f16ae048499512f60c168d
2014-03-21 18:30:29 +00:00
Fred Gylys-Colwell
ba6b5c293a Allow OEMCrypto v8 or v9
From Widevine CL:
https://widevine-internal-review.googlesource.com/#/c/9184/

This is some shim code that will load either an OEMCrypto
version 8 or version 9 library.  This should allow us
to test and run stable devices until all OEM's have
updated to version 9.

Android Level 3 library versions are:
level3/mips/libwvlevel3.a  Level3 Library Feb 27 2014 18:18:34
level3/x86/libwvlevel3.a  Level3 Library Feb 27 2014 18:22:14
level3/arm/libwvlevel3.a  Level3 Library Feb 27 2014 12:31:29

Change-Id: I82911e3b4d9056cf3c3ab2b47194fe81ac2776d9
2014-03-21 18:29:06 +00:00
Jeff Tinker
71e9cacfe2 Merge "Changes from Widevine CDM repo" 2014-03-19 18:02:49 +00:00
Fred Gylys-Colwell
dd75655102 Changes from Widevine CDM repo
Squashed commit of these CLs from the widevine cdm repo:

Update YT CP server URI to point to the UAT server
https://widevine-internal-review.googlesource.com/#/c/9327/

OEMCrypto Version 9 API
https://widevine-internal-review.googlesource.com/#/c/9142/

Correct Device ID length in OEMCrypto reference version
https://widevine-internal-review.googlesource.com/#/c/8723/

Modify tests to prevent intermittent failures
https://widevine-internal-review.googlesource.com/#/c/8982/

Generate a unique license request ID
https://widevine-internal-review.googlesource.com/#/c/8721/

Re-enable android timer mechanisms
https://widevine-internal-review.googlesource.com/#/c/8833/

Do not close CDM session on removeKeys
https://widevine-internal-review.googlesource.com/#/c/8703/

And numerous changes required by Eureka, Steel, and CTE versions of
Widevine CDM, as highlighted here:
https://widevine-internal-review.googlesource.com/#/c/8596/
https://widevine-internal-review.googlesource.com/#/c/8955/
https://widevine-internal-review.googlesource.com/#/c/8922/
https://widevine-internal-review.googlesource.com/#/c/8890/
https://widevine-internal-review.googlesource.com/#/c/8871/
https://widevine-internal-review.googlesource.com/#/c/8706/
https://widevine-internal-review.googlesource.com/#/c/8425/

Change-Id: Iafd33905227e74eb2132c240b929d2282ab68042
2014-03-17 20:29:51 +00:00
Edwin Wong
0c0c21bb47 Upgrade Widevine Classic to 4.5.0.10120
Fix crash in WV_Teardown() causes by deleting shared output parser object.

We used to have a single output parser object and a single memory chunk object
that are shared by multiple sessions. When we delete the output parser, another
session may still be using it. The deletion causes a native crash intermittently.

The fix addresses these two issues: i)output parser object is now created per
session, and ii)add reference count to keep track of the single memory chunk
object use so we do not delet it while other sessions are still using it.

Merge of https://widevine-internal-review.googlesource.com/#/c/9253/ and
https://widevine-internal-review.googlesource.com/#/c/9271/ from widevine repo
RC/4.5.0/601_AndroidOS_K branch.

Change-Id: I7ce467a514904c9087f0da5cea74e4b85fcac1b3
related-to-bug: 13208359
2014-03-14 20:10:16 -07:00
Jeff Tinker
38f342d5d7 am 38cb1931: am f1e87b1b: resolved conflicts for merge of a0714170 to klp-modular-dev
* commit '38cb1931527ba37bf57fb7f216e2c77c62395c71':
  Remove external links from PDF documents.
2014-03-15 00:09:30 +00:00
Edwin Wong
1d4b791f63 am 0a4b49cf: (-s ours) am 349f48ef: am 338968b3: am dc3eebaf: Upgrade Widevine Classic to 4.5.0.10120
* commit '0a4b49cfdff153b24eb235dd56d21c1658f8a0e1':
  Upgrade Widevine Classic to 4.5.0.10120
2014-03-15 00:09:24 +00:00
Rahul Frias
4ff67723c8 am 564de4bb: (-s ours) am 1dab7bb3: am 47a4d355: am 21304f16: Correct encoding of make/model information
* commit '564de4bba98ec0dabbba12760f9dfe942d8d6068':
  Correct encoding of make/model information
2014-03-14 23:43:46 +00:00
Jeff Tinker
38cb193152 am f1e87b1b: resolved conflicts for merge of a0714170 to klp-modular-dev
* commit 'f1e87b1b043742166d0cb2ecb6530d5da832cbff':
  Remove external links from PDF documents.
2014-03-14 22:37:01 +00:00
Jeff Tinker
f1e87b1b04 resolved conflicts for merge of a0714170 to klp-modular-dev 2014-03-14 15:19:44 -07:00
Edwin Wong
0a4b49cfdf am 349f48ef: am 338968b3: am dc3eebaf: Upgrade Widevine Classic to 4.5.0.10120
* commit '349f48ef69a033432bb55d553a9a6f0a766db329':
  Upgrade Widevine Classic to 4.5.0.10120
2014-03-14 22:03:12 +00:00
Edwin Wong
349f48ef69 am 338968b3: am dc3eebaf: Upgrade Widevine Classic to 4.5.0.10120
* commit '338968b338facdb4a627774b264b768d517d3ceb':
  Upgrade Widevine Classic to 4.5.0.10120
2014-03-14 21:54:53 +00:00
Rahul Frias
564de4bba9 am 1dab7bb3: am 47a4d355: am 21304f16: Correct encoding of make/model information
* commit '1dab7bb3b4d55b3f9c5c9648b5beeb91492d66be':
  Correct encoding of make/model information
2014-03-14 21:50:46 +00:00
Rahul Frias
1dab7bb3b4 am 47a4d355: am 21304f16: Correct encoding of make/model information
* commit '47a4d355906000a9355222ce582d634b77640c11':
  Correct encoding of make/model information
2014-03-14 21:42:55 +00:00
Jeff Tinker
a071417071 am 47d85ef5: Merge "Remove external links from PDF documents." into klp-dev
* commit '47d85ef54ba162b77aae6a62264c23c141ae3173':
  Remove external links from PDF documents.
2014-03-14 20:51:36 +00:00
Jeff Tinker
47d85ef54b Merge "Remove external links from PDF documents." into klp-dev 2014-03-14 20:44:13 +00:00
Edwin Wong
338968b338 am dc3eebaf: Upgrade Widevine Classic to 4.5.0.10120
* commit 'dc3eebafa69ebd064cef14ac391b0e27ca3a19f0':
  Upgrade Widevine Classic to 4.5.0.10120
2014-03-14 08:48:05 +00:00
Edwin Wong
dc3eebafa6 Upgrade Widevine Classic to 4.5.0.10120
Fix crash in WV_Teardown() causes by deleting shared output parser object.

We used to have a single output parser object and a single memory chunk object
that are shared by multiple sessions. When we delete the output parser, another
session may still be using it. The deletion causes a native crash intermittently.

The fix addresses these two issues: i)output parser object is now created per
session, and ii)add reference count to keep track of the single memory chunk
object use so we do not delet it while other sessions are still using it.

Merge of https://widevine-internal-review.googlesource.com/#/c/9253/ and
https://widevine-internal-review.googlesource.com/#/c/9271/ from widevine repo
RC/4.5.0/601_AndroidOS_K branch.

Change-Id: I6426b544a6d0c264ec91a89e92153862b87607f3
related-to-bug: 13208359
2014-03-13 20:30:05 -07:00
Rahul Frias
47a4d35590 am 21304f16: Correct encoding of make/model information
* commit '21304f16fe4415c33a63042b242b69b64f45c789':
  Correct encoding of make/model information
2014-03-13 22:52:20 +00:00
Rahul Frias
21304f16fe Correct encoding of make/model information
Some make and model information was not being reported correctly to the
license server. "HTC One X+" was encoded as "HTC+One+X+" instead of
"HTC+One+X%2B", which when decoded becomes "HTC One X ". Make and model
information is now correctly url encoded.

Merge of https://widevine-internal-review.googlesource.com/#/c/9240/
from the widevine repo.

b/12722013

Change-Id: I987691c850648f92b408f8749327ff43b13b43a7
2014-03-13 11:14:44 -07:00