From 8a9b3c5c7569844f5ac3781338ad467b8886c27f Mon Sep 17 00:00:00 2001 From: Ian Benz Date: Fri, 24 Mar 2023 17:50:40 +0000 Subject: [PATCH] Fix OEMCrypto_LoadEntitledContentKeys fuzzer - Create an entitled key session for OEMCrypto v17 and later. - Refresh corpus files. Merged from https://widevine-internal-review.googlesource.com/168897 Merged from https://widevine-internal-review.googlesource.com/169292 Change-Id: Ied9fce445a837e417077381de71d2834f385f120 --- .../043170680cfcfff82b302f215a249f3b5dcafef4 | Bin 0 -> 772 bytes .../07d8092ab06df623ae6fee5cdc8c980ba5fd7632 | Bin 0 -> 772 bytes .../122d1a11960c26756abee35e8e00f651ab83826b | Bin 0 -> 772 bytes .../30a1c909b57f87d05eebacde8cbf06fe0edb1388 | Bin 0 -> 772 bytes .../3248805594a4813b92c50318c7796358bf4c72aa | Bin 0 -> 772 bytes .../4c4b8424a2c6bee6e9dc90ff7a6a15fbac31b237 | Bin 0 -> 772 bytes .../4f0a52f6a1d4c7115eb75a4ee2da63899ce546f2 | Bin 0 -> 772 bytes .../5439302b2dcb50225ff9eed132532f2ebdd1ffdf | Bin 0 -> 772 bytes .../66cd8fa5bfcf0d6286c9879cbc4110d1db64413b | Bin 0 -> 772 bytes .../6f8b954fb7f8be2c3632f931aaf55e3d1a6c58d8 | Bin 676 -> 0 bytes .../70dc0d37f73f8aa50ca695b4f54e16ec694bed37 | Bin 0 -> 772 bytes .../7997b5673d5a9402b2f8acc43f92cdf6ad1f913d | Bin 676 -> 0 bytes .../8196b2365ca56224853dfeeddde216b4f467f0dd | Bin 676 -> 0 bytes .../81ac6d013d80da7f67fe6fbb5e8c15a35a0d8134 | Bin 676 -> 0 bytes .../adc436cfb531505ef07ebfe262cbde69d33a1719 | Bin 0 -> 772 bytes .../da6321d50123e1d0ed6352454d69ec4dbf7117ca | Bin 0 -> 772 bytes .../e59c6ea9ea826b971d264afa117084272fe3b58c | Bin 0 -> 772 bytes .../e97d00e4e1fa9804afd6f54dfe6f9b51d3245ac3 | Bin 0 -> 772 bytes .../f82a9473b78b5126bb5676a3437417e3324d9b91 | Bin 0 -> 772 bytes ...mcrypto_load_entitled_content_keys_fuzz.cc | 22 ++++++++++++------ 20 files changed, 15 insertions(+), 7 deletions(-) create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/043170680cfcfff82b302f215a249f3b5dcafef4 create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/07d8092ab06df623ae6fee5cdc8c980ba5fd7632 create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/122d1a11960c26756abee35e8e00f651ab83826b create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/30a1c909b57f87d05eebacde8cbf06fe0edb1388 create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/3248805594a4813b92c50318c7796358bf4c72aa create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/4c4b8424a2c6bee6e9dc90ff7a6a15fbac31b237 create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/4f0a52f6a1d4c7115eb75a4ee2da63899ce546f2 create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/5439302b2dcb50225ff9eed132532f2ebdd1ffdf create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/66cd8fa5bfcf0d6286c9879cbc4110d1db64413b delete mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/6f8b954fb7f8be2c3632f931aaf55e3d1a6c58d8 create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/70dc0d37f73f8aa50ca695b4f54e16ec694bed37 delete mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/7997b5673d5a9402b2f8acc43f92cdf6ad1f913d delete mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/8196b2365ca56224853dfeeddde216b4f467f0dd delete mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/81ac6d013d80da7f67fe6fbb5e8c15a35a0d8134 create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/adc436cfb531505ef07ebfe262cbde69d33a1719 create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/da6321d50123e1d0ed6352454d69ec4dbf7117ca create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/e59c6ea9ea826b971d264afa117084272fe3b58c create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/e97d00e4e1fa9804afd6f54dfe6f9b51d3245ac3 create mode 100644 libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/f82a9473b78b5126bb5676a3437417e3324d9b91 diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/043170680cfcfff82b302f215a249f3b5dcafef4 b/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/043170680cfcfff82b302f215a249f3b5dcafef4 new file mode 100644 index 0000000000000000000000000000000000000000..40f7308c17b94488167e10d94a2bcb24c65faa5e GIT binary patch literal 772 zcmZQzKm`I&?m;vF6R+!^_3-hb@V@6u?>^k}lB2O`L96lsYYXT1@ty`9vmVa=y3Yz*0L;9@XaFW2vDzrWyP?JC+4N234E7PP z!!=hF%G$#g=gw{S^qj=9||mIPD)#y3FY2cYp``qAkOG<6MV{26Hc9cX+g7lXQhrtSqAp8*%?ALjt)ONA literal 0 HcmV?d00001 diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/07d8092ab06df623ae6fee5cdc8c980ba5fd7632 b/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/07d8092ab06df623ae6fee5cdc8c980ba5fd7632 new file mode 100644 index 0000000000000000000000000000000000000000..75ecfd609cebd6248959ec81f2511eaf7ec409a7 GIT binary patch literal 772 zcmZQzKm`I&?m;vF6E_Ld+i#vGcxN&Zgl>4`F0yoVOf zF5&N&uliTBsCtb#%ydRH05k6p8i0xax&L!^f<;vN!W|78_R2|5)$t72zcxI0-@*E; znr6DX29xiLjxn!A|^BdGw(1OfQi55|Nic>`J1Ax+`OE6=2DGC zb6(#x2o3pu$u7zMvB-|KftS?042w(Fp7`}VV2(!MIVPw*%xC~+-Vrna6K`>p&t4V9 ztib+w1&{ir$>RRjqP1JHm@}K|_cu>yX*<*|t8B1xQDxBS3C;WC+RId#q4wy;$Hl|K z5N4JHQ~<^|K;s9X@nQPW=?pY=4QTusX#5>$d?*)#x`3wc1sb0L8d)&+E1>Z)41@|; Ups5Q$<7c4pJJ9$r`_Rn?040=@WB>pF literal 0 HcmV?d00001 diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/122d1a11960c26756abee35e8e00f651ab83826b b/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/122d1a11960c26756abee35e8e00f651ab83826b new file mode 100644 index 0000000000000000000000000000000000000000..a50f565261ddfe98f394a7e12c2f98f5e47cf1d3 GIT binary patch literal 772 zcmZQzKm`I&?m;vF6L%Juf5Va>W%tC@N>trD`QF22Y+n=vZe*|R&)UCF?$*I*1=RHQKMNDV_X5L{m023EFS9JAK7@p196 zFoc;U0TqDp4bb=jXndG{bUFh~T>~0_1{!|{8XwBVpe~@Pdx6GhfJPR~{R(J&3{0=leE^`6rb(gCE literal 0 HcmV?d00001 diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/30a1c909b57f87d05eebacde8cbf06fe0edb1388 b/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/30a1c909b57f87d05eebacde8cbf06fe0edb1388 new file mode 100644 index 0000000000000000000000000000000000000000..75c873c105d402b13d5e9299756e8e8cb925fb2f GIT binary patch literal 772 zcmZQzKm`I&?m;vF6VHFYSJ*m8c5}K|!?RZ@cAnSXspsdrvPkUP{#%Ag-R`Wkk-ks7 zve?B1(Z!eLG;9-KrZb`en0bfL08G4N>cw{%6R&Tc;31jun{C>a{wZ2)tPc-VU;B2* zN8;2p$5^prv#$5aH}D3q@!sm6vXBvK5fd7KnRgfsz{JZw)?2-GoW9&G^N6IwRRJRh zh9^NuEKb=6wF0NciWt71(-gu4rv`)?4RcgH8+|LwYY`-5c)%0Ft!uWtCVZLxgDQci_{_`h#X z%Wvsmy`Gd6aWqCBW;!DpfSGp)4Zy^gh((lVB|bPQ`IynmOF_0u&|QzZTNuwsa%@}1V!#NshzSkA%sY$*VB*uOO_HRy+nu>_Cv0I)Y1xzI z!9V{s<(#?3XQj%#=k-4$`Q@9Agb9h1O9y_Plu%?{$pp2B84bY9JAwva;@?@U+_&W@ z|J`*}Z1rLBh;?tY1n1ni8`9UWzMl7*#5bMbN&c$#p&D83&r)Aqz9_H847Eo$J}w>> zhA^`vpaL+y0UAF5jSth0PG_L0Ye3`AK;!Q~<3qU^)CDwkFVOf5(8z+hUjdDeVIWk% U0!>{28b1S#-+{)5*@tdE0JVRUBme*a literal 0 HcmV?d00001 diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/4c4b8424a2c6bee6e9dc90ff7a6a15fbac31b237 b/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/4c4b8424a2c6bee6e9dc90ff7a6a15fbac31b237 new file mode 100644 index 0000000000000000000000000000000000000000..baadceb0426e57926c27c87645a0f018c4746451 GIT binary patch literal 772 zcmZQzKm`I&?m;vF6JPk|$Hr{UKf5^(vPrc6`Z+a&DPHg4lqk)$m)XB{I5mCEXWUmI zJE7HfX8VDYtv+AuV5T#o0hoD*&;U&QW%Uh?t21if$4?7UgP}br`#^m1q3mxnGS3?3{FFSe#raF^1vAth-T1h8 zSQx_0l7I@p_y%bF05m>KKRTU(rmg{vKLd@w1C0;mVo(>*)V)CCGe9E?=6(eZD4HT zF8}z_f~6PPP1PMTRNXGb2&|EHn(FhiYW?)*^X{qgUu1&X!;A)C<{d!;FmZA2&`+-E z(|9FMyD>?|tc;pAckYgx&pbpG_*4>kPp=D1u$}$PJMP)J9o6A;dhT1NGehmsjgO0m zg(1u=38(;!Z-B-RK;y&oqth8^>Kf4aGtl@u(D+a;26X{V-3v5612nQ=?pHwLV;Be( Vus~B6fX2^2<9DF(VfLY$4*)K2m-zqy literal 0 HcmV?d00001 diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/5439302b2dcb50225ff9eed132532f2ebdd1ffdf b/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/5439302b2dcb50225ff9eed132532f2ebdd1ffdf new file mode 100644 index 0000000000000000000000000000000000000000..7791234e8da6795b396e8cc90f35e21df42f0d6c GIT binary patch literal 772 zcmZQzKm`I&?m;vF6QA(%>rC~Vi`ve9&_D4&Vy46n3+^aOoBK5@_lWeeJh_$nQgw;8 zYObtoVgKVf%!X&?z)WXE12FRrp#hkYz*0L;9@XaFW|yd>xRWhchU^UtN;ik&=v zmggAzuIP@Svi&!7L%4tK-W;{)z<-6mjTJ2^2?r+}Op|1S+QW&g93ry{9&v?M-Idoc}HD@~*B(S#D;iJ-YF6 z@vtz2nI!=gfbk8`_yK5qn0|CR15I568h-{Fe+L>L%Eh2Aps9O-#%F*=7R>z$XnYI< Up#m0Y>H^UC8EE_tG(IkK0W-Ls)Bpeg literal 0 HcmV?d00001 diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/66cd8fa5bfcf0d6286c9879cbc4110d1db64413b b/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/66cd8fa5bfcf0d6286c9879cbc4110d1db64413b new file mode 100644 index 0000000000000000000000000000000000000000..b2c66bc43f8c11b5e4a3c563b952d99316396ba7 GIT binary patch literal 772 zcmZQzKm`I&?m;vF6BpYZGxgolldMXW`PotT_ZaTqSf7^QCHyUoWgpKyy$04b>kdir z>Kbt;nThFNvDU4Ena+p?VCEe{12FLw0jGTStm`>s`PQFzQSHv#-_G3Klv8Owk*!o@ zi^^5c8?SCUG|yRdp*6Z*GOTppOHoFsMNDV_X5L{m027~bO($$()uqS#5_c?GIAQzK ze>LtoufN~CFwHacZFj`$Ek$V`Pu2aqS9AE-`Vy{+k19-1dzjGx%)BFL04DzMXrX%Z zLA!(7&ipDo&wJhPsX%7@XP?=3+TZ#<3wv`ZeuL_fkgIBb&lW_#_Ya;PK7ko(k8XTi zJS+@hW=TK=V0;5KegGODrXQWoKvUO%#-D-4-+{)5*^h4D1vGUp(D)3{$b#utK;y&2 X(e1N9Qx|~7&p_jMpz&emqT2@mE+wK) literal 0 HcmV?d00001 diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/6f8b954fb7f8be2c3632f931aaf55e3d1a6c58d8 b/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/6f8b954fb7f8be2c3632f931aaf55e3d1a6c58d8 deleted file mode 100644 index baf0a05cde5b5839115e7a5081da7ae855f1d16d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 676 zcmZQzKm`I&?m;vF6F=AN+_-!^w3?Fw+^)0L;8YXaFW|*w-?7%08nv!OM@F{`Q)oz4XObYv+#}_+}ZL zV=_25<4&rD@ZQIMOP=2^SiXZbYu!vns6|X@0A}7{GyoG{`RT(vz3`&u2+g?(zUMbP zaBoQ|dBhm>y=d+W`D%X|^`6_zt1I^375Q(>q1~Ht_6if!9%eKEGw%o*fQiTN4-;#g z5EsN!HYdyJx1zsxv1i-&xc;AviD>a|6Z8ETJid|W&% z3}I$TKm}lY12ldB8b1S#-+;!SfyUo~#=n5Ze}TqlfCfIyJql=i3p9QJ8b1S#-+{&l E0LH+VHvj+t diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/70dc0d37f73f8aa50ca695b4f54e16ec694bed37 b/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/70dc0d37f73f8aa50ca695b4f54e16ec694bed37 new file mode 100644 index 0000000000000000000000000000000000000000..4919d3e9df55a542d6070620f123c17fce59470c GIT binary patch literal 772 zcmZQzKm`I&?m;vF6Xz*C$(I&!<%IQXp@y%LT-MQ&J&PTVXle*Wdfx7sHkGsGwBNbh zH#^hTX&k-m<~x5m%ydRH05k6p8i0v+EjKt7$9I^`{Zf*O7Ek8fO6v>vq7U?|%$ajX?-AO6zxO!rFsb=i{9bWk_Jei>OFrxvOc}LIyO#G+u{HK=% zZZ{PvxxL+@`clC&k>BI&?X7G7hW&Iu>^t>QfWKq*&U0&Q3)&d0^ec8QW`^3M8y^=B z3qzP$5>Npc-vEstfX0XEN2fE;)HR^-XQ1(Spz)zx4C(@!x)*4C254l#+^>Mf$1o5o TV1cGC0F9r4#_vGm<1!Zj7lfFn literal 0 HcmV?d00001 diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/7997b5673d5a9402b2f8acc43f92cdf6ad1f913d b/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/7997b5673d5a9402b2f8acc43f92cdf6ad1f913d deleted file mode 100644 index 4e600526090a3f5262c6080a76ef5d68f3965c6c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 676 zcmd1HkIzo6WPk%UDC-~^5P*uGO8RQ!HeL3>@uQWTQtO~nq5+tBhtL2_-2aHe)cNj42P<=~XUc~b@iB{CzWHfs zTHWKT=T6-$?0P$u-$F8C`C670PBSy@o^SPGgj&Re24LnLMguVMgJnz$D$jjVt5_HD zWqP_uY|}zN?!MT|lQfp46feDynw@K2e|p&kru@{07tL_wUmeFU3utD_2h{I(b#K&GA`Xy z{rR)i(m<}ws=u=mW;!DpfSGp)4Zy^$C0hfZp1gZ?*5%9R|4#bibyJr~cdz37d#kn! z=U@0Br@n5|7L_0D*6+iY^xa*cra6xhY7r9}fSGp~4Zy?~m#ggjx3_KLOhH*zrSFzE zyhZgxR&5MBv+kPXjU8Jb9^LdackjJRiJunc&5b?f?{tv~Y7a9SfSGp$4Zy^Ot6mBR z*(tMc70-Vtd4A(Lp~d0xhT+QDb23g!Z76?WT(b4tjlA#&6TQ|}KHw|OX=R4mqZ=O= z4+}$>SrSkI7~cSmAArWsK;t){@n@j%ccAevpz&Xz@fo0j4|9(K8s7qqAArWsK;w6y F@c|65oOA#H diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/81ac6d013d80da7f67fe6fbb5e8c15a35a0d8134 b/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/81ac6d013d80da7f67fe6fbb5e8c15a35a0d8134 deleted file mode 100644 index 16a14bc7a02dc9ac8c8949f97ee1cca59b5fab1f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 676 zcmZQzKm`I&?m;vF6EACjEb^V9(y4aA*0+;>o47MO9#2^96`dii*mJ?~;emLiJEl`_ zHP}C!XuW(@-bKl3nCXmY0A}7HGyoG{zHEBcM&%b<+HX$Wy`bvb+$S@N?p_c+WBw-M zcK7Br!II2=|C4P}VrH#1Vw)buf1`;JY7r9}fSGp~4Zy?=W^FuODgP|5YJ0iTwEr_^ z9j@}vj9*rN<;_`d<{dBFnBK%)eJXsRZ+jkp1rukSmM9a{9%eKEGw%o*fQkPQ{2j2X zY}W&uPog)LGe>cjww)>qP}C4lYl^q{>$hX`#MOJ3sIkk5{t(evlDCe-kr`@_ZhTxk zEDT|0Nk9c)d;>Io02)67jo*OApMl2TfyTdp#(#mvXMhGi%smQddbCt$p&>-uJX~)D5C%J)BkmAHEh;{na+p?VCEe{12FLx#VbqJU7I3eCbuYg@k*rwbzOBj@27B-IEe&p z6^?D2zM7?@{K}&b2_KDSP7yHLKZg-&5fd7KnRgfsz{KCCM8(f?3*BSh*sh(h^~`6j zZNBp&KV)2t$)2Sc(mr4KOZ$DKfyUo~#)on-s0(Q7UZC+AppgZ0zXBQ`!$7Ej U1)915G=2sezXOdAvk%>T00-cdYybcN literal 0 HcmV?d00001 diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/da6321d50123e1d0ed6352454d69ec4dbf7117ca b/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/da6321d50123e1d0ed6352454d69ec4dbf7117ca new file mode 100644 index 0000000000000000000000000000000000000000..85a209c05d97fbe4dcb274db6c71d7f5ef16b551 GIT binary patch literal 772 zcmZQzKm`I&?m;vF6PI4ZZhh0a;?dc6nlqNnFZ)?KbDq@I-BS1SjWh2X@aP5~y|lu2 z664vf_s!2{FMptH4>O$+4ZzGhga%;Z2HQdf3PU57erj}{tZU={HDczOh5Nq#p0n+& zI`jD+@%qUD-7Crx)@iN>TwTBrEz|1>>24Lbheb+9U z@JHu?z)rdRgB&h1v#0CMo3%8Yy*j=#{tpks=ZlIZe8#dH%X=qZeBzM&A%huek8XTi zJS+@hW=TK=V0;5KegGODrXQWoKvUO%#-D-4-+{)5axth2XzE^|@fo0z1#`aw8Xv-pcaz4nEmj(XO+__*FYF@GV(#s))o zF{5s41re7=GtR7mna+p?VCEe{12FMr#`pbWYu~B!?$O`$M7R3%i-rlicv*zs%lqss z-+TA9(CeU88@**`9q{+9T6l)@jxQtBA|^BdGw(1OfQe6iAMiDJ2A71}qD?#npBBpe zN@l6jd}?JmeMaQ{w4$ii|2(@CcKl{~BU^T&usyYQArsUdW;6gZ?+6-ziK|{#$+P3W zeQ>&LNz&h_QwPrIDP5KBoj=oh`mXbL=ZgO_%J?>`nM2EPnb;OSzpVJH%usuDipz$-%_#J3`n0@Hx0{{hkmK^{9 literal 0 HcmV?d00001 diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/e97d00e4e1fa9804afd6f54dfe6f9b51d3245ac3 b/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/e97d00e4e1fa9804afd6f54dfe6f9b51d3245ac3 new file mode 100644 index 0000000000000000000000000000000000000000..29a473b2901a1d29e60b6a6316f91bece24a31f2 GIT binary patch literal 772 zcmZQzKm`I&?m;vF6L;CM;c28i&o48hlj$C;E9_5+voAQD)@*O|ud6ZmMUnZmYhE9I zDm=OFx5C^t=hvjqFw+^)0L;8YXaFW|F}e9TZ<4Y{t=uT z=GK34J}l~8-tAXk)*lz(P?)mPVMQ||)FLJ{05k6}8i0u>rDf$th}`TW9hy*uZx zL^PdQ_VwYJBNLaY*H!x6GgP+^&}`mQJmFeFt}knO_%0@>Jxbs`z*4ws|{@BZAdio#L`eV^-?JJU8xB8&o2QM>|XUtH0bmQaV zVPOa}O9CnY;~Svy1JL*|{pfTCnz{xw{tPt!4m3WLi$PsLQ}+Um&j5`qnEMsb_!tI4 W1uW3i1)%XW(D)r_e3*Uc<^uqD!JjDr literal 0 HcmV?d00001 diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/f82a9473b78b5126bb5676a3437417e3324d9b91 b/libwvdrmengine/oemcrypto/test/fuzz_tests/corpus/oemcrypto_load_entitled_content_keys_fuzz_seed_corpus/f82a9473b78b5126bb5676a3437417e3324d9b91 new file mode 100644 index 0000000000000000000000000000000000000000..e8bd6793552f69a4e5645e228553f1a8896cfc0a GIT binary patch literal 772 zcmZQzKm`I&?m;vF6E88TXK;J4%dBMYvlA!XJ(g$f+PZ7UlvIw3w~qhYzN3pHAxdd6 zh4_*jx+nX0|V%v!HJ4 zy!Jctxk87y8{I6AY`OEg=eWqZ^nHv_id6O z!VqSb1XKXVH$dYDpz&e)(di5{bq#3z8EE_+XnZIagSvpG?gbj30UB8__bZ_BF${zX VSfHs3K;vhi@jKA?F#FKW2LQ~(nY91_ literal 0 HcmV?d00001 diff --git a/libwvdrmengine/oemcrypto/test/fuzz_tests/oemcrypto_load_entitled_content_keys_fuzz.cc b/libwvdrmengine/oemcrypto/test/fuzz_tests/oemcrypto_load_entitled_content_keys_fuzz.cc index fcc53a0a..c01c532c 100644 --- a/libwvdrmengine/oemcrypto/test/fuzz_tests/oemcrypto_load_entitled_content_keys_fuzz.cc +++ b/libwvdrmengine/oemcrypto/test/fuzz_tests/oemcrypto_load_entitled_content_keys_fuzz.cc @@ -20,6 +20,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { return 0; } + const std::vector message(inputs[0].data, + inputs[0].data + inputs[0].size); + // Copy data to OEMCrypto_EntitledContentKeyObject array. std::vector entitled_content_keys( inputs[1].size / sizeof(OEMCrypto_EntitledContentKeyObject)); @@ -29,18 +32,23 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { sizeof(OEMCrypto_EntitledContentKeyObject)); } + // Load default entitlement license. OEMCryptoLicenseAPIFuzz license_api_fuzz; - // Setting up state. Load default entitlement license to load entitlement - // keys into sessions key table. license_api_fuzz.license_messages().set_license_type( OEMCrypto_EntitlementLicense); license_api_fuzz.LoadLicense(); + + // Create entitled key session. + OEMCrypto_SESSION key_session; + const OEMCryptoResult result = OEMCrypto_CreateEntitledKeySession( + license_api_fuzz.session()->session_id(), &key_session); + CheckStatusAndExitFuzzerOnFailure(result, OEMCrypto_SUCCESS); + // Call OEMCrypto_LoadEntitledContentKeys with fuzzed buffers. - const std::vector message(inputs[0].data, - inputs[0].data + inputs[0].size); - OEMCrypto_LoadEntitledContentKeys( - license_api_fuzz.session()->session_id(), message.data(), message.size(), - entitled_content_keys.size(), entitled_content_keys.data()); + OEMCrypto_LoadEntitledContentKeys(key_session, message.data(), message.size(), + entitled_content_keys.size(), + entitled_content_keys.data()); + return 0; }