From f83e7addef46f851384bfb2f5a282f71052318b0 Mon Sep 17 00:00:00 2001 From: Li
EQp%}Mc5JJC_uA(R&6$F=~{D5pczz_AA$0SQrKi!RE zf^gxuGJL}-Q4q)pL0ElCDn^s@w}P=w zImsu^kG?p^$DD}g@i;FC{V(9ayxG+F Qo2i7u8^Kq(Rhhho8k6F)uFb+5eBeV;xfSJ8=Il2@?Awkoz1j zD4zGg9f-e2{3OqWHu!ahx9<^e(7&K2X grEpEg_ATjGmdc zt{~#T4+A?jn%uY1hcD~-BnrYI0_LG4sG`-l6j54R=tn2pfVn*lBD)}?B@HIEa3w$t zrh{!I_lZGdH*7_a8V%5O7zv^y3{s=QAaY*nRv1iujPU3o2_jRWEP)1Bw3?V=1FM@+ zKeAk!IVG6hc88oGF^GnHK*=~fc7g}&XZkS@sA9U4r__CF5XqDZrv^*Mr}mOkr}@!* zFK`S-r^8-QH4&X`y`d@>+ca<3!thnzP!f;V?`Lo5+5y{SA27d*_K$oZa{{(M_&_ B979piQ8DbYw8hD@2Fg!O%4U9exgm zYfNtuBDv2DqSHbk0{;~`Ck>m4*RKIQ9*f3N4Zz$5op&{W684{K8$c%0J2Zp~ICipB z>NhKx-fRfl7#iLPd?%sTq((qeP(RiPa+zMYF?416kj8M3=@pHkoawfqkQyrnRhU2g zfCl)J?l<1|DO`N;_OO&E`-TQZ9x<(a>}h&S?$@(dmr7xfAdHEG@z;)ts+z;EdPQ?MP+R( zT*|W?p`e!-3I|$>8o1J%wv@{D>MHhb{f5A=Gibc@>-L@y+))gZHp!i&(u(%dfm0e- zwwWYL7b{jn+FP_W)I25WP?{!ofRmlXB*o$Dx5Q-FT14z2^%ERI&1~WTKm1JUNtRWS z6%{+bCeWpe_yA6>CGk?}XS#(Oh>J2<>B{al($;;tisO4G5m?((oB*Q=s0sFrz#-N? zBX&@oP2(Z8oA?tH_ZD>(JNI=J<&1afK2p*2u$_Z+^t)k@wu5wpjJebXHjfeGrQ)+X zrnyPsr@MgTT *-pzcZhG*6(?WFJ5 zq0tPs`AVOG&}Ro}UGc$LBc BIt0^kL zo1+&n&In903ZGjggK%HPYE(>v?{V(O-sns+2q7xgSjC#ESiFk0SFz42meo-OvsG|{ zicM0nDiu4UVvkkqDU&42P0zRZ;1V!$@xgVnN=6}7#okh}bQK$}VmT@{RmG+=Nm_Ta zI~gmzx;cRKm-^lECfbU^TjxZ{`9YlaW4sd0q?&u~BuvVE@NcOOI69E_WIFV5z)2tX zlGx3E=+yIPA{1kf!V_%S+y57A?XaDMU%k-BDj9|TR>>fgs@MV*yR2eYnIzdgNG7YL zt`9yi8iZ^!UJ)V8EJ$Y`^pd{4@8 O=8s6y{kagHWwv>|PJ882WHBArqwXSFRPL z=AvjEgQ%0B#jf(CTTfDp@)dm|>bZ(E3#Cztv;?KEP|^uyD2-FF4JffkUngu+v4bdm zqhLo+I;lvNsuiz?kfR)1i&B+hWwDF*=b%BcP%5r}Km!e{9T5^m{OC}kF*+nW?s)9RI>@yYn zTE*Dk f&76?4Lg#t(L}N(Lc7 z#X?jpQN@x~EKS9FFiG-y
9k z3SG6t(rQgSrpp3$k0172O~WtKO!#G=8nkN!8%1V$;d}V~cY9~~ke0mGkZd?;ARS15 z*=QukDcKKa?8y-4dO{ZrX8gm#n$cgUu`}4g@)(VmwDpcA?agDyj3&WoW+#e5Icv<& zaf1XZq?(1F5lZA;D8B*t%bpRIJT_4fL3nO`JG_8R4#c~~FogL_fl2(Oz$Bb}_{%Z& zdf=FVvxZ~rRXq&G+miv>6=-e&7wn0<9~&G0l>9^CrM$7+rq}tWzW}2hNI=mY>mcu9 z>xdoR$JQ0w2iSUHi}SeH2ir&3`dM{$XD8y9{~IRpf5Rk$AX%+O#)>F@2H~oT-B2-{ zG$r@tx{f4|l6;tECZ68o(dZ<&;UDg!NP#GoqoflWp_C7Y%_O+RNW~-}z@~;ySd7vL z1zU&GCI#Ef+!ahlX}BUCK&b$N>k!Wd+{D7pyNc;wD6Lfv#Jg)funtP^N~T+`@If77 zAq_#UL%iwu1o?a&a#1WQM0dTg2!EMm6h5{}2H~)ZVWFm24Z>{|yQgA<@TC0Mp;pNt z `Huf`5Z>Q=aV%4dQ79(`mP{zgAlkP!HtNBGCk(2Il=4a&T3)AY=$ z 2y$)9-X>nScC@PHwG z5P>j%qSO9@FQafQ&apl$L(s?`Ymu<@%oa)*TFqR)V6Ln1z6HW@23i8JM^DAI66^!8 z#|el)N&vbsw!jR11JLaNf<|A(EfIUvLwNv6A{O~(0Qr>EbrO8olZ2n8$}ch)P##45 z1HDwk39G?PMb23f54eM_v2|2~4Y68Oq`nm~sYnAW;sZm1NkWI_R#i|P+W!UV^A}|J zUy#Z0th2^HaP40VpZ^6p4zVG`zv!&hP+#y7@T%emU#-f=Mnzaw#6AHkV&qp#@I!=) z0anC8MVeWW-~UrjL`>LMee8=72goedMd%qqEM{?NC Yq9bjD zjz5EIBQ!ODRBUKB4P uMpfAn^YKp4IQS1obKqjy)in@hvUq2 z9BP^AiWba0(9|OoP3|x}6iqQu&YB!J$C`CuABK*VI`Hm^j_-t_ % z7PfW6BE6nYsk&)@9i&F0^CqZaW~v7>nn`;|987}cxr0et;`6`N@bc3kWV%^lVrWuh zg}5NIpsWD (3(@>rsMKj%5RD1r+{>ge&b6Ef a{i)6 zB LeAuX4-gUS-xY5vK&knuikqg3m1 z+7uE=rBFE$nFPIb;6yuE_5n?S_-V8huI5mU+;AGv`m-)ZONqO*@~HLrzCz|9St?zt zWvoMMWEboh>yXTNfsUxzGv=W!r1r&gD71jeHGofF8Uc?A>4!>Ro|9+@k;*>NL)p8u z42mbxwo=)lg{(s zuHOK+4{APW~mj+agi#-?-cy{;4{urG4`1oEf3mHu(I0NM9x1<8f$3R zSb6195~HKfo5+_=kzYk-I$uRX9sedMn~uf|TUK<@@u!0BO~+|-`b0wJH4+lC_=}Sd zXT*B@mAtOgz;@kohs!JIrIlk+zCJa1`r_nLK{M`~@Krqr-yRFwt`QfPJsFFu2Q1$3 zcJBTYk>3O^_H1(L{ZlQpOB~_aHDdW=6qJYlM9%;5sd>AaKQ*JP$w|%sfum|AfNwTV z-_-)tK0t!(2k;q))3+6Y9|MroTSquqX-gSdN%N^fQ_>3*4vxg5+(a-Z;RG8fLS_;Y zo+4)w1r28m`)HuN8Jg#4IE8mq0|~5Gf=@2v?%F|dJTjsm;X8^Ei?_6Vx<~7PFvc%e z2lIxLAXr^POs*{8PQ|y6Jw|dS&qtXRvhM?Ft+7B_M`Xn+N8(eSGo83HiYf&%22oo+ z%V+(}X{#)iXj3S+&hT40l23296)U+Pc96noF*)NY8Auq9)g3IU;z2fjCCi?^jOgm1 z^dT>MPBs#Hl}HH}g5=zn FX=mS08%Zd(?Su7jo6Kx>4z|+Xv5`{%-%7 zg$KGXh?}S%zT}rv``bKk(c(ee#_W>CiKcob-`2Xlx=U?_%u2Ysp)ZWpP#<;D$e21E z*Zlii)-^gNHZDe8JBm=&jt-m>gk@4~l(W3umOimSy`jX97@?*a-m5-Td9Tf*{0<`f zIxd*{ia;2pJxb(nxzBN0up4TxQQmGC$I6*`3C1%9-_gKhrZ>~VwdQ!Ar)eRA5z*gk zAw34Chqn$QMxcGPbslWgK?&2J>i9GY(?b>03-r>`2|@G=J@~T8=wPGFE_}nA7|%Y} zMwvb2iNeLxcw1#gla-u>e`?Dob}xm6r-uxje-BdlcRIod=26(?P9tQp7E{UaI2>83 z9c*LzQad0y*xs;%d5QSaZ!Gnj6ig<-)kHk;A$urCBVI8}D;nIeH!jxri2qxp!35s{ z9 Q^zEH!|q4mI=hw4E{Y=f$?K4dbrCzLXEd41T1D!ox3uC>9w z8ao4F{Ctr!e{mdehOVd+TPSXe?%gr3W$IF>WNNhwMBuUpi3Xo`s7`T(d29iq$`x|k zVP~Fhe3hlA)ND#HDTf2h>7ko6Yf2D}wXT#Dx$~8hWA1#V#KpQ&lI6h{MYf~PuFOjh zWif =<)y53;0q?PBdVFWa>8Q&7H_`BL41@o z4$>R0GV=;tP+?0P4}Ey5(A-y9;vmbRxD%Rh`6`(Mu|OqL3vl5C*EjIq_;g0q!JlUe z{rq`qu-acq4IcUP)F2^1S@0kqf~gC7p9xSh1FSGIn3^5Pmpk^rR;Fr#lstiSU6_K} zvLK!%R0r`@j`(0DTfqNV#>`iOl|>FrT5Fg(HUze@hjw2GTw^yu+W->6@KNZ~0IJ?W zeN_XP%k-xWAa@|@?Ha<5s1pe+X?Xahh7itDwgynl)X|N22KNP2GSz?!Ex1BLdo~7N zcJOXoXkoe#3J00qITXxU*e(r)ZLGZ?3ZD+aYt#=+-SF_TFlaRx;hHcY?6CIXFb{RI z5VkV&gK+T0B_|TMusdqgEJ{8|&s*RcJ18guR$zWeb0Xj|JNU~8$i>$PR)#gqJv|Z@ zGxbwQ?1Adfk+2Q#C5eYprp}E5!tVUJD2TuTQQsy!()DfvC8$GqPdeScDKaZLSUpA{ z;nr0CvM0Smq_YbbvrxlUY1CXP8NvsNAF=#KS*BsZM$MIG{=OtrQMPChfujDj9!$(a zF5vr~VkfBVPwjc^Vv8=)i)C>vbCNv=&}u4UV6!DqlPc;UX91ak7K7~Z4h?kRM_}&P zhDAH5=_P6^0=McYZ0(2fFtLQ{z_NxUN@XWC6_+Z`5ZTmOY)Jop6{x~-ZyB9`(q{V? z<4DDU{cQ`d14lnjS)Mt9|zf|ly;&tKaMTutfw`ON)%3z=pI5Q z%l}$HFKAj%#$1n;Z!Ftm-)#J{56}JtK}NgAsxiNTiuHFpiIM9qp^-W=8QPaoZ#pU# zhL%w;vRj^BM*C~=JU3U<9u&>Z)=_Vg3H?~J0SZ~8mzS)gMt1C)&5H2|Yc{|w*63y3 z7CHobfKfZJV>ue;?x0>2Pq<|VwH2}F< HWd!yZc2~VyC^yVRBA>^K|i7si%L+ zvU7YVaQ6FinsqAny_Wvf#Fe8nF4#HtO`YJL`#L%56nrt)*uC%OC5 J1Ac63YDL)XgT9zTBh$qBE*14HMJk97_xu6E8kbE{22XK;T#|H!KKMKvd1 zw+nkDK2Fu#NlVtt pQPEx81S=o_D$N&E*@1N3`pd zuzlfz)vY5=pRBoVx#iSi<>nphqqRx zr>RBny?u7#<$dz(jdKsYQ-6E(<} xQX#hKt#3N5Ud|z7^rBJrC1i4m?a3JMgUtXB~L; z;*GTx+mbNEk;m&@j!KUE$dM;a%}hLePctduo8C3?n%;uR6-!$uW6O3h95Hhyz*L84 zznOIuMu4uzq>F7_c#26Fi=@ezXLUyZIdyr2zld2Fvj;jU5kAL>NBI3td`p8pCR%K> zLeF}<_+MU+7ys4uc<~=ypBMin^?6wTx;`)dU7UIGKMGSXR!yyUR*HZ6+?faTL>Hb- z7r5}ie$a&nb|+UJ*fU&tVBdyW7mLNBn-bV*svATg?Lxs#iR|>I8 n}Vd_NCou^; MnwLSmmhKv?)KUwBc`b!mno>iB zV_L>)s7bgThE2xfA-sliYQSr#LAViy)k>Q&U1ROb21?D;vLUaT<}~E___qx?L*&{B z%q_8-j7CZVNw+tGOs4 b)Kl|7D8N-jtHM)6u{C1!0b`F{{4 z&6 lL-(x>gv5#W;` zPGVbkOwxvr0G20+ebtRXZNSn&)JSEYp8q{_lWT_23JR4;Vuy-vH@Of<8!XyDPCHS_ z6C1#t8CWGK`;Cyou!R+G(-v^&6EgDes1a)hschgGwRIo){Vd?qQ5+AZJi1ij>~KF( z9jfG#$egrc5FjPk8Y-s}Tj|PY_RuUv%tN~owm!wYlG%S-k9;&62W} |v! z(qI`W!~Qzu3_eBlx%ehq?F7xI;(_+ZT&1!_QLuFi9SK)UaNT6@R61M)Wm6LyG+Pbd z9>aN|)W@VPZl%(KeWvKlPOK0_t>v^#aW|tI4KQj3=_Wg7i90c8eo98e#<6S%Q(yW> z3fU0H{yGw%LqxN5a$UTPY4{Mlv{u$hA&odw$^KgLFtMFf_K_aEvN1(JI!sK1(b-~q zWlI-$&&MQ~v80KUk$O!Zj)OTcgGR!)nRJzs*vq#^h-nl?uR%(4 Uls<~6sWG#%Nm*R!!!wM-@v(v`JIQteh7 zxROnimCKkhi>{Y3nQlm6zz)&^ipC;y+F~p+r!r>d&IF1JL_Li95Oed{bMZoCOceF< z=5hGcLs_9{R(4gvnnKZAno-r72|4Tt6D*#9qbMy9>q;+A$1`Yx>^@O+)-W0tQj5j2 zuy~T#8sdt?Gjd>wSW|~Ag8B Thu>2EjHJne)Fv8 zq48aWxh~sbfX|=OcC*S%XP+wB?~-UF?7Wx7at$6|c~wjoQMcR>Jw(*I+!nhNN%PPo zZ><*3X%U(JQ0!!b9^XF`kL&61XkM74IkCb7a%;tL47*b+t|w_b7ih+_L+o^#Us }j+1SHcr&OjNh}%X8r%Ik`cL*nXxCfQb=J?oKiQuq$*UbT z%h?H&>uQR0$_d$t-kfj}zOs^0f0OaYv_{2x!WJlX{*%2#v2$;>mhJE-`<2#mpqpkp zyX@z^G-veqk2eQt-eS6;k!A#5Ru~_y@uu!Euqa&PMFxY6Dmg5l3)dW_=(QqJ^P1vO zN-;#&>0yg2R@QN`nxhDkrkd`Atdo1jX*SyYwJLEgTJGiiLYTeeNXF~2pC4a2aqfwC z%(as*IqV&l+ YJT3D5x4eL&t6cse0yce z<%j`ws~$=v^tty>MPWaFR?vUcclT$+?Js)Fw8eR1!&jqfJKgio3BDlB<++N0}- ze#)Qsen6+sUFXlNN}TR=VjaD$pYt%`r$KLjDW<-x-S79Wci)sj`gPtnt{kr}6;6$> ia=UDM;obH9Pu?1oQy}LjX>i%(59{jkS8X)gg8v7Z+_O0V diff --git a/libdvdcss/src/dvdcss/dvdcss.h b/libdvdcss/src/dvdcss/dvdcss.h index a38b1ad..7cb3604 100644 --- a/libdvdcss/src/dvdcss/dvdcss.h +++ b/libdvdcss/src/dvdcss/dvdcss.h @@ -106,6 +106,8 @@ LIBDVDCSS_EXPORT const char *dvdcss_error ( const dvdcss_t ); LIBDVDCSS_EXPORT int dvdcss_is_scrambled ( dvdcss_t ); +LIBDVDCSS_EXPORT char* dvdcss_get_cur_disckey(dvdcss_t dvdcss); +LIBDVDCSS_EXPORT char* dvdcss_get_cur_titlekey(dvdcss_t dvdcss); LIBDVDCSS_EXPORT int dvdcss_title(dvdcss_t dvdcss, int i_block); LIBDVDCSS_EXPORT int dvdcss_get_raw_fd(dvdcss_t); LIBDVDCSS_EXPORT int dvdcss_was_error(dvdcss_t); diff --git a/libdvdcss/src/libdvdcss.c b/libdvdcss/src/libdvdcss.c index 063d7dc..627fcc6 100644 --- a/libdvdcss/src/libdvdcss.c +++ b/libdvdcss/src/libdvdcss.c @@ -486,7 +486,16 @@ static void init_cache( dvdcss_t dvdcss ) /* If the cache is enabled, create a DVD-specific subdirectory. */ create_cache_subdir( dvdcss ); } -int dvdcss_was_error_common(dvdcss_t drive) { + +LIBDVDCSS_EXPORT char* dvdcss_get_cur_disckey(dvdcss_t dvdcss) { + return dvdcss->css.p_disc_key; +} +LIBDVDCSS_EXPORT char* dvdcss_get_cur_titlekey(dvdcss_t dvdcss) { + return dvdcss->css.p_title_key; +} + +LIBDVDCSS_EXPORT int dvdcss_was_error(dvdcss_t drive) +{ if (drive->b_errors) { drive->b_errors = FALSE; @@ -495,18 +504,9 @@ int dvdcss_was_error_common(dvdcss_t drive) { return FALSE; } -int dvdcss_get_fd_common(dvdcss_t drive) { - return drive->i_fd; -} - -LIBDVDCSS_EXPORT int dvdcss_was_error(dvdcss_t drive) -{ - return dvdcss_was_error_common(drive); -} - LIBDVDCSS_EXPORT int dvdcss_get_raw_fd(dvdcss_t drive) { - return dvdcss_get_fd_common(drive); + return drive->i_fd; } /**