Commit Graph

153 Commits

Author SHA1 Message Date
Chris Pearce
812726afd0 Bug 1308821 - Ensure ClearKey doesn't parse a keyids initdata format session type parameter. r=kikuo
The specification doesn't require there to be a 'type' member of
the keyids init data format.

MozReview-Commit-ID: 7mOm7KwyyuC

--HG--
extra : source : c9fb674f3cb8dff4fe8734e0426e67825878015d
2016-10-09 20:42:01 -07:00
Chris Pearce
d0ce61581c Bug 1313266 - Make gmp-clearkey reject with TypeError instead of InvalidAccessError on invalid input. r=gerald
The spec expects this, and now we pass more web platform tests.

MozReview-Commit-ID: 9HJFp2ebczk

--HG--
extra : source : 6d50c9068b52d8846e4d528d150f3f3dbd9a233d
2016-10-27 14:59:02 +13:00
Phil Ringnalda
62997f0b4b Backed out changeset 9b132e52aa0a (bug 1308821) for wpt encrypted-media/clearkey timeouts and unexpected passes 2016-10-26 19:07:49 -07:00
Chris Pearce
04141020eb Bug 1313202 - Make ClearKey resolve MediaKeySession.closed promise before promise returned by MediaKeySession.close(). r=gerald
MozReview-Commit-ID: KWwN6W07Cba

--HG--
extra : rebase_source : 4eb210a5816981a26e9792e3141564e6b235ea20
2016-10-27 10:35:16 +13:00
Chris Pearce
b6dbc9a4a9 Bug 1308821 - Ensure ClearKey doesn't parse a keyids initdata format session type parameter. r=kikuo
The specification doesn't require there to be a 'type' member of
the keyids init data format.

MozReview-Commit-ID: 7mOm7KwyyuC

--HG--
extra : rebase_source : 88b729ae0b0f851763bbd06ec48bae2d6ac1c47e
2016-10-09 20:42:01 -07:00
Sebastian Hengst
ab415c7049 Backed out changeset 736a78915259 (bug 1310879) 2016-10-19 11:25:00 +02:00
Chris Pearce
a8a56efe47 Bug 1310879 - Remove persistent license support from gmp-clearkey. r=kikuo
MozReview-Commit-ID: LlBUD4xPpRC

--HG--
extra : rebase_source : 3cec8951cee990271d724c59b4c7f9d517a820a2
2016-10-18 16:10:05 +13:00
Kilik Kuo
26bd0bc8ef Bug 1308424-[Part1] Verify the license response size while updating session. r=cpearce
MozReview-Commit-ID: IXZLWnbYTn9

--HG--
extra : rebase_source : fbf015e56443320c55960121e4d59379d9ffabcd
2016-10-07 18:16:30 +08:00
Carsten "Tomcat" Book
ec76d557f1 Merge mozilla-central to autoland 2016-10-12 12:07:59 +02:00
James Cheng
ff7e2ab548 Bug 1309171 - Reduce an unnecessary copy by universal reference. r=gerald
MozReview-Commit-ID: 6lED8WcGtje

--HG--
extra : rebase_source : e246e607f0a48b7cc12683eac3bc0f37639936dc
2016-10-11 18:07:06 +08:00
Phil Ringnalda
798404cf65 Backed out changeset f47181dc6ad7 (bug 1308424) for unexpectedly passing encrypted-media-update-disallowed-input.html 2016-10-11 19:23:29 -07:00
Kilik Kuo
d3d72c3b63 Bug 1308424- Verify the license response size while updating session. r=cpearce
MozReview-Commit-ID: AmyCOutPvWn

--HG--
extra : rebase_source : 8fd1c98ba5039fc55ee3e5ac8b9cfc61f9dee4e2
2016-10-07 18:16:30 +08:00
Chris Pearce
cc1ef8649c Bug 1308076 - Move PSSH parser gtests into media/psshparser/gtest. r=glandium
MozReview-Commit-ID: G760z2sIQpO

--HG--
rename : media/gmp-clearkey/0.1/gtest/TestClearKeyUtils.cpp => media/psshparser/gtest/TestPsshParser.cpp
rename : media/gmp-clearkey/0.1/gtest/moz.build => media/psshparser/gtest/moz.build
extra : source : a409d51e3efa0099344ff4b8ebc414ddb50ce829
2016-10-07 21:34:54 +13:00
Chris Pearce
a00a07e25a Bug 1308076 - Consistently put expected value where it's expected in EXPECT_EQ() in Pssh Parser gtest. r=jwwang
The expected value comes first in the EXPECT_EQ gtest macro. So reorder our
calls to this macro in the Pssh Parser gtests to match that.

This makes it easier to read what's the expected value when the test fails.


MozReview-Commit-ID: LJ4ND2gRPi4

--HG--
extra : source : 34254ffcdb6fe9e053449210556fb2333f7a205a
2016-10-07 21:17:42 +13:00
Chris Pearce
591af22fc7 Bug 1308076 - Fixup PSSH parser gtests. r=jwwang
We're now obliged to be stricter, taking from the example of the Web Platform
Tests.

MozReview-Commit-ID: AJNDoRZ9BF8

--HG--
extra : source : 5180fdf042b03362b882ceb3a8ac0e664049bd64
2016-10-07 21:12:18 +13:00
Chris Pearce
3bb7ad5953 Bug 1308076 - Rename CLEARKEY_KEY_LEN to CENC_KEY_LEN. r=jwwang
This better reflects that it's used for all CENC keys, not just ClearKey keys.

MozReview-Commit-ID: 9uCzDKVDLjc

--HG--
extra : source : 3307b3e0d411ceb9888f10afdbebc07ab9efce61
2016-10-07 11:14:04 +13:00
Chris Pearce
8b3c096a18 Bug 1308076 - Don't statically link mfplat.lib into gmp-clearkey. r=glandium
We're loading functions from that library dynamically in gmp-clearkey anyway,
we don't need to statically link this.


MozReview-Commit-ID: AKwP5aWLsK3

--HG--
extra : source : 857f21f44316ef8125fedf8db22b5d3191d9c7e9
2016-10-07 11:20:05 +13:00
Chris Pearce
35e13f726f Bug 1308076 - Move ClearKeyCencParser to PsshParser library. r=glandium
To validate the PSSH init data passed to EME, I'd like to reuse the same
PSSH parser that the ClearKey CDM shared library uses. So move the code
out of gmp-clearkey and into its own library, so we can link it statically
into code that needs to use it.



MozReview-Commit-ID: 7xSUSmCueJz

--HG--
rename : media/gmp-clearkey/0.1/ClearKeyCencParser.cpp => media/psshparser/PsshParser.cpp
rename : media/gmp-clearkey/0.1/ClearKeyCencParser.h => media/psshparser/PsshParser.h
extra : source : 78dcbc5d3c26547c63269eb14034a67863cf28de
2016-10-06 20:23:38 +13:00
Sebastian Hengst
2bb0f9b7a2 Backed out changeset 68f1d429368c (bug 1308076)
--HG--
rename : media/psshparser/PsshParser.cpp => media/gmp-clearkey/0.1/ClearKeyCencParser.cpp
rename : media/psshparser/PsshParser.h => media/gmp-clearkey/0.1/ClearKeyCencParser.h
2016-10-11 10:41:25 +02:00
Sebastian Hengst
b3064bba8d Backed out changeset b2ef285116b3 (bug 1308076) 2016-10-11 10:41:20 +02:00
Sebastian Hengst
bd612c1fd3 Backed out changeset 4ce11c2f2e69 (bug 1308076) 2016-10-11 10:41:08 +02:00
Sebastian Hengst
8718521d1f Backed out changeset 11fc2627544c (bug 1308076) 2016-10-11 10:41:04 +02:00
Sebastian Hengst
57c3796c20 Backed out changeset 2ce4a30bdf86 (bug 1308076) 2016-10-11 10:41:00 +02:00
Sebastian Hengst
8a98e7cddd Backed out changeset 5862e3ccc989 (bug 1308076) 2016-10-11 10:40:56 +02:00
Chris Pearce
c18aa7f516 Bug 1308076 - Move PSSH parser gtests into media/psshparser/gtest. r=glandium
MozReview-Commit-ID: G760z2sIQpO

--HG--
rename : media/gmp-clearkey/0.1/gtest/TestClearKeyUtils.cpp => media/psshparser/gtest/TestPsshParser.cpp
rename : media/gmp-clearkey/0.1/gtest/moz.build => media/psshparser/gtest/moz.build
extra : rebase_source : 80fc084137ca84f9263cb056c27f296b8f05111c
2016-10-07 21:34:54 +13:00
Chris Pearce
ba946f19e0 Bug 1308076 - Consistently put expected value where it's expected in EXPECT_EQ() in Pssh Parser gtest. r=jwwang
The expected value comes first in the EXPECT_EQ gtest macro. So reorder our
calls to this macro in the Pssh Parser gtests to match that.

This makes it easier to read what's the expected value when the test fails.


MozReview-Commit-ID: LJ4ND2gRPi4

--HG--
extra : rebase_source : 85ca2dcff57354253b801fbd598c89698c74c2d6
2016-10-07 21:17:42 +13:00
Chris Pearce
2f998b9d61 Bug 1308076 - Fixup PSSH parser gtests. r=jwwang
We're now obliged to be stricter, taking from the example of the Web Platform
Tests.

MozReview-Commit-ID: AJNDoRZ9BF8

--HG--
extra : rebase_source : 79b13d1d7d1b6b6b4a382b6a17af81606af608fa
2016-10-07 21:12:18 +13:00
Chris Pearce
a0900b6998 Bug 1308076 - Rename CLEARKEY_KEY_LEN to CENC_KEY_LEN. r=jwwang
This better reflects that it's used for all CENC keys, not just ClearKey keys.

MozReview-Commit-ID: 9uCzDKVDLjc

--HG--
extra : rebase_source : dfd7fe864be6825a86dfed4f60b448a5edac286f
2016-10-07 11:14:04 +13:00
Chris Pearce
48ecbebd03 Bug 1308076 - Don't statically link mfplat.lib into gmp-clearkey. r=glandium
We're loading functions from that library dynamically in gmp-clearkey anyway,
we don't need to statically link this.


MozReview-Commit-ID: AKwP5aWLsK3

--HG--
extra : rebase_source : 23ab95e7bb2f756ef1df7f97b96ec7da0953533f
2016-10-07 11:20:05 +13:00
Chris Pearce
10c6ab2576 Bug 1308076 - Move ClearKeyCencParser to PsshParser library. r=glandium
To validate the PSSH init data passed to EME, I'd like to reuse the same
PSSH parser that the ClearKey CDM shared library uses. So move the code
out of gmp-clearkey and into its own library, so we can link it statically
into code that needs to use it.



MozReview-Commit-ID: 7xSUSmCueJz

--HG--
rename : media/gmp-clearkey/0.1/ClearKeyCencParser.cpp => media/psshparser/PsshParser.cpp
rename : media/gmp-clearkey/0.1/ClearKeyCencParser.h => media/psshparser/PsshParser.h
extra : rebase_source : 3f621aa1d99c6a73f6b5f3ca9d1f84022266a833
2016-10-06 20:23:38 +13:00
Kilik Kuo
21f4832a64 Bug 1303662 - Avoid accessing uninitialized member while debugging. r=cpearce
MozReview-Commit-ID: IX4bI9HB8Ub

--HG--
extra : rebase_source : c3d33f757e228788546b234711f3f8e4f51424ce
2016-10-07 18:40:34 +08:00
Kilik Kuo
4d162fcd4a Bug 1303922 - Part 1: Make EME keystatuschanged information notified in batch. r=cpearce
MozReview-Commit-ID: IeExaQ62qTF

--HG--
extra : transplant_source : t%D4%AFxu%D6%40%F8hU%D2%94%D4q8q%EDy%08-
2016-10-04 17:18:46 +08:00
Kilik Kuo
eafec00033 Bug 1289968 - [Part2] Provide max length limitation for KeyIds and Webm Initdata, then correct cooresponding web-platform-tests meta file. r=gerald
MozReview-Commit-ID: DbaF1wZXwav

--HG--
extra : transplant_source : %F4%FF%5E%E4%DBN%B8%15%23%2A%BD%E3%D4P%DF%A8%98n%F7%ED
2016-09-17 03:24:49 +08:00
Chris Pearce
ee9ca0dd5e Bug 1289968 - [Part1] Ensure ClearKey doesn't assume keyIds can only be 16 bytes. r=cpearce
MozReview-Commit-ID: Hf2IQsAHa4r

--HG--
extra : transplant_source : %D1%2C%B2j%1C%F5%A7%A9%D8%0B%EEE%92%B1%DC1%A5A%BC%8B
2016-08-01 16:28:10 +12:00
Igor
175543fda8 Bug 1293384 - Part 2: Rename Snprintf.h header to Sprintf.h. r=froydnj 2016-08-14 23:43:21 -07:00
Chris Pearce
a2a8662207 Bug 1289931 - Fire InvalidAccessError instead of AbortError when ClearKey's generateRequest is passed invalid initData. r=gerald
Google's Web Platform EME test expects this, and it makes sense.

MozReview-Commit-ID: CCuEHYintob

--HG--
extra : rebase_source : 7b2a9f38b5c22ecb0af8b9a2e270eaa7d0bf2da0
2016-07-28 11:08:27 +12:00
Chris Pearce
30716f1d57 Bug 1278198 - Adapt Adobe GMP's obsolete GMPDecryptor interface to new interface. r=gerald
The Adobe GMP only supports up to GMPDecryptor version 7. We're now up to
version 9.  So we need to provide an adaptor to convert the old version to run
with the new interface.

MozReview-Commit-ID: 5dKreev7JMv

--HG--
extra : rebase_source : b9aa1b66ad23e9f7ddbe60b71c94c161ad974818
2016-07-14 13:33:48 +12:00
Chris Pearce
f49856bc79 Bug 1278198 - Pipe through distinctive identifier and persistent state allowed. r=gerald
MozReview-Commit-ID: A92e0XGp5s4

--HG--
extra : rebase_source : 09f7ba18c9b81263aa345cc7f34f0ef2a2548482
2016-07-07 17:26:15 +12:00
Chris Pearce
1ea9b742f5 Bug 1278198 - Update EME code to reflect new WebIDL name changes. r=gerald
MozReview-Commit-ID: EssCsJxBBwt

--HG--
extra : rebase_source : 154746eca911e2250f3fa94a6a2d4b2624910e50
2016-07-04 14:14:01 +12:00
Iris Hsiao
371d555f4a Backed out changeset 656b778e0f15 (bug 1278198) 2016-07-22 12:06:50 +08:00
Iris Hsiao
b2381608d3 Backed out changeset af577b7547c4 (bug 1278198) 2016-07-22 12:06:00 +08:00
Iris Hsiao
8494189c07 Backed out changeset c9e56c91112e (bug 1278198) 2016-07-22 12:05:35 +08:00
Chris Pearce
831d889b55 Bug 1278198 - Adapt Adobe GMP's obsolete GMPDecryptor interface to new interface. r=gerald
The Adobe GMP only supports up to GMPDecryptor version 7. We're now up to
version 9.  So we need to provide an adaptor to convert the old version to run
with the new interface.

MozReview-Commit-ID: 5dKreev7JMv

--HG--
extra : rebase_source : f944a40e2287c7a7dd01a2fb145a9e5882dd2368
2016-07-14 13:33:48 +12:00
Chris Pearce
06a7c88a23 Bug 1278198 - Pipe through distinctive identifier and persistent state allowed. r=gerald
MozReview-Commit-ID: A92e0XGp5s4

--HG--
extra : rebase_source : 6bf51883e4236a0dff1485c4335578f38debdc09
2016-07-07 17:26:15 +12:00
Chris Pearce
bc86455eb5 Bug 1278198 - Update EME code to reflect new WebIDL name changes. r=gerald
MozReview-Commit-ID: EssCsJxBBwt

--HG--
extra : rebase_source : 5ac95874355dd70d97f6749143542b5cfb5abfc8
2016-07-04 14:14:01 +12:00
Tom Tromey
5538d692d3 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx

--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
2016-07-14 10:16:42 -06:00
Chris Pearce
b6c7bf750a Bug 1287000 - Ensure ClearKey's CENC PSSH parser can handle PSSH boxes with a 0 size field. r=jwwang
Google's Web Platform EME tests contain a CENC PSSH box with a 0 size field.
Our existing PSSH parser in our ClearKey plugin doesn't handle this well, it
gets stuck in an infinite loop. We should really handle everything that Chrome
handles, so we should handle this input.

We also shouldn't really be using raw pointers in the PSSH parser.

So rewrite the PSSH parser to use a ByteReader, and handle an invalid 0 sized
common SystemID box.

Also add gtests for the parser, and skip over PSSH boxes with unknown SystemIDs
(if they have valid sizes that is).


MozReview-Commit-ID: CdVPpphAJV

--HG--
extra : rebase_source : e9a1b439f8b371653c2c97322a2db64cafef6dd8
2016-07-15 09:31:07 +12:00
Gerald Squelart
23c839e07f Bug 1274637 - Detect OOB copy attempts in clearkey decryptor - r=cpearce
MozReview-Commit-ID: LgXe8xrQvzs
2016-05-26 19:46:40 +02:00
Benoit Girard
89a2736994 Bug 1278036 - Rename Endian.h to BigEndian.h for case insensitive Linux builds. r=cpearce
MozReview-Commit-ID: CePIpZZEjD

--HG--
rename : media/gmp-clearkey/0.1/Endian.h => media/gmp-clearkey/0.1/BigEndian.h
extra : rebase_source : a05ccec4e75da7f0bc1eb1a38c2f7e84b82d31ce
2016-06-05 13:24:51 -04:00
Chris Peterson
8a9e2d2bd4 Bug 1272513 - Part 2: Remove redundant -Wshadow CXXFLAGS from moz.build files. r=glandium 2016-05-14 00:54:55 -07:00