diff options
| author | Miro Jurisic <meeroh@mit.edu> | 1998-08-21 21:00:56 +0000 |
|---|---|---|
| committer | Miro Jurisic <meeroh@mit.edu> | 1998-08-21 21:00:56 +0000 |
| commit | 0742d8bb140a64b22fc762c0f2126b757ab09716 (patch) | |
| tree | 09d699e1be238a04ad3b7c704ed04e628e46ac9a /src | |
| parent | 9173dd9e7cf722787f8ca6c98e7c319d33a5dbd6 (diff) | |
| download | krb5-0742d8bb140a64b22fc762c0f2126b757ab09716.tar.gz krb5-0742d8bb140a64b22fc762c0f2126b757ab09716.tar.xz krb5-0742d8bb140a64b22fc762c0f2126b757ab09716.zip | |
Added the CCAPI library files
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@10858 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
| -rw-r--r-- | src/mac/libraries/CCache API/bin/CCacheGlobalsLib.68K | 1 | ||||
| -rw-r--r-- | src/mac/libraries/CCache API/bin/CCacheGlobalsLib.PPC | 1 | ||||
| -rw-r--r-- | src/mac/libraries/CCache API/bin/CCacheLib.68K | 1 | ||||
| -rw-r--r-- | src/mac/libraries/CCache API/bin/CCacheLib.PPC | 1 | ||||
| -rw-r--r-- | src/mac/libraries/CCache API/include/CCache.h | 350 |
5 files changed, 354 insertions, 0 deletions
diff --git a/src/mac/libraries/CCache API/bin/CCacheGlobalsLib.68K b/src/mac/libraries/CCache API/bin/CCacheGlobalsLib.68K new file mode 100644 index 000000000..c712adda2 --- /dev/null +++ b/src/mac/libraries/CCache API/bin/CCacheGlobalsLib.68K @@ -0,0 +1 @@ +(This file must be converted with BinHex 4.0)
:&%0$B@0SC8GXEf*KE(0-D@)Z0MK,!(0SE')rN!3"!!!!!3S!!!'@9&&+EhNKF'9
QCQdf1'X!!!!"XJ-Yc`#3$3-!!J#3'j3!!3)!N!3&!*!(5!!!!%J!!!!2!!!!P!)
"!J#3"!i!N!pQ!!!!T!3"!J"0B@PZ!#9"09G[FQaN!%a[B@4PFJ#3"5SL2c`")`D
Tm!)Lrrd8F[q3"!#3"2q3"!#3"2q3"!#3$`%!!!"%!!!!4!!!!&!!!!!"!!!!!3!
"!*!+Cd0ZG(*X3Qa[BfX!!!3!N!8"!!YC8!%!N!B%!!&+E`!!!3!!!!&N!!!!C!!
!!$)!N20J!*!,!3#3%`&Y0MKV!*!6!3#3%8!968P8Ak9$3f&MD'9(E'pLB@ac6'P
L!!!"!!!!!@3!!!"N!!!!-JIQFT!!0)3!!!!F!$)!!'0QFQF!!!!+!!$rr`#3#2M
H:
\ No newline at end of file diff --git a/src/mac/libraries/CCache API/bin/CCacheGlobalsLib.PPC b/src/mac/libraries/CCache API/bin/CCacheGlobalsLib.PPC new file mode 100644 index 000000000..0cbf6215a --- /dev/null +++ b/src/mac/libraries/CCache API/bin/CCacheGlobalsLib.PPC @@ -0,0 +1 @@ +(This file must be converted with BinHex 4.0)
:&%0$B@0SC8GXEf*KE(0-D@)Z8&"$!(0SE')rN!3"!*!%m!!!!CE2$8T[H5&`C@C
QF(G`B`!!!!'b!eJ&!*!0!`!#!*!%rj!%!*!6m!!%"!$rN!3!N!F)!*!,m!)%"!$
rN!3!N!pQ!!!!J!3%"!#3"Iq3"!#3"2q3"!#3"2q3"!#3$`%!!!"%!!!!4!!!!&!
!!!!"!!!!!3!"!*!+Cd0ZG(*X3Qa[BfX!!!3!N!8"!!YC8!%!N!J"!*!+'cF!!!%
!!!!"C!!!!'3!!!!bD!6-re!"%!!mrAhrbJ#J!E`%e`-Yrp8$aIeN!'m$#[Zk!`S
#'`%q"!8#NJ0S!em&F3'D!2IqRrfKrDImPJ!TrHX#(`04"!!"C`2[!'hpY!Bjr+-
#F!)Er`%"ZJ1&![`!P31k!A`#-J-#!U(qfrhD!)hpjrkC!&2r2[rc"+J#X30b"8%
"iJ)d!T`!G`&8!#!"jJ$-rGS$BIa`!#!#Ir[Y")6rHJ0%!pi#``5U!)3#rJ%-!TJ
!C!(N!"cqcJ6"rNd#YJ+Hr8`$Irhfrm!"1J(L!R`$$`0`rXB%M2kE!Tm!QIq*!K[
q`3'[!BX#0!$`!F)"!!!!B!#3#`%!N"-"F(G`B`#3%`%!N"&!&8e*9&qP3d0KBfK
P4fa[BQ&XFdaTBJ!!!3!!!!&N!!!!C!!!!$)(jR+3!$6L!!!!(!!b!!"MCR*R!!!
!#J!!rrm!N!3(l,UmQ-m:
\ No newline at end of file diff --git a/src/mac/libraries/CCache API/bin/CCacheLib.68K b/src/mac/libraries/CCache API/bin/CCacheLib.68K new file mode 100644 index 000000000..25e7da5e7 --- /dev/null +++ b/src/mac/libraries/CCache API/bin/CCacheLib.68K @@ -0,0 +1 @@ +(This file must be converted with BinHex 4.0)
:$80$B@0SC8aTBLif1%X!FfKXBN0"*%J"!!!!&f)!!!'5&rP+EhNKF'9QCQdf1'X
!!!!"XJ-Ye3#3$3-!!J#3$K)k!!!51J!!%MS!!!#8!!%#!*!%"3#3"J&!!!!"3!!
!!)B!!",3!J%#!*!%$J#3$J3+!!!6@!3"!J"0B@PZ!#9"09G[FQaN!%a[B@4PFJ#
3"#T451FB1#4[!"JS,`!F*Lm!)#K[!#3JEIq`*P!J#fBb5(J!%'(r!!!+(L5!*P)
J#fB%F!CJ2%+V!!3J8N+3!#"53UJ!##"53UJ!$#"Yrl!JNQ!#*)Y`!EL!E`4`#@!
85S0R"L"$F!%JJ#!-C`3SVIrmF!"-ha`B6R3!%#T451F!-#4[!!`J#QFB*P)J#fF
5,`YKr`!!%)S[%Q(r!!!*3'!%F!TJ"%+5F!"-h``!6R3!"#T451FH1#C[!#!Q,`!
N,#m!+#K[!#`U,`!`+#m!0#!,CJC`#Q!!!-a)H!)QBIm!!!PQ*%!J#QB'F!CJ!!#
f5S0R%L"$F2p5J%SBC[S-J!!!!2pP"R!"B!!!QL"+)N-J#"$CC[`J$'F5)%a`re+
!5KKQqJb!!!!!rf8%F!aJG%(U!33L6#!)%0PQr#9&!Ja#DJ)%*8B"!"9m!!)#%("
N*8!#%Lm+BIm!!!NS*8!##%UU!JKQ"(!'B$T+U`!)CK"#UJ)L3US#(LD+*dS!"'!
@)'X!"#&+!KiPD`!%!L*#UJ)H*dS!"&+V!!K5U`!-)%3JLR!!60mFH%jd!"JU88j
@rrK)ja`m+Li!##KZ!!`S,J!3*Qi!'(B!5S9Q"(!+B%3J#fB%F!aJ2#"&*&"J)Lm
+,``LEIqi)&P1N!!UE[rd5S"Q#VLU!3"Q"(B"B!3NDJ)H)!TR"%S$CpC+!fF'*ST
`!'!#F!T-ha`i6Pj1G!!8+P&)j`!i*Qm!%#K[!"3J#fB%F!TJ)L48$#S!!J)3CJ4
`$Q!8,`S[#f(r!!!-!Lm+BIm!!!H-F!"-ha`!6R3!##T46PErq%MR'$`QEJ!)*Li
!$#"$*&!J#fB'F!TJ!!##F'5`UJ)5Ca![#Q(r!!!1`NS!CJ4`#'"S5US#)QB3*US
#(LKU!KiJ$'F%3U`#)NUU!KjQ%LGU!L)!"#KU!L)J$'F%3U`#(LJU!L*R&LKU!Ki
J$'F1+83#)L"U!L)KDJ)H!Ki9I!!"!K![!bm,)Qhrk#"C6T!!+Qlrp#J!8UX!$#!
%60mF'%jH6R3!##T4)Qm!"#"[!!JJ#@B%F!TJ$L!)C`JJU3!-F!"J!R!-6R3!##T
451F3-#C[!"!NE`!8*LS#%R"NYS"R&R"QYS"Q$#m+BIm!!!hq5J"Q"(!)B$!J#fB
%F!TJ+#!+CJ4`#Q!J,bm!(#m[!"`[#Q(r!!!+!#B!5S0Q"&+V!!K5U`!-)!0-h``
)6R3!%#T451FB1#K[!"JNE`!F*LS#%R"NYS"R&R"QYS"Q$#m+BIm!!!fB5J"Q"(!
)B&ai!'"8,bm!*#m[!#3JDJ)))(!i!#mS!!3[+!!!BIm!!!V)5J"R(#"U!JJQF$J
!,`YKr`!!$F)JDJ)))(!i!("M))"5K&L$-#S#"%M!Z)"YY&+X!!a`!'!%GJ"JkNc
I("K1G!!3+P&19[ri51FB2#CZ!!JNEJ!-+#i!%#KZ!"3Q+J)5F'5fJ'F@F'DfJ'B
-,`TKr`!!$2T+!'B%F!KJ,L!+CJ4`#Q!QZ+S"!'F%F!TJ(%Ki!2m[$%KU!33LEIq
d)&P1N!!UE[rd8UX!$(!!60mF'%jH6R3!%#T451F!-#4[!"!QE`!8)!TQ"(!+B$C
`CV#U!K*Q%#m+BIm!!!b85J"Q"(!)B"iJ#fFB5(J!rf(r!!!%e#D!)&0$kJ%%)!J
3f@EmF!"-h``!6R3!$#T451F!-#4[!"!QE`!8)!TQ"(!+B#C`CV#U!K*Q%#m+BIm
!!!a!5J"Q"(!)B!iJ#fB%F!CJ"LDU!3"`!%cI$!"1G!!-+P&)j`!`*'m!%#C[!"3
J#QB%F!TJ0("QX+S#%QB3,`TKr`!!#ra+!'B%F!KJ(#!,CaC)H!$rBIm!!!3m*S!
J8b*+)!J3f@EmF!"-h``!6R3!$#T451FB1#B[!"JS,`!F*'m!)%U%C`JJ#QF%5S0
Q"(!+B%K+NQBD5(J!#'(r!!!$pL5!+&)J$'B%F!CJ,L"$+*!!)&)S8#!-CJi[%Q(
r!!!%%%+5F!0J&#m%,`aKr`!!#DiQ8L"6*UJ#(R!!60mF'%jd!!`U88MR($K46bB
[!#3QE`!S+'m!,#4[!$!J#fF))!TR"%U$CJC`#Q!!!6K`CV#V!K*Q%Lm,BIm!!!X
N5J"Q"R!)B!!"(NU5CL4)H!!)BIm!!!0L*)!Q%QB'F!CJ!!%%)%0#U!!%B!BJ3e+
S!!3k+`)%-!9)`#B5)%-S+!!%Z)"X%L!%jBJJD`)))(!)!("MX*!!Cp3`"8M!Z)"
Y%#m5BIm!!!0-3T*`!f!!!,JJ"1@))'X###S`#!!J45B3F!'fJ'Cb)!aQ"R!'B!!
!Q%Ki!!KKr`!!!Z!SJ%U8CJC`"Q!!!)*)H"eqBIm!!!,+)&3K3!!%)&3Q+!!%CJ4
`"Q"N)&)J+!!%jBJJD`)))(!)!#"S!!3L3b!m!!!GIR)JX)&P"+)ZB!j+J'F+)JN
5f&1!C[SL3@!QF!+fJ'BF,fJ!"!!%F!)ZJ#m-,bm!##m[!!KKr`!!"*KJ"(!3B!J
J8P+S!!4`!&"260mF1%jd!"!U88j@rrK)jaJm+'i!##4Z!!ai!#!+CJC`"Q!!!*)
J,!!)8S$PL#m!)Qhrh#"C6T!!+Qlrp#5!5T*Q"(!'B(!Q9'"S5(J#!L*Yrp`J@8k
3!#TZrr3J8L'!1!!S8NUd1!"Q"(!'B%SJG$J!)NXJ#"$CC[`J8L"`1!""k!$r3qX
""#!)%0PQr#"5)(!i!#&V!3!"rLCV!Kj5K&L$)!YQTL!%jBJJ8N+`#!"`!'!%GJ"
JkNcI("K1ANjd!!JU85m[!!KKr`!!!F"`!%jd!!JU85m[!!KKr`!!!Dj`!%jd!!J
U85m+*'m!$#!+CJ4`#Q!8,a*Kr`!!#@J[%Q(r!!!"L%+5F!!NAdjd!!JU88j@rrK
)jaJd*Qi!$#!,CJ4`#Q!fH!"J,Lmb1!!LEIr-)&P1N!!UE[rd8S4BJb465V)i!'E
N,a-LEIr-)&P1N!!UE[rdF!"J"(B!B1*-h``B6Pj1G!!)+P&19[rX51F3*#4Z!!`
Q,J!35'lrm#*YrpJJ@8k3!#TZrqK`C,#U!K*R'%KZrqp)DJ)@5'lrm#*Yrp3J@8k
3!#TZrqJJ!e1!C`a6J'F58i"R0Q!!!)C`C#9!!K*J!!#!*LS#%R"NYS"Q&("P*8!
#%L9Zrr!#&L9Zrr3#'Q"JF'DfJ'CDF!KJ@#BU!K*`C,D!CK4`CL9!!K)PE[r`!KB
PE[rd!KTJ1("QYS"Q#NSZrqpQ"(!)B#T`CED!CL*+,[r[Ca4`CL9!!K)PE[r`!KB
PE[rd!KTJ#(!)B!C`$'!#F!"-h`3)6Pj1G!!-+P&19[ri51F3*#BZ!!J[!b*Yrp`
J@8k3!#TZrr3N3#m$,`SLEIr))&P1N!!UE[rd)!T-h`3)6Pj1G!!%+P&19[ri51F
3*#4Z!!J[#L*Yrp!J@8k3!#TZrr3Q!#m$3UF[#L*Yrl`J@8k3!#TZrr3[!d+R,`S
LEIqm)&P1N!!UE[rd,`-[#L*Yrm3J@8k3!#TZrr3[#L*Yrm`J@8k3!#TZrr4-h`3
)6Pj1G!!%+P&19[ri51F3*#BZ!!J[!b*Yrm!J@8k3!#TZrr3N3#m$,`SLEIr))&P
1N!!UE[rd)!T-h`3)6Pj1G!!%+P%[#L4[!!K#DJ)%0A`!#J)'5(J!+'(rN!5`*8!
###!U!JJNAdjd!!3U88MR!$!NE`!-*+m!%#9[!"3!"%U[!"KQ#%+U!!K`!'!q,bm
!&'(rN!4f*8!!##CU!!JJ#fB%F!CJ*#*,)'m!'#![!"4b),#"C35L,Q!15S"R#L)
*%YK6J'Ek)N&`!%cI$!"1G!!3+P&)ja`i+'m!(#4[!#"i!#C-)!aQ#%+5B!!!T&+
%5TYQqL!%8S$PL#m!BIq3"!SNJ#S!*NaJGNKi!!aKrrrrr[JJ8L#!)P)L85"8F!a
b),#"C35L,Q!15S"R#L)*%YK6J'Ek)N%J8L"3,bJ!"'(rrrrqaL"5)&!K3!!)*K3
J3b!S!!3L8L*4)QN!##"$)'J!#()JX)&P"+)ZB!j+J'F+)JN5f&1!C[SL39L+@)Y
+NfD')!6PL#"&3V!)!#5&60mF1%jd!!JU88j@rrK)j`!m+'i!%#CZ!!`J$'B'F!C
J!!%'5(J!#'(rrrrq6LL!5(J!6'(rrrrq3L4!)!TQ"R!'B!!!j%Ki"1*KrrrrrL`
NJ%U5CJC`"Q!!!-j)H!6LBIrrrri@*8!!"%UU!!4Q"R!'B!!!Y%Ki"0m[%bm5)Qh
rY#"C6T!!+Qlrp%Ki"0m[+`!%,bS!"#*Yrl3J@8k3!#TZrr3[+`!3,bX!$#mV!!K
)DJ!)BIrrrriS*@X!&!!8*@X!'!!B*@X!(!!F*@X!)!!J*@X!*!!N*@X!+!!S5'S
!,#mV!#aKrrrrrPi[+`!i,bX!0#mV!$")DJ!`BIrrrrhJ,bX!4#mV!%![+`!m5'S
!2'(rrrrpbN+U!%JJ9(!#))!J9#&+!!4`!%cI(!"1ANjd!!`U88MR!$!NE`!8)!T
Q"(!'B&T)H!!)BIrrrrdZ*)!Q8L!,CJ4`"Q"%F!%QJ%Ki(AjKrrrrr43Q3#!,CJ4
`"Q!X)NXJE`!3)$`!!"eqFL#`J@8%SLjJ$NU!C`SL#4,B8i"QqL*")&)K5`!%F!"
-h``!6R3!$#T451F!-&P2*'m!%%+A8QS#"$!U!J5`DJ)'CQ)`+J)'d%!e3!)'-#S
#"NM!jBJ[!'(rrrrmS#C!)!YQ"R!'B!!!LM!U!JC)`%am#!#3"!,PL#*,)'S##()
JX)&P"+)ZB!j+J'F+)JN5f&1!C[SL35mU!JKKrrrrqr)P5`))F!'`V`!8CK*)9bm
[!"`[,`!FBIrrrrlmB"j`!V#[!"4Q%NKA,bm!(#m[!"aKrrrrrEKJ"(!3B"3`+J)
%5-"6J1@))'S###'A#!"`!&K260m-!%jd!!`U88j@rr4)jaJd*Qi!##4Z!!ai!'!
i)'S###e`1!$rp%KZrr3[#b*Yrq!J@8k3!#TZrr"5K&L$-#S#"%M!Z)"YeLmU!JK
Krrrrqdj`!'!%GJ"Jj%cI$"K1ANjd!!JU88j@rrK)j`!d*'i!$#!+C`JQEJ!8)!Y
Q"R!!B!!![#!Z!!L`VJ!3C`C`!'!!!+a`!E#Z!!KQ@NKV!!&)DJ!")QhrZ#"C6T!
!+Qlrp%U!CMj)D`6M5'S%ib*YrlJJ@8k3!#TZrr4+J'BQ5'X6L8KU%iNLEIqi)&P
1N!!UE[rd5S"Q$L!U'(b`UaKmCJ4`!@"-F!"J5(!#X+i!#'Bq,a-[%L*YrlJJ@8k
3!#TZrr4+J'BQ,bX!"#mU!!3LEIqi)&P1N!!UE[rd5S"Q$L!U!"L`U`!BCJ4`!@!
'F!"J!R!!60m-!%jH6R3!%#T451FF1#C[!"`SE`!J)!aQ"R!'B!!"4%Ki!LCKrrr
rqI`SJ#48)%SL5b!)%0PQr#9V!3!"!%(U!34$k`%%)!J3f@Em0@X#"!)%0@X#"J)
'&A`!!3)3-#S#"NM!jBJ[!'(rrrrjZ#9!!JKi!'!!!1JJD`))+(!i!#S8F!'kJ'C
i5(J!#'(rrrrjP#"U!JJKJ$J!)'S###"`1!"`!5#!5(JGIQ(rrrrjGL"U!JJJF$J
!)8!!"#"U!JJJF$J!+'J!"#!-CJC`"Q!!!*)L6#"V!JJJF$J!)'J!"#!m!!!GIR)
JX)&P"+)ZB!j+J'F+)JN5f&1!C[SL3@"#F!+kJ'BB)'S##%K`1!![,!!%,b`!!'(
rrrrl3'!NF'1kJ'BH5(J!#'(rrrriq#"U!JJKJ$J!)'S###"`1!"`Bb#!8S4BJc!
U!J4)`,L!E3$r+%+U!L*#UJ)HF!"J"(B!B14-ha`i6R3!##T451F!-#4[!!`J#QB
1B"S[+`!)BIrrrrMF@)SQ8L!,CZi[#Q(rrrric%cI$!"1G!!%+P&19[ri51F!*#4
Z!!KJ%#m+,`SLEIrN)&P1N!!UE[rd5T*Ql(!!*&p1ANjd!!3U88j@rqa)ja!N*'i
!#%KZrqiLEIrB)&P1N!!UE[rS0J!`!dM!C`4`!'!dF'5`UJ)5Cb4)E[rh5'S#&NK
ZrqiLEIr8)&P1N!!UE[rS0J!`!dM!C`K`!'!)3Llrpa!ZrrG-h`3)6Pj1G!!%+P&
)j`!i*Qm!%(!#X*0QCL4V!!3[%Q(rrrri%LmU!!4Krrrrq!K+UJ!3C`S[+J!3BIr
rrrIi5US!1'F+,bS!1'(rrrrhk%UU!%4R#LmU!%4KrrrrppJSDJ"))!aR##m-BIr
rrrlB+'S!,#!-C`J[$'(rrrrqb#mV!!4Krrrrpkj`!%cI(!"1G!!%!!!!1b'J!L)
"#!)`!4"0593J55p6)%eKBd4PGS8$!83!!"XL2c`")`DTm!)Lrrd1)JLfJJ)R!&J
)B!"B#$B!@!JN!&J)%J"B"eS!@!A`!&J&IJ"B"5`!@!6S!&J%P!"B"#)!@!13!!"
B!bS!@!-'!&J#A!"B!K`!@!'U!&J!X!"B!(S!@!8K@!J!!2q3"!#3"2q3"!#3"2q
3"!#3"`-!!!!-!!!!!3!!!,`!!!$)!!!#T!!!!!3!!!!9!*!2!3#3#b)!N!X$!!!
!!3#3"d8!N!X)!!!!"!#3"!%!!"B#!!![!J!!0`)!!$i#!!"5!J!!A!)!!'N#!!"
d!J!!I`)!!)S#!!#@!J!!U!!"!*!&"J#3")!(5JY#!J%"J$G'&%e*9&qP3d0KBfK
P4fa[BQ&XFdaTBJ"R3fjdFQa#E'pMD`"0594IT8e*9%0-D@)!Fh4bEQ0`H3"cG(*
MEA!!E@9YFf9d!%PZG'9bCQ&MC8aTBJ"1CAG3G(*6HA-!9@jSEfaN6@9YEh*j!%K
[E'40C@e[FRN!4'PcF'pcC9"dFJ"(CA43G(*6DATP!&0KE@93FQpMCA0c!%GPG%0
eFR*PER43FQpMCA0c!%jPGe"dFJ"MBepRCA4IBh*PC&pfCA*cD@pZ!'0MAfCbC@9
I6N0ID@jQE`"MBepRCA4IBfKKEQGPAh4TE@8!Bf0IC'9cG(*[H3"MBepME'pcC3"
MBepMFQ9KG'8!Bf0ICR*PC9pMFQ9NF`"MBepRCA4IEQ&YC3"MBepQFQ9PAh"bD@j
MDA"KE!"MBepbC@e[GQ9IBh*PC!"MBep[F'9Z!'0MAfGPG&p13epTEQC[!'0MAh0
PF9pQCA4MD&p13h-!Bf0IFf9dAh"bD@jMDA"KE!"MBepcD(9dC'phEJ"MBepcCA&
ICQ9dBfKIBh*PC(-!Bf0ICf9dAh"bD@jMDA"KE!"MBepTEQPdD@&XDATP!'0MAh0
dEh*P!'0MAfa[BfYIFQ9aG@9cG!"MBepQFQ9PAfjKE@8!N!B%!!!!$!!"!!J!"!!
!!!B!#!!'!!J!#!!!!!S!"!!+!!!!#`!3!!X!$!!2!!!!%J!%!")!!!!6!!J!%`!
6liN!$c0A!"*09`!+QYm!##E2!!P-)3!0cUm!#cEk!"(i"J!1jP-!"a0-!!kjaJ!
3JV%!%)`+!!XpI3!5#&i!%-`,!!h)j3!)*`d!$aJH!!aR@J)!!+m!!!$B!!%#!!$
$!!!!Q!!"!J!!d`!!!3!!!3)!!1B!!!%)!!%#!!$a!!!"%!!"!J!!qJ!!!5!!!3)
!!33!!!#J!!%#!!%5!!!!d!!"!J!"(J!!!,!!!3)!!6!!!!$`!!%#!!%r!!!"'!!
"!J!"4`!!!,J!!3)!!9B!!!$)!!%#!!&R!!!!k!!"!J!"H!!!!5J!!3)!!B3!!!$
!!!%#!!'A!!!!i!!"!J!"U!!!!6!!!3)!!EB!!!$i!!%#!!'r!!!!N!!!!3)!!Fm
!!!#S!!&ZRJ!!!3!!!!&J!!!!B!!!!$)!N"pc!#J!!-N)!"%!3J"e!'N!E!"N!#!
!33"X!'`!)!"8!'%!FJ"R!'8!G!"c!!)!!J#3"XN*X(&K5l"aD@%!N"a[Ff&c9'p
j8`%!!!3!YJ#3De`!N!X"!*!6!@df1'X!N"-"!*!42!j0594IT80$B@0SC8aTBJ#
3"3%!!!!"B!!!!'!!!!!b"qCbN!!dK!!!!"`!-J!!BfCbC`!!!!S!!2rr!*!)FG`:
\ No newline at end of file diff --git a/src/mac/libraries/CCache API/bin/CCacheLib.PPC b/src/mac/libraries/CCache API/bin/CCacheLib.PPC new file mode 100644 index 000000000..e72419142 --- /dev/null +++ b/src/mac/libraries/CCache API/bin/CCacheLib.PPC @@ -0,0 +1 @@ +(This file must be converted with BinHex 4.0)
:$80$B@0SC8aTBLj38%-!FfKXBN0"*%J"!!!!)U-!!!'54CP+EhNKF'9QCR"hF'-
!!!!"XJ0B"`#3$3-!!J#3"2q3"!#3"Kf8!!!GP!!!(C3!!!5J!!3%!2q3"!#3"J5
i!!!",`!!!'-!!#*!!J%%!2q3"!#3$J3H!!!!J!3%"!#3"Iq3"!#3"`%!!!%B!!!
!!3!!!4!!!!!$!!!!$`!!!!%!!!$)!!!!h!!!!VJ!!!!%!!!!&3#3$`B!N!X0!*!
,#!!!!!B!N!FD!*!,!3!!!!i!N!3#!!!`!J!!0`)!!$i#!!"'!J!!63)!!&3#!!"
E!J!!C3)!!()#!!"p!J!!L!)!!*-#!!#I!J!!X3%!!,J!!3#3"3N!N!4+$N)!3!&
#!8!"3J&#!)!$4KB!!%e*9&qP68P83daTBJ"*ER4PFQCKBf9-D@)!68P8Ak9$3f&
MD'9(E'pLB@ac6'PL!(0dFQ0YF!"YC@eMF(N!Fh4bEQ0`H3"cG(*MF(N!Fh4bE'9
Z!'ePEA0PG!"1CAG3G(*6HA-!9@jSEfaN6@9YEh*j!%K[E'40C@e[FRN!4'PcF'p
cC9"dFJ"(CA43G(*6DATP!&0KE@93FQpMCA0c!%GPG%0eFR*PER43FQpMCA0c!%j
PGe"dFJ"R3fjdFQa#E'pMD`"MBepRCA4IBh*PC&pfCA*cD@pZBf0IC'9cG(*[H@0
MAfGPG&pMD'&ZCf9IG'PYC@0MAfCbC@9I6N0ID@jQEf0MAf0bC@&dC@0MAf0XEh0
PBf0ICf9dAfjKE@9MBepQFQ9PAf0bC@4cBf0IFQ9YEhCPAf0bC@4MBepQFQ9PAh"
bD@jMDA"KE'0MAfp`C@jMBepcD(9dC'phEQ0MAh0PG&p`FQPZBfP`B@aMBepcCA&
ICQ9dBfKI6N0cBf0ICf9dAdj$AfPZCQpMBepTEQPdD@&XDATPBf0ICf9dAh"bD@j
MDA"KE'0MAh0PF9pQCA4MD&pMFQ9NFf0MAh0dEh*PBf0ICR*PC9pZB@ePBf0IE'p
MDepbCA&eCA0d!*!&"!!!!!`!!3!)!!3!!!!'!!J!"J!)!!J!!!!+!!3!#J!!!!X
!%!!,!!`!$`!!!")!"!!5!!!!%`!)!"-!%qq*!!UDh`!569F!$c0A!!P-)3!)*Xm
!#cEk!!h1V`!1jP-!%IJ'!!F66!!,2Ad!%)`+!"##X3!1ZFB!$FMP!"$-#`!5#&i
!##F0!!aR@J!2'"i#!!$%!!!!X!!"!J!!e`!!!1!!!3)!!1%!!!$B!!%#!!$c!!!
!F!!"!J!"!J!!!2J!!3)!!3X!!!$S!!%#!!%6!!!!U!!"!J!"(J!!!(J!!3)!!5X
!!!$)!!%#!!%j!!!!L!!"!J!"5J!!!2!!!3)!!9%!!!%!!!%#!!&F!!!!`!!"!J!
"E!!!!+!!!3)!!A`!!!#3!!!"!J!"LJ!!!3J!!3)!!CF!!!#i!!%#!!'R!!!!Q!!
"!J!"Z3!!!0!!!3)!!F%!!!#!!!%#!!(0!!!!D!!"!!"m#!+QN!!"!!L8)Ir!1#%
!3)!"!!Km#!1Q6S!!)(`)!UDrBIrXN!!"!!L8)Iq`I(XEH(bF)hKm[5YiI0icH)2
L!$L!(`!!+!!!!%##!&3iB!!35!!2U@!!!!#3!(X!!)"l!!!S!`!!3))!$$KJ!!C
)!!"S1!!!!*!!!`!%J(X!!*!!!`!!J(X!!*!!!`!)J(X!!*!!!`!-J"X!!*!!(`!
!5!!!#*!!'`!!,"`!!8#"!!`iB!!*5!!!+#JG!!""JJ!-1!!!!C!!(3!!+"i!!%'
#!!b!!J"JN!!H!!!iB!!!J!%!@$JK!&"m#!1QZf(rl%k!!#"m#!+QNq(rr*!!!3!
)P#(r`(ar'hJS(`!!3B)!+)"r!!!S!`!!3B)!(%J!&l&J!!!!J(m!!%J!$Q9J!!!
!5!!!$$KJ!!T)!!!-1'!!!*!!I`!!J!%!5$JK!%"m#!1QJq(rr%k!!#"m#!+Q[b(
rj*!!!3!)P#(rS(aj'hKmQL0iI,XVH(cF-hKmrcYiI4e$H#JC!!"!JJ!-1'!!#NJ
!!5JiB!)S5!!1F@!!!!"mIKYi+"i!!%##!!`iB!!'5!!"##JD!!""JJ!BId26H%J
!'j@!33!8+!-!rd'!!!`iB!!"5!!!j(r$mhKr400i5!!DjB""!"3S(!!!3B)!'(q
$ihK)!"YKJ%%!&#J$!2p"J!!-1'!!$%J!!,!iIJ%"Ii6MH%J!'V'!33!8Nri#$$[
J!!#crJ)#Qhi"!$J!!!+B(J)31!!!C*!!(J)8Im2cH%J!$JeJ!!!!N!"q!JL!(J)
)+!!!!%##!!`iB!!'5!!!A)!C!!JX!!!!3))!'*2q!L56rJ)JNpN!!*2C!!4)!!!
FJ(N!"*2$!L#!'3!%N!!H!L56rJ)JNpN!")"j!!Ji!`!"N!!C!!L!H3!-1!-!!C!
!'3!-Npd!!$KJ!!#!!3"S1#%!B(`)!kDl)IrN6S!!)(`)!UDrBIrXN!!"!!L8)Iq
`I*XMH(cm1hJlS!!!+!-!!%##!!`iB!!+5!!!H#JF!!"!JJ!-1'!!$%J!!'L$``!
!9,m'2NJ!!$4rBpYiIm6cH%J!'L'!33!8,!-!!%##!"L)(J%!I"m!3%##!!`lS!!
"5!!!#)2H!L!S(J!!3B)!$(qJ"h9"J[r%Ik!(G8'#!"#6h!!!1'!!!%J!!!JiB!!
+J!%!@$JK!&"m#!1QZf(rl%k!!#"m#!+QNq(rr*!!!3!)P#(r`#J$!!"!JJ!-1'!
!#NJ!!$L!K!!!L!3#%#`!!!*!JJ!-1'!!$NJ!!#"mRb0i5!!4I@!!!!"rirYi5!!
,b@!!!!!iB!!!J!%!5$JK!%"m#!1QJq(rr%k!!#"m#!+Q[k(rp*!!!3!)P#(rX(a
r'hKmR50iJpd!!#JI!!"!JJ!-1'!!#NJ!!-5!(J)8,!!!C%'#!#"r`r0i5!!8q@!
!!!"mB!Ge3))!$$KJ!!K)!!#FJ"i#*#J!!!"!JJ!JJ"i#)*!!(`!!J(i#)#J$!!"
"JJ!-1!!!!*!!!`)NJ"i#)#J!!!"!JJ!JJ"i#**!!(`!%J(i#*#J$!!""JJ!-1!!
!!*!!!`)JJ"i#*#J!!!""JJ!JJ(i#)#J$!!""JJ!8N!!$!L5!(J)JJ(i#**!!!`)
J1!!!!CJH!K"rirYiIk6VH%[rrVf!R`!-1!3!!C!!(`!-J!%!@$JK!&"m#!1QZk(
rp%k!!#!S!`!!3))!$$KJ!!T1J!!J+!3!!%'#!"5!!`!-N!!%!!!iB!!!6S!!)$K
J!!a1J!!JI!J#TVr"rrL3!!%!#*3Krm"mIKYiI*mMH*!!S3"JN!$"!'5!(`)8,!!
!C%'#!#JX!!"Q3))!'(rMqhK)!"20B!!!!(aJ"h9!JJ!-1'!!#%J!!&JS(J!!3))
!$$KJ!!T)!!")+"m!!%##!!`iB!!+5!!!1(rMqhL!J3"JJ+%!C%J!$TeJ!!!!,!-
!!%##!"#!RJ!)1!3!!C!!(J!)J*i!$$J%!!'3!"i!$)!"!%Ji)3"!I!J$TV["rrK
1J!!JI!J#TVpKrqb3!!%!#*3Krl"mHaYiI*`MH*!!S3"`N!$"!(5!(!)8,!!!C%'
#!#JX!!"Q3))!'(q$ihK)!"-9B!!!!(aJ"h9!JJ!-1'!!#%J!!(`lS!!!IlrVH$[
!!'0)!!"3J(`##(b$q#k!C!!!J)3!")#K!(#!`3"d5!!2C@!!!!"mB!Ge3B)!))"
m!JKmBrJZ5!!62@!!!!#!I!))I'2i,T[$!!!l[3!"1rm!"+JF!J*m(3!!3B$rV)"
l!!`i!`!"N!!E!!`iB!!!J!%!@$JK!&"m#!1QZf(rl%k!!#"m#!+Q[i(rm*!!!3!
)P#(rX(am'hKmR50iI,iVH(cI-hL!(3)8,!!!C%'#!#JX!!"Q3))!'(qMkhK)!")
jB!!!!(aJ"h9!JJ!-1'!!#%J!!&!S(3!!3))!$$KJ!!T)!!"!L(d"!&I!"Mjm!`"
!3B)!$$KJ!!T)!!!S1(d"!ArNqhJiS!$r5!!9pB""!"5!I!!-1!-!!C!!(!!-1'!
!!)!"!&Ji)3"3I!J$TVZ"rr"1J!!JI!J#TVr"rrL3!!%!#*3Krm"mRL0iI,mVH#J
H!!"!JJ!-1'!!#NJ!!&L!(J)8,!!!CN##!#"r`r0i5!!4L@!!!!"mB!Ge3))!$$K
J!!K)!!!`+"m!!%'#!#3iB!$r5!!(P@!!!!#3!(m!!)"r!!!iRJ%"5!!8qB""!"3
iB!!!J!%!5$JK!%"m#!1QZm(rq%k!!#"m#!+Q[m(rq*!!!3!)P#(r`(bH)hKm[bY
i+"i!!%##!!`iB!!+5!!!5)!H!K3X!!"Q3))!)(r$mhK)!"$jB!!!!(aJ"h9!JJ!
-1'!!#%J!!#!S(`!!3))!$$KJ!!C)!!!3L"i"!*JI!!!iB!!!J!%!5$JK!%"m#!1
QZm(rq%k!!#"m#!+Q[m(rq*!!!3!)P#(r`(bH)hKm[bYi+"i!!%##!!`iB!!+5!!
!@)!H!K3X!!"Q3))!)(r$mhK)!""jB!!!!(aJ"h9!JJ!-1'!!#%J!!$!S(`!!3B)
!*$KJ!2p)!!D&B!!!!*!!I`!!J(m!!(r%mhK)!"2TJ%%!&$KJ!!#!!3")1#%!3(`
)!kDl`Iri6S!!)(`)!UDrSIrdN!!"!!L8)Iq`I(dEH(bH)hKm[bYi+"i!!%'#!"3
S(`!!3B)!$#JG!!"!JJ!-1'!!#NJ!!)L!(`!!+!!!!%##!$!iB!!)5!!'"@!!!!#
3!(m!!)"r!!!S!`!!3))!$$KJ!!C)!!"BJ"d!!*!!!`!!J(m!!)!$!!!S!!!!3))
!(%J!"K&J!!!!1!!!!*!!(`!!1'!!!dJ!!#Km!`0iIm6cH%J!$8PJ!!!!J*m!!)"
N!!#!!`)JN!!%!!!iB!!!J!%!@$JK!&"m#!1QZk(rp%k!!#"m#!+Q[k(rp*!!!3!
)P#(rX(bG)hKm[LYiI0mcH#JG!!""JJ!8+"m!!%'#!!`S!`!!3))!$$KJ!!T)!!'
mJ"d#&#`!!'C!JJ!JIk2VH%J!$`&J!!!!I'!(G8##!!`iB!!)5!!"P)!I!!!S!!!
!3))!4$KJ!!K)!!8*B!!!!*!!I`!!J(m!!#J$!!"!JJ!-1'!!"NJ!!@3i!!!!N!!
$!!4)!!!8J*m!!)"N!!3i!`!"N!!%!!5!I`!!J)-!"+JG!J*m"!!!3)!!()"p!JK
8J"!kI'-!,SJ$!!!S!!"M3B,rb)"r!!#!J`!%U"d#!R`%!!""J!!F5!!%d@!!!!!
i!!!!N!!I!!!iB!!$5!!!m)"p!JK8J"!kI'-!,SJ$!!!S!!!"3))!M#JH!!"!JJ!
-1'!!"NJ!!-JiB!!)5!!%5@!!!!#3!(i!!)!H!!!S!!!!3))!$$KJ!!C)!!#N1'!
GJ%J!"#9J!!!!J*i!!*!!C!!%J(i!!)"M!!3S!`!!3))!$$KJ!!C)!!"iJ,d##)#
I!!#!"!!%9!!31Rb&!#k!K!!%1+!GJ%J!%BQ!33!85!!!2#J!!!*!JJ!XJ!-!"*!
!!3!m1!!!!TJ"!$L!B3!iJ)%!2(r&mhK)!!D*B!!!!%J!!!`iB!!35!!!')#I!!#
!C!!%1!-!!C!!"!!%1'!!!)!"!&Ji)3"3I!J$TVZKrr41J!!JI!J#TVpKrqb3!!%
!#*3Krl"mI"YiI*XMH$ZJ!!"r[qYi+"X!!%##!!`iB!!'5!!!`)"m!!Ji!`!"9!-
31NJ!%*Q!33!8N!"l!!#!'`!!+!!!!%##!!`iB!!'5!!!P)1F!!")!!"d1'!"rdJ
!%'f!33!8J*X!!(rqqhKmC2%ZJ(X!!(aMm#iS!`!!3))!$$KJ!!C)!!"FIi6MH%J
!%&@!33!8J(X!!(aMm#iiB`$r1*`"!8J!%$f!33!8L"`"!)"l!!"mBr!ZQ!-"rS1
F!L!l[3!"1rm!"#JF!!"!J[q-1'!!!)#E!!"AS"!kI'3",S!"!&Ji)3"3I!J$TVY
Krqa1J!!JI!J#TT!!!3!)P#(r`(b$)hK)!!+TB!!!!$KJ!!#!!3")1#%!3(`)!kC
1J!!JI!J#TT!!!3!)P#(r`(b$)hK)!!*pB!!!!$KJ!!#!!3")1#%!3(`)!kC1J!!
JI!J#TT2Krrb3!!%!#*3Krm"mRb0i+"m!!%##!!`iB!!+5!!!*)"r!!")!!a&B!!
!!)"r!!")!!)YB!!!!$KJ!!#3!(m!!)!"!%Ji)3"!I!J$TS2Krra1J!!JI!J#TVr
"rrL3!!%!#*3Krm"mRL0i+"i!!%##!!`iB!!+5!!!4$J!!!"m(`0i5!!!')"q!!"
mBrJZ5!!1MB""!"3lr`!%J(i!!(`$q#iS!!!!3),ri%J!$R'!33!81m!!!(r$mhL
!!3")1#%!3(`)!kDl`Iri6S!!)(`)!UDr`IriN!!"!!L8)Iq`I*mMH(bq+hJiB3!
i5!!1!B""!"5!(`)8,!!!C%'#!"JiB3!i1*m#'$LK!%")!!hjJ%%!&#`H!!*"JJ!
X3)!!%#`H!!&!J!!85!!!e#`H!!4!J!$-5!!!5$J!!'53!"m#&%J!!-5!(`)8,!!
!C%##!#!i!!"PN!!I!K5!B3!iJ!%!2*!!I`)BN!!I!Ka)!!#F,!!!CN##!*3iB!!
)5!!!N!#!(`)8,!!!C%##!#!i!!"QN!!I!K5!B3!iJ!%!2*!!I`)BN!!I!Ka)!!"
N,!!!CN##!"L)!3"!+!!!!%##!!`iB!!)5!!!6)!I!K3X!!"P3))!2)J"!%!S!!!
!3B)!)$J!!'D3!"m#&)"K!$L!!3!mN!"r!KL3!"m#(%J!!"3iB!!)5!!!%$KJ!!a
)!!!)1'!!!)!"!&Ji)3"3I!J$TV["rrK1J!!JI!J#TVr"rrL3!!%!#*3Krm"mIKY
i5!!06B""!"4mIaYiIm6cH%J!$@f!33!8Iq2lH)!"!%Ji)3"!I!J$TV["rrK1J!!
JI!J#TVr"rrL3!!%!#*3Krm"mIKYi5!!-`B""!"4mIaYiIm2cH$L!!!"rjIYi5!!
-`B""!"4r`r0i1)!!!(rPqhK)!!bYJ%%!&(r$mhKrj2Yi5!!-YB""!"4r`r0i5!!
-BB""!"5!!3")1#%!3(`)!kDl`Iri6S!!)(`)!UDr`IriN!!"!!L8)Ir!I(iEH%J
!$2'!33!8I(mEH(r%mhK)!!baJ%%!&(rMqhL!!3")1#%!3(`)!kDl`Iri6S!!)(`
)!UD6iIrmN!!"!!L8)Ir!I(mEH$J!!!#`(`)#1!!!#V!I!J3iB!!S5rrrPC!!I`)
)J(m##)!"!%Ji)3"!I!J$TS2Krra1J!!JI!J#TT2Krrb3!!%!#*3Krm"mIaYiN!#
"!&b3!+%!B*!!`3"NJ!%!A*!!(`!!J!%!B*!!(`!%J!%!C#J!!!"!JJ!31'!!!*!
!I`!)5!!!1)"K!'",rrmTN!"r!!L!I`!)+!-!!%##!!`iB!!'5!!!')#"!'5!S3"
J5!!,mB""!"3iB!!!J!%!5$JK!%"m#!1QJq(rr%k!!#"m#!+Q[f(rl*!!!3!)P#(
rX(al'hKmR#0i1q!!!(pqfhJS(J!!3))!&*2m!!")!!$!5!!!#$[r!!'!(J!!1pi
!"#J!!!"!J[r`1"m!!93$%$T,rrk9N!"m!!"mI4YiIhlEH%J!!(!iB!!-5rrqIB#
F!!#3!'3!!)"m!!#!B`!!J*X!!$LJ!!a)!!Y0J%%!&)"m!!#!B`!!J'-!"%[rrNf
!R!!!J)3!!*!!C!!)J(`!!)"M!!#!B`!)J,X!!)#&!!L!T3!%5!!,%B""!"3lR!!
%1pi!")!H!!!S!!!!3),rM$KJ!!"Ai"!kI(d",T1m!!#!!3"B1#%!8(`)!kDlBIr
X6S!!)(`)!UDrSIrdN!!"!!L8)Iq`N!"K!'L3!)%!E(bp+hL$`3"X+"d!!%##!!`
iB!!'5!!"+$KJ!!K,rrfaN!"p!!!iB!"-5rrpTAar'hJS(`!!3))!$$KJ!!C)!!%
!1'!%iN[rrBQ3!(m!!)!I!!!S!!!!3))!$$KJ!!C)!!$J1'!%iN[rr@Q3!(m!")!
I!!3S!!!!3))!$$KJ!!C)!!$!J(m!!)#H!!!iS!6I5!!+AB""!"5!I`!%J*i!"$L
J"0p)!!T*J%%!&$Kr!!L!RJ!)J,i!$)$H!"",rrfKJ"i!&*!!(`!8J"i!'*!!(`!
BJ"i!(*!!(`!FJ"i!)*!!(`!JJ"i!**!!(`!NJ"i!+*!!(`!SJ(i!,$LI!#a,rrh
e1(m!-)#H!$#![J!dJ0i!1%[rr9%iI`!mJ*i!2)#q!%#!hJ"%5rrp26KJ!!#3!(m
!5$J!!!+!R3!!Q!3!!)#G!!#6j!!%J!%!@$JK!&"m#!1QZk(rp%k!!#"m#!+Q[m(
rq*!!!3!)P#(r`*!!B3"BN!#"!&am[LYi+"i!!%##!!`iB!!'5!!!D$KJ!!K,rra
0N!"q!!#!IJ!!+!-!!%##!!`iB!!'5!!!5$J!!!'B!`!!1'!GJ%[rr#9mIaYi+"m
!!%##!!`iB!!'5!!!*(rMqhL!J3"F1+!GJ%J!#1f!33!8J(i!!*2M!!3iB!!!J!%
!5$JK!%"m#!1QZm(rq%k!!#"m#!+Q[m(rq*!!!3!)P#(rX(aq'hL3!)%!E*!!S3"
`1!!!!*!!!3!iU(i#!MJ$!!'`(J)#U(i#!UJH!J4m!`!!3))!@&3!#$b`(J)%U"i
#"&3$%$T,rrZ*I(mEH#JI!!"!JJ!-1'!!"NJ!!*!!Iq2lH)#H!JLS(J)%I!!1F(`
!!C48"4!k5!!)4B""!"5!IJ))5rrkeC2q!JL)!3"X+!!!!8##!"L!B3"XJ)%!F$L
K!$K,rrka5!!!+#J!!!*!JJ!BJ'%!E)#"!(!iS3!i5rrp,8J!!!`iB!!35!!!))#
K!$L!RJ))U(i#!MJ$rrp8!"!kI+3",MKJ!!#!!3"B1#%!8(`)!kDl`Iri6S!!)(`
)!UDrJIr`N!!"!!L8)Iq`I(`EH(bG)hJl`!!!IprcH%J!!#L!I3))I!2i,T!!!3!
iIi2MH$L"!$K,rrI"B!!!!$[H!!%lr`!%U"d#!R`H!!""J2r8J(d##%[rqJ%iB!!
!J!%!@$JK!&"m#!1QZi(rm%k!!#"m#!+Q[m(rq*!!!3!)P#(r`*!!B3"BN!#"!&b
3!+%!B*!!`3"NJm%!A#JH!!""JJ!3Jq%!C#JI!!"!JJ!-1'!!!%J!!1b)J3"B9)-
'2SJ"!'"m!`"!3B)!$$KJ!!")!!$3+!3!!8##!'`iIJ!"1*m!!8J!"b@!33!8,!-
!!%##!%`iIJ6M1*m%idJ!"`f!33!8,!-!!%##!$3iIK1*1*m6L8J!"[@!33!8,!-
!!%##!"b!IKKmJ"mBI(`$!!"!JJ!-1'!!!8J!!'JiB!!!5!!!B#J%!!*!JJ"8J(i
!!)#I!!")!!DeJ%%!&#`$!!"!JJ!dJ(i!")#I!!4)!!DGJ%%!&#`$!!"!JJ!FJ(i
!')!I!"Km!`!!3))!$$KJ!!&)!!!31'!!!%J!!!JiB!!!J!%!5$JK!%"m#!1QZm(
rq%k!!#"m#!+Q[i(rm*!!!3!)P#(rX(ap'hKmR#0i+"`!!%##!!`iB!!'5!!"@$K
J!LK,rrJjN!"m!!#$r!!!Iq2lH(qNkhK)!!@GJ%%!&)JG!3#B(`%!1(m"!6LG!3&
)!!@&J%%!&+JG!J+`(`)#U"d#",!I!J3i!!!"Q"m#%+JI!J48!a!k5rrhjC!!I`)
)1m!!!(rFmhK)!!$8J(d##(b$i#k)"!!!+!!!!8##!(!iB!!)5rrhZB#I!JKmC1%
Z1!!!!B"r!JKmBq!ZQ!-!!$KJ(B",rrHCJ*m##(b%i#k3!'3!")"r!JKmBq!ZJ'-
!"#J$!!"!JJ!-1'!!"NJ!!)L!R3))I)6J,S#%!!3iS"f!5!!&"B""!"4)!!"-+!!
!!N##!"b!C!!!J)3!")!I!JKmS1)85rrk%8J!!#`S!!"M3))!*$KJ!!K,rrFPJ*m
##(aNi5ii!!"MJ(m##(aMi#kB!`!!1pi!!6ZF!!5S(`)#I"i!!%'!rbJiB!!!N!"
r!L53!(m#))!"!&Ji)3"3I!J$TVZ"rr"1J!!JI!J#TT2Krrb3!!%!#*3Krm"mIaY
i+"m!!%'#!#a)!!!8J(m!!)"M!!K,rrEa1rm!")!I!!!S!!!!3),rk(rMqhK,rrE
CJ!%!5$JK!%"m#!1QJq(rr%k!!#"m#!+QNq(rr*!!!3!)P#(r`(ar'hK)!!!8Iq2
lH(rNqhK,rqVjB!!!!)!I!!!S!!!!3),rk$KJ!!#!!3")1#%!3(`)!kD$iIrm6S!
!)(`)!UD6iIrmN!!"!!L8)Iq`I(mEH$KK!$K)!!,TJ%%!&(aJ"c9"JJ!-1'!!!%J
!!%#!(`)8,!!!C%'#!#JiB3!i1*m#'$LK!%")!!,4J%%!&(aJ"c9"JJ!81'!!!%J
!!"!i!!!!Q!%!3)KK!%#!!3"B1#%!8(`)!kD$iIrm6S!!)(`)!UDr`IriN!!"!!L
8)Ir!I(iEH)JH!!!S!!!#3))!D)2q!!5!I`!!5rrecB"r!!4,rrA&J(m!%#J$!!"
"JJ!)5rreYB"r!$JS!`!!3B)!#%[rpD@!I`"%+!-!!%'#!!K,rr@9J(m!5#J$!!"
"JJ!)5rrqEB"r!#`S!`!!3B)!#%[rrPf!IJ!%5rreE6KJ!!#!!3")1#%!3(`)!kD
l`Iri6S!!)(`)!UD3!!%!#*3Krm")!!&&B!!!!(aJ"c9"JJ!)5!!!%$J!!!#!JJ!
iN!!%!!#!!3")1#%!3(`)!kC1J!!JI!J#TT!!!3!)P#(r`%J!!@&J!!!!J!%!5$J
K!%"m#!1Q6S!!)$P#!6!jB!!!1!!!)(`*!kD!#J!)+!!!!%##!#L3!'S!#*!!LJ!
-N!#U!"#3!-S!&*!!kJ!!N3S!"(eM@hL4+J!B6S!!)$PV!!%j5J!F3J$rb$KJrrp
1J!!J,!-!!%f!!#!X!`!J6)!!)"aM!"`iJJ%`1!!!!(aN'K53!!-!#*!!!`!-N!!
$!"#3!!-!&*!!!`!!N!!$!!53!!-!'%k!!#"m#!+QNq(rr*!!!3!)P#(r`$[L","
)!!!JJ!8!!$L!rrq3!"m!!)"P!!L"K3!%5!!#$B""!"5![`!!+!8!!%##rpb!!3"
)1#%!3(`)!kD$iIrm6S!!)(a$%hK1J!!JI!J#TT!!!3!)P#(r`%[rrqemD4YiJ')
!9)##!&!iSJ!!1-)%Y)$L!%5"!J"!5rrqj@!!!!#!JJ"FN!"N!!",rq4&B!!!!$K
J!!#!!3")1#%!3(`)!kC1J!!JI!J#TT!!!3!)P#(r`%[rrd&J!!!!J')!A)"M!!"
,rrlaB!!!!)!"!%Ji)3"!I!J$TNk!!##"JJ!`N!""!"5!$!!!J%`!"(`*!kC1J!3
JJB)!,*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!#53!%%!&)!-!!#!6!!%I!N$TNk
!"##"JJ!SN!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!&*!!33!8J!`!!)"-!!4m#31
Q6S!%))'#!"b3!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ!dN!""!"5!$!!!J%`!"(`
*!kC1J!3JJB)!$*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!##3!%%!&)!-!!#!6!!
%I!N$TNk!"##"JJ!%N!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!'*!!33!8J!`!!)"
-!!4m#31Q6S!%))'#!!L3!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ!!N!""!"5!$!!
!J%`!"(`*!kC1J!3JJB)!%*!!33!8J!`!!)"-!!4m#31Q6S!%))!-!!#3!%%!&(`
*!kD!6!!%6S!%)!!!'b5!!!"8#!#3"4Z!J!!!@!#3"K[BJ!!!0!#3%6iL",!#)Kf
8!L)GF!)L",5'!J%GP#)"-!-KC!)L!5#'!KB0m!ei$5!-p!c)#mJ*`!MX#&`(h!G
-"T`&`!8)"0J$f!0`!V`"6!$S!"`DE#)D-!3Z68P8)%N[8b"0B@0%CAB")H%!!!%
!!!!"B!!!!'!!!!!b!*$cA!#3#`%!N"-"F(G`B`#3%`%!N"%m$Ne*9&qP3d0KBfK
P6'PL!*!&!3!!!!&J!!!!B!!!!$)(jR+3!$6L!!!!(!!b!!"MCR*R!!!!#J!!rrm
!N!3(jR%)D6J:
\ No newline at end of file diff --git a/src/mac/libraries/CCache API/include/CCache.h b/src/mac/libraries/CCache API/include/CCache.h new file mode 100644 index 000000000..f758c14f3 --- /dev/null +++ b/src/mac/libraries/CCache API/include/CCache.h @@ -0,0 +1,350 @@ +/************************************************************* + * + * Header file for Credential Cache API for MacOS + * + * -as defined by the document found at http://www.umich.edu/~sgr/v4Cache/ + * -definitions borrowed from a windows implementation found at + * /afs/umich.edu/user/s/g/sgr/Public/TsoCacheDll shell/ + * + * Revision 1: Frank Dabek, 6/4/98 + * added missing calls from revision four of the API + * deleted some WIN specific Information + * added some misssing definitions + * renamed to CCache.h + **************************************************************/ +#ifndef _CCache_h_ +#define _CCache_h_ + +#if defined(__CFM68K__) && !defined(__USING_STATIC_LIBS__) +# pragma import on +#endif + +#include "Processes.h" +/* +** The Official Error Codes +*/ +#define CC_NOERROR 0 +#define CC_BADNAME 1 +#define CC_NOTFOUND 2 +#define CC_END 3 +#define CC_IO 4 +#define CC_WRITE 5 +#define CC_NOMEM 6 +#define CC_FORMAT 7 +#define CC_LOCKED 8 +#define CC_BAD_API_VERSION 9 +#define CC_NO_EXIST 10 +#define CC_NOT_SUPP 11 +#define CC_BAD_PARM 12 +#define CC_ERR_CACHE_ATTACH 13 +#define CC_ERR_CACHE_RELEASE 14 +#define CC_ERR_CACHE_FULL 15 +#define CC_ERR_CRED_VERSION 16 + +#define CRED_TYPE_IN_UNION + +typedef int cc_int32; +typedef cc_int32 cc_time_t; +typedef cc_int32 cc_nc_flags; +//typedef short cc_cred_vers; + +enum StringToKey_Type { STK_AFS = 0, STK_DES = 1}; + +enum { MAX_V4_CRED_LEN = 1250, + KRB_PRINCIPAL_SZ = 1250, + KRB_INSTANCE_SZ = 1250, + KRB_REALM_SZ = 1250, + KRB_SERVICE_SZ = 1250, + ADDR_SZ = 16 }; + +// V4 Credentials +typedef struct _V4Credentials { + unsigned char kversion; + char principal[KRB_PRINCIPAL_SZ]; + char principal_instance[KRB_INSTANCE_SZ]; + char service[KRB_SERVICE_SZ]; + char service_instance[KRB_INSTANCE_SZ]; + char realm[KRB_REALM_SZ]; + unsigned char session_key[8]; + cc_int32 kvno; + enum StringToKey_Type str_to_key; + long issue_date; + cc_int32 lifetime; + char address[ADDR_SZ]; // IP Address of local host + cc_int32 ticket_sz; + unsigned char ticket[MAX_V4_CRED_LEN]; + unsigned long oops; +} V4Cred_type; + +// version indentfiers +// extend to authentication schemes beyond Kerberos? +enum cc_cred_vers { + CC_CRED_VUNKNOWN = 0, // For validation + CC_CRED_V4 = 1, + CC_CRED_V5 = 2, + CC_CRED_VMAX = 3, // For validation + CC_INVALID_RECORD = 99 +}; + +#define NC_MAX_NAME_LENGTH 255 +typedef struct _infoNC { + char name[NC_MAX_NAME_LENGTH]; + char principal[NC_MAX_NAME_LENGTH]; + enum cc_cred_vers vers; +} infoNC; + + +typedef struct _cc_data { + cc_int32 type; // should be one of above + cc_int32 length; + unsigned char* data; +} cc_data; + +typedef struct _cc_creds { + char* client; + char* server; + cc_data keyblock; + cc_time_t authtime; + cc_time_t starttime; + cc_time_t endtime; + cc_time_t renew_till; + int is_skey; + cc_int32 ticket_flags; + cc_data **addresses; + cc_data ticket; + cc_data second_ticket; //???? + cc_data **authdata; +} cc_creds; + +//union of v4, v5 pointers +typedef union cred_ptr_union_type { + V4Cred_type* pV4Cred; + cc_creds* pV5Cred; +} cred_ptr_union; + +//version 4 and version 5 union data type +typedef struct cred_union_type { +#ifdef CRED_TYPE_IN_UNION + enum cc_cred_vers cred_type; +#endif + cred_ptr_union cred; +} cred_union; + +#define kInitialCredBufferSize 10 +#define kLocalCopyNCType 1 +#define kMasterRecordNCType 2 +#define kUnlocked 100 +#define kReadLock 101 +#define kWriteLock 102 +typedef struct _ccache_p { + char name[NC_MAX_NAME_LENGTH + 1]; + enum cc_cred_vers vers; + char principal[NC_MAX_NAME_LENGTH + 1]; + short numCreds; + short maxCreds; + cred_union** creds; //self-growing array of pointers + int cc_flags; + char typeFlag; //master or local copy + long lock; + ProcessSerialNumber lockOwner; + struct _ccache_p *next; + struct _ccache_p *prev; +} ccache_p; + + +typedef struct _ccache_it { + ccache_p *prevNC; + int lastCredOffset; +} ccache_it; + +typedef struct _apiCB { + ccache_p* listHead; + ccache_p* listTail; + int numNCs; + cc_time_t changeCount; +} apiCB; + + +// --- Globals ------------- +extern apiCB *gCntrlBlock; + + +/* +** The official (externally visible) API +*/ + +#define CC_API_VER_1 1 + +// -- Main cache routines ------ + +/* Initialize the Credentials Cache, return a control structure in cc_ctx, + This should be the entry point of the shared library, or called from + the entry point */ +int +cc_initialize(apiCB ** cc_ctx, // < SL's primary control structure. + // returned here, passed everywhere else + int api_version, // > ver supported by caller (use CC_API_VER_1) + int* api_supported, // < if ~NULL, returned max ver supported by DLL + char** vendor); // < if ~NULL, returns read only C string, vendor name */ + +/* Termination routine */ +int +cc_shutdown(apiCB** cc_ctx); // <> SL's primary control structure. NULL after call. + + +/* Open a name cache within the ccache designated by name and version? + Returns a control struture pointer to the NC in *handle */ +int +cc_open(apiCB * cc_ctx, // > SL's primary control structure + char * name, // > name of pre-created cache + const enum cc_cred_vers vers, // > version of credentials held in this NC + int cc_flags, // > options + ccache_p ** handle); // < named cache control structure + +/* Close and deallocate memory assoicated with the named cache pointed to by *handle */ +int +cc_close(apiCB* cc_ctx, // > DLL's primary control structure + ccache_p** handle); // <> named cache control structure. NULL after call. + +/* Create a new named cache in the cache cc_ctx. +Specify the cache by: a name, a principal, a version +return a pointer to the control structure for the cache via handle */ +int +cc_create(apiCB* cc_ctx, // > DLL's primary control structure + char* name, // > name of cache to be [destroyed if exists, then] created + const enum cc_cred_vers vers, // > version of credentials to be held in cache + char* principal, // > name of principal associated with named cache + int cc_flags, // > options + ccache_p** handle); // < named cache control structure + +/* Seems remarkably similiar to cc_close ???? */ +int +cc_destroy(apiCB* cc_ctx, // > DLL's primary control structure + ccache_p** handle); // <> named cache control structure. NULL after call. + +/* Get the global last changed time variable for the CCache + Replace this with a change counter instead of an actual time?*/ +int +cc_get_change_time(apiCB* cc_ctx, // > DLL's primary control structure + cc_time_t* time); // < time of last change to named cache + +// -- Named Cache routines --------- + +/* store the credentials (tickets) in cred in the named cache pointed +to by handle. Maybe the last argument should be more general? */ +int +cc_store(apiCB* cc_ctx, // > DLL's primary control structure + const ccache_p* ccache_pointer, // > named cache control structure + const cred_union cred); // > credentials to store in cache named + +/* Remove the credentials pointed to by cred from the Named Cache pointed to +by handle. */ +int +cc_remove_cred(apiCB* cc_ctx, // > DLL's primary control structure + ccache_p* ccache_pointer, // > named cache control structure + const cred_union cred); // > credentials to remove from named cache + +/* set the principal of the NC *ccache_pointer to principal, + principal should be a null terminated C string */ +int +cc_set_principal(apiCB* cc_ctx, // > cs + const ccache_p* ccache_pointer, // > NC + const enum cc_cred_vers vers, // > version: to check pointer? + const char* principal); // > new principal name + +/* Get the name of the principal associated with the NC handle */ +int +cc_get_principal(apiCB* cc_ctx, // > DLL's primary control structure + ccache_p * ccache_pointer, // > named cache control structure + char** principal); // < name of principal associated with named cache + // Free via cc_free_principal() + +/* Get version of credentials stored in the NC pointed to by ccache_pointer */ +int +cc_get_cred_version(apiCB* cc_ctx, // > cs + const ccache_p* ccache_pointer, // > the named cache + enum cc_cred_vers* vers); // <> the version of credentials in the NC + +/* Return the name of the NC specified by ccache_p */ +int +cc_get_name(apiCB* cc_ctx, // > control struct + const ccache_p* ccache_pointer, // > NC + char** name); // <> name + + +// - Search routines ---- + +/* +Sequentially open every NC in the CCache. +To use (?): initially set handle and itCache to NULL +after each call set itCache to handle, +repeated calls will return all currently held NC's +*/ +int +cc_seq_fetch_NCs(apiCB* cc_ctx, // > DLL's primary control structure + ccache_p** ccache_pointer, // <> named cache control structure (close, then open next) + ccache_it** itCache);// <> iterator used by DLL, set to NULL before first call + // Also NULL for final call if loop ends before CC_END + +/* Sequentially fetch every set of credentials in the Named Cache handle +use similiarly to cc_seq_fetch_NCs */ +int +cc_seq_fetch_creds(apiCB* cc_ctx, // > DLL's primary control structure + ccache_p* ccache_pointer, // > named cache control structure + cred_union** creds, // < filled in by DLL, free via cc_free_creds() + ccache_it** itCreds); // <> iterator used by DLL, set to NULL before first call + // Also NULL for final call if loop ends before CC_END + +/* a wrapper for cc_seq_fetch_NCs. + Returns: a null terminated list (array) of pointers to infoNC structs + if this works, maybe we should hide that seq call... + */ +int +cc_get_NC_info(apiCB *cc_ctx, // > control structure + infoNC*** ppNCi); // <> info about the NC (yes.. three asterisks...) + + +// -- Memory recovery --------- + +/* just a wrapper for free() ??? */ +int +cc_free_principal(apiCB* cc_ctx, // > DLL's primary control structure + char* principal);// <> principal to be freed, returned as NULL + // (from cc_get_principal()) +/* another wrapper? */ +int +cc_free_name(apiCB* cc_ctx, // > DLL's primary control structure + char* name); // <> name to be freed, returned as NULL + // (from cc_seq_fetch_cache()) + +/* free storage associated with cred_union** */ +int +cc_free_creds(apiCB* cc_ctx, // > DLL's primary control structure + cred_union** creds); // <> creds (from cc_seq_fetch_creds()) to be freed + // Returned as NULL. + +/* Free that nasty array we created above */ +int +cc_free_NC_info(apiCB *cc_ctx, // > control structure + infoNC*** ppNCi); // <> pointer to free + + +// -- Locking ---------- + +#define CC_LOCK_UNLOCK 1 +#define CC_LOCK_READER 2 +#define CC_LOCK_WRITER 3 +#define CC_LOCK_NOBLOCK 16 + +/* Place a lock on the Named Cache handle, lock types are above +NB: API indicates that this call is not implemented*/ +int +cc_lock_request(apiCB* cc_ctx, // > DLL's primary control structure + ccache_p* ccache_pointer, // > named cache control structure + int lock_type); // > one (or combination) of above defined lock types + +#if defined(__CFM68K__) && !defined(__USING_STATIC_LIBS__) +# pragma import reset +#endif + +#endif /* Krb_CCacheAPI_h_ */ |
