Commit Graph

1011 Commits

Author SHA1 Message Date
Rahul Frias
29b228a10b Merge "Corrections for license release on fallback to L3" into lmp-dev 2014-09-04 18:35:03 +00:00
Rahul Frias
9bc13a07a0 Corrections for license release on fallback to L3
When falling back to L3, release requests were failing. Information
requesting falling back to L3 is passed along when the session is opened.
Licenses however are released using the key set ID and information
requesting fallback to L3(CdmClientPropertySet) at that point is
unavailable. The release was actually attempting to release a license
at the default security level which is incorrect.

In addition, the mac keys were not being setup correctly and the release
message was signed with keys derived from the license request and not the
response.  Both these issues have been addressed and unit tests added
to track release of offline licenses and usage reporting scenarios.

[ Merge of https://widevine-internal-review.googlesource.com/#/c/11062
  from wv cdm repo ]

b/17073910

Change-Id: I5cd95a7dfe58ebae7ae27ece6c92e67755c1d665
2014-09-04 10:29:10 -07:00
Edwin Wong
c6723c564a Remove Widevine Classic MediaCodec mode from application.
bug: 17303948
Change-Id: Ia0db7be1d99f8fab968641cbf57438ee1dd364ab
2014-09-03 18:06:00 -07:00
Fred Gylys-Colwell
eb4b7cdc47 Merge "Catch null pst in OEMCrypto" into lmp-dev 2014-09-03 23:03:03 +00:00
Edwin Wong
96721d7145 Update Widevine Classic Library to 4.5.0.10127.
Add openssl-0.9.8za.
https://widevine-internal-review.googlesource.com/#/c/10828/

Update openssl lib to 0.9.8za.
https://widevine-internal-review.googlesource.com/#/c/10862/

Update Version string to 601_AndroidOS_L.
https://widevine-internal-review.googlesource.com/#/c/10950/

Fix Build On lmp-dev.
https://widevine-internal-review.googlesource.com/#/c/10837/

Translate widevine:// Protocol In getConstrains() and checkRightsStatus().
https://widevine-internal-review.googlesource.com/#/c/10838/

Convert "widevine:" prefix for lm->Register() as well.
https://widevine-internal-review.googlesource.com/#/c/11080/

bug: 9835684
bug: 15932110

Change-Id: I1f996355cf13ffca8d0b6ed464aa7b59b5fe4458
2014-09-03 20:55:34 +00:00
Fred Gylys-Colwell
e51f8ba7a1 Catch null pst in OEMCrypto
This is a copy of
https://widevine-internal-review.googlesource.com/#/c/11030

It is an error for the key control block to have a nonzero replay
control flag and a null pst.  This CL adds unit tests to
oemcrypto_test to verify that oemcrypto checkes this.  A unit test is
also added for verifying that an offline license has a valid nonce the
first time it is loaded.

It also updates the reference implementation (mock) to check that the
pst is not empty when the replay control flag is nonzero.

It also updates the level 3 implementation to check that the pst is
not empty when the replay control flag is nonzero.

This change is compiled into the arm library, but because of
compilation errors, is not included in x86 or mips.

    Current Library Version:
    arm:  Level3 Library Aug 27 2014 18:42:40

bug: 16525204 OEMCrypto unit test for reloading offline license
bug: 16844305 Mock OEMCrypto does not catch null pst
Change-Id: Icdb090e80fc92522c187b26f30e5ba082f26363b
2014-09-03 11:46:10 -07:00
Rahul Frias
7c7f1f5d55 Merge "Address CDM request license unit test failures" into lmp-dev 2014-09-03 18:15:13 +00:00
Rahul Frias
d2ad6d7f13 Address CDM request license unit test failures
UAT issues fixed PSTs for each piece of content. This requires the usage
table to be cleared (or usage records released) between tests. If not
PST collisions occur and OEMCrypto fails with
OEMCrypto_ERROR_INVALID_CONTEXT (0x29).

b/17318063

[ Merge of https://widevine-internal-review.googlesource.com/#/c/11061/
  from wv cdm repo ]

Change-Id: I7758e5444637583a171edafcd4fb18315bfa8395
2014-08-29 11:14:29 -07:00
Edwin Wong
5800ecc15e Revert "Remove Widevine Classic MediaCodec mode from application."
This reverts commit a9071cd4bd.

Change-Id: Ibbfc30579bb665a18fa98cc453df956ea7c4e558
2014-08-29 13:29:40 +00:00
Jeff Tinker
fa3098ad07 Merge "Workaround WVv9 netflix license issue on fugu" into lmp-dev 2014-08-28 22:35:28 +00:00
Jeff Tinker
14460bd66e Workaround WVv9 netflix license issue on fugu
Change-Id: Ib4335d1dd0fea88b23c1b7ce675ae3863b86bc42
related-to-bug: 16994418
2014-08-28 15:28:42 -07:00
Edwin Wong
a9071cd4bd Remove Widevine Classic MediaCodec mode from application.
Hide MediaCodec mode for Build.VERSION_CODES.L and forward.

bug: 17303948
Change-Id: Iae8381ee67950a3f0c1bb9e273e3e45be24a3352
2014-08-27 18:39:06 -07:00
Jeff Tinker
b445a1fef2 Workaround for casting and playback failures
Change-Id: I45add76d7941d4942368d10e5893ff8f89a8bf82
related-to-bug: 16994418
2014-08-20 16:06:41 -07:00
Jeff Tinker
907ca911d6 Merge "Fix MediaDrmAPITest install command in test script" into lmp-dev 2014-08-16 04:03:42 +00:00
Jeff Tinker
773ddd3864 Fix MediaDrmAPITest install command in test script
Change-Id: Ibf062788e26e75838875460718c665ea56a773aa
related-to-bug: 17080975
2014-08-20 11:21:56 -07:00
Jeff Tinker
fbe0994902 Fix widevine unit test builds on 64-bit devices
bug: 17080975
Change-Id: Ic54d484e18fe0416855264ca073474f3d597e1a3
2014-08-16 12:11:05 -07:00
Jeff Tinker
0a21d9ee68 Merge "Fix widevine unit test builds on 64-bit devices" into lmp-dev 2014-08-16 03:56:00 +00:00
Edwin Wong
bd4bfa1fd4 am 4135a57f: (-s ours) am e024bb54: am 5b57acc1: am f22b9807: am 7fd92342: (-s ours) am abee817f: (-s ours) am bf68c586: am 15ef647c: Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
* commit '4135a57feb85223cc3adc58e53f74672c8b30d99':
  Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
2014-08-14 22:24:22 +00:00
Edwin Wong
4135a57feb am e024bb54: am 5b57acc1: am f22b9807: am 7fd92342: (-s ours) am abee817f: (-s ours) am bf68c586: am 15ef647c: Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
* commit 'e024bb545b0a0f06b6cbac6c14c16f596cae8493':
  Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
2014-08-14 22:19:42 +00:00
Edwin Wong
e024bb545b am 5b57acc1: am f22b9807: am 7fd92342: (-s ours) am abee817f: (-s ours) am bf68c586: am 15ef647c: Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
* commit '5b57acc12a7cef04666ed19ac6e96d2921813c85':
  Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
2014-08-14 22:15:26 +00:00
Edwin Wong
5b57acc12a am f22b9807: am 7fd92342: (-s ours) am abee817f: (-s ours) am bf68c586: am 15ef647c: Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
* commit 'f22b980716b187db673c0265acd73a1f315a374d':
  Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
2014-08-14 22:10:59 +00:00
Edwin Wong
f22b980716 am 7fd92342: (-s ours) am abee817f: (-s ours) am bf68c586: am 15ef647c: Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
* commit '7fd923422615646d94f1fa7a6dbf5a8749531258':
  Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
2014-08-14 22:06:19 +00:00
Edwin Wong
7fd9234226 am abee817f: (-s ours) am bf68c586: am 15ef647c: Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
* commit 'abee817fbffe335ddda3ecf7ef019ef2ef75c3f2':
  Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
2014-08-14 21:52:37 +00:00
Edwin Wong
abee817fbf am bf68c586: am 15ef647c: Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
* commit 'bf68c58666e1cab7f6ed384baaaf310c7db15800':
  Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
2014-08-14 21:48:21 +00:00
Edwin Wong
bf68c58666 am 15ef647c: Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
* commit '15ef647c317cabe84c73b1f05c7f5fc45f383462':
  Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
2014-08-14 21:44:07 +00:00
Fred Gylys-Colwell
157afc627a Merge "Integers encoded with PKCS#8 binary DER should have sign bit" into lmp-dev 2014-08-12 23:14:33 +00:00
Fred Gylys-Colwell
909887923d OEMCrypto_DeleteUsageTable now returns OEMCrypto_SUCCESS
Copy of widevine change:
https://widevine-internal-review.googlesource.com/#/c/10911/

OEMCrypto_DeleteUsageTable used to return an error on every call
because UsageTable::Clear always returned false.  Since there is no
error checking that Clear can do, its return type has been changed to
void, and DeleteUsageTable now returns OEMCrypto_SUCCESS for all
calls.

bug: 16799906
Change-Id: Iaa2f572e4b0feb554877579596a7f43a64d20954
2014-08-12 14:14:46 -07:00
Fred Gylys-Colwell
24c2ca2f9b Integers encoded with PKCS#8 binary DER should have sign bit
Copy of widevine change:
https://widevine-internal-review.googlesource.com/#/c/10910/

This CL adds a leading 0 to integers in the RSA test key in
oemcrypt_test.cpp.  Before this CL, versions of OEMCrypto that
correctly interpret the encoding were treating some large
integers as negative.

bug: 16876126
Change-Id: I1990fdb09509c15566d12d4cfcd055e9d200e08a
2014-08-12 14:12:23 -07:00
Edwin Wong
50c7821602 am dbcacddb: (-s ours) am 5cf6ceea: am 778f0d81: am 91a5fce4: am 9b787415: (-s ours) Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
* commit 'dbcacddb15ff8a16766f3019fb309c4cf400560b':
  Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
2014-08-11 18:51:25 +00:00
Edwin Wong
26eb410b1e am 2732fb7f: (-s ours) am 93df2f3e: am b79dfd6f: am 00b7d578: Update Widevine Classic Library to 4.5.0.10124 **** DO NOT MERGE ****
* commit '2732fb7f3c10f66b89aabaa46519cf22c970fc3d':
  Update Widevine Classic Library to 4.5.0.10124 **** DO NOT MERGE ****
2014-08-11 18:51:24 +00:00
Edwin Wong
dbcacddb15 am 5cf6ceea: am 778f0d81: am 91a5fce4: am 9b787415: (-s ours) Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
* commit '5cf6ceea61f693cc31699dc5a680abd898efa48f':
  Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
2014-08-09 00:20:39 +00:00
Edwin Wong
5cf6ceea61 am 778f0d81: am 91a5fce4: am 9b787415: (-s ours) Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
* commit '778f0d814724da5fda04353a38cc879cf56c503a':
  Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
2014-08-09 00:17:40 +00:00
Edwin Wong
778f0d8147 am 91a5fce4: am 9b787415: (-s ours) Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
* commit '91a5fce49a212cb8b11f6d6bff8e812390135e57':
  Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
2014-08-09 00:14:41 +00:00
Edwin Wong
91a5fce49a am 9b787415: (-s ours) Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
* commit '9b787415d9e56812b41abf460db18100092f5cf1':
  Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
2014-08-09 00:11:06 +00:00
Edwin Wong
2732fb7f3c am 93df2f3e: am b79dfd6f: am 00b7d578: Update Widevine Classic Library to 4.5.0.10124 **** DO NOT MERGE ****
* commit '93df2f3e5615b592397331b1ac01df0097e27b0d':
  Update Widevine Classic Library to 4.5.0.10124 **** DO NOT MERGE ****
2014-08-09 00:10:09 +00:00
Edwin Wong
93df2f3e56 am b79dfd6f: am 00b7d578: Update Widevine Classic Library to 4.5.0.10124 **** DO NOT MERGE ****
* commit 'b79dfd6f9d5142cfb33d660db3afa22a67190867':
  Update Widevine Classic Library to 4.5.0.10124 **** DO NOT MERGE ****
2014-08-09 00:05:00 +00:00
Edwin Wong
b79dfd6f9d am 00b7d578: Update Widevine Classic Library to 4.5.0.10124 **** DO NOT MERGE ****
* commit '00b7d5781488224cd62a115a9ee844060bca5eef':
  Update Widevine Classic Library to 4.5.0.10124 **** DO NOT MERGE ****
2014-08-09 00:02:07 +00:00
Edwin Wong
15ef647c31 Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
Add reference to openssl-0.9.8za submodule.
https://widevine-internal-review.googlesource.com/#/c/10863/

Update openssl lib to 0.9.8za.
https://widevine-internal-review.googlesource.com/#/c/10864/

bug: 15932110
Change-Id: Ida38800be568acce427e82e6df86044747c34a64
2014-08-08 15:42:36 -07:00
Edwin Wong
9b787415d9 Update Widevine Classic Library to 4.5.0.10109 **** DO NOT MERGE ****
Add reference to openssl-0.9.8za submodule.
https://widevine-internal-review.googlesource.com/#/c/10863/

Update openssl lib to 0.9.8za.
https://widevine-internal-review.googlesource.com/#/c/10864/

bug: 15932110

Change-Id: Ia75295329b9ce6d43dd519feb032c0c5597b419a
2014-08-07 18:46:45 -07:00
Rahul Frias
4819a26bd4 Fixes for query information and usage reporting
* The Usage APIs return usage reports from either L1 or L3 (if available).
* Correction to when usage reports are saved. In addition to other events
  they are now saved when keys are loaded, usage reports are released and soon
  after first decryption and periodically (60 seconds) after that,
  if decryption takes place.
* Usage reports now get deleted on an unprovision request.
* Policy timer is now started when offline licenses are restored.
* Usage session is now released, when a usage response is received.
* Usage tests ahev been enabled.
* Added CDM extended duration (integration) tests to test usage reporting
  and querying. These need to be run manually as they take a while (currently
  half an hour).

b/15592374

[ Merge of https://widevine-internal-review.googlesource.com/#/c/10800
  from the Widevine CDM repo ]

Change-Id: Ia817e03ebbe880e08ba7b4a235ecb82b3ff35fbf
2014-08-07 10:58:40 -07:00
Edwin Wong
00b7d57814 Update Widevine Classic Library to 4.5.0.10124 **** DO NOT MERGE ****
Add reference to openssl-0.9.8za submodule.
https://widevine-internal-review.googlesource.com/#/c/10860/

Update openssl lib to 0.9.8za.
https://widevine-internal-review.googlesource.com/#/c/10861/

Fix openssl build:
https://widevine-internal-review.googlesource.com/#/c/10865/

bug: 15932110
Change-Id: Iad0682bc686681d716b7976b95cd2b359185450c
2014-08-06 16:22:32 -07:00
John "Juce" Bruce
b608e17e08 Add Properties to Query HDCP Status and Usage Reporting Support
This is a merge of http://go/wvgerrit/10846/ from the Widevine repository.

Change-Id: I682069073d9ec58c03781de25d9c6fa5ec5864ff
2014-08-05 18:29:25 -07:00
Jeff Tinker
3099da6170 Merge "Support Device Unprovisioning" into lmp-dev 2014-08-01 13:51:29 +00:00
John "Juce" Bruce
4db7780cb5 Support Device Unprovisioning
Merge of https://widevine-internal-review.googlesource.com/#/c/10845/
from the widevine cdm repo.

Bug: 12247651
Change-Id: Ice6ec95865640fa2f736c7a9f09956395d648337
2014-08-04 13:07:20 -07:00
Fred Gylys-Colwell
a29883b0a0 am 717837ff: (-s ours) Update Protobuf Directory in Makefile (DO NOT MERGE)
* commit '717837ff00e9057f8daee53c05d73522d88ccb6f':
  Update Protobuf Directory in Makefile (DO NOT MERGE)
2014-07-30 22:53:51 +00:00
Fred Gylys-Colwell
717837ff00 Update Protobuf Directory in Makefile (DO NOT MERGE)
This update to Android.mk allows the protobuffers to be compiled and
the code to see them in the correct directories.

This change is manualy merged from master, so should not be merged back.

bug 15987446

Change-Id: I8676567c33a6ebb87a2904bff9f3aa9ce093664b
2014-07-30 13:01:16 -07:00
Rahul Frias
0fa4bee2a5 Merge "Allow offline release retries" into lmp-dev 2014-07-24 15:36:21 +00:00
Rahul Frias
9f52cd3724 Allow offline release retries
A bug prevented regenerating license release requests. This has
been corrected. A crash due to a formatting error has been addressed.
Clean up of logging and additional logging for open session failures
have been included.

b/16197822

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

Change-Id: I854ead388f311d00b1cd700dfa1b2f58322c2dd4
2014-07-29 02:06:09 -07:00
Rahul Frias
e894774942 Correct CancelKeyRequest behavior
[ Merge of https://widevine-internal-review.googlesource.com/#/c/10659/
  from the widevine cdm repo. ]

CdmEngine::CancelKeyRequest would earlier release keys by closing and
reopening a crypto session. Behavior has been changed to just close
the session.

b/15984869

Change-Id: I92a1f82fd4a97b5510596d4bc69bf07406cee606
2014-07-21 14:36:50 -07:00
Fred Gylys-Colwell
a19a965fb7 Close session after provisioning
Merge of CDM change:
https://widevine-internal-review.googlesource.com/#/c/10691/

This prevents the provisioning session from being created unless the
device needs provisioning.  And then, after provisioning, it closes
the session it had previously opened.

b/15782159 CertificateProvisioning object keeps unused CryptoSession

Change-Id: Ic52ed864fa47c7ba50b7ca4d9fea1e74930228e9
2014-07-18 13:54:42 -07:00