ag@portnoy.CTS.COM (Keith Gabryelski) (04/02/88)
See previous post for an explanation of the bug and a test program. This binary patch is for 386 SCO Xenix users. I could have just as easily posted just the new crypt.o, but to avoid any legal problems I made it so that you have to have the old broken crypt.o in order to get the new one. The bug was found and fixed by myself Michael Ditto (ford@kenobi.UUCP) using only our bare hands and adb (Well, with some help from M-x compare-windows, etc.). #! /bin/sh # This is a shell archive, meaning: # 1. Remove everything above the #! /bin/sh line. # 2. Save the resulting text in a file. # 3. Execute the file with /bin/sh (not csh) to create the files: # ORIGScrypt.o (A copy of the old (broken) Scrypt.o 286 small module) # ORIGMcrypt.o (A copy of the old (broken) Mcrypt.o 286 middle module) # ORIGLcrypt.o (A copy of the old (broken) Lcrypt.o 286 large module) # ORIGcrypt.o (A copy of the old (broken) crypt.o 386 library) # NEWScrypt.o (A copy of the new (fixed) Scrypt.o small module) # NEWMcrypt.o (A copy of the new (fixed) Mcrypt.o middle module) # NEWLcrypt.o (A copy of the new (fixed) Lcrypt.o large module) # NEWcrypt.o (A copy of the new (fixed) Lcrypt.o 386 library) # The new [SML3]crypt.o will also be installed in /lib/[SML]libc.a and # /lib/386/libc.a # # This archive created: Fri Apr 1 12:33:07 1988 export PATH; PATH=/bin:$PATH if test -f '386patch' then echo shar: will not over-write existing file "'386patch'" else cat << \SHAR_EOF > '386patch' begin 666 386patch M M , ']HC@8 H:!"%6&AN"X !D(#%1T: M!55:"Q$=#%!'# L!0%H;!14514 %%15$1@P!'0=06QT1 %!!$0!LII )J3-5 M! #!P4/P) )J>%3 P % P=?SY )J:D ' :G/Y )J<-N! ( 0@TKY(( M OW\_/O[_53+D T P(# ,"!T1!1$2^,Z0H"E4 /@(1!@$&%@%E!E@L%A$? M#AQY!ED\$0L)!'0(5SH+#1$+"01T*HOO50$" .@@8"#@(& @^"!@(. @8 M"#H(& @X"!@(1G@(& @X"!@Q"!@(. @8"#H(& @X"!@(/@@8"#@(& @Z"!@( M. @8""\@." H(%A@!R H(#@@*" Y("@@." H(#L@*" X("@@.2 H(#@@*" _ M("@@." H(#D@*" X("@@.R H(#@@*" @"!@(. @8"#L(& @X"!@(.0@8"#@( M& @_"!@(&P@8"#@(& @Y"!@(. @8"#L(& @X"!@(&0@8" 4 P P, M ,/'QH3&00&'Q,)$Q\=!!\('A(8%QP/&0\K'2LZ"A@I-AL>#!$<'18? M&A<;!!@6.3T (0,!!P$! 0,!#P$! 0,!!P$! 0,!'P$! 0,!!P$! 0,!#P$! M 0,!!P$! 0,!/R$/"@D, PT$ PL)# H)# D'!P\( PH,#PP+# H' @P&"PP% M#P8%"P0)! ,%#@0)#P4/ P0*!@T(!@(." T$"@8+ @X)!@@-" <-#@4/ 0P% M#PD."0,(#0H& @P!"PP/ @X%#@D, 0X)# 0-! H/"@$- @4""P(,"P8)#0$+ M# 4+!P,*"0<(!0P*! P!"PP/!@H%"@<)"@<"# @*#0L"!P0.# L"#0$'# ,+ M"@,."0\$"08+!PT&#P$/ PL!#0@.!PX+"@,- P8/ PL#"@T.!P@+ @4##@,) M#P,' P4.#0L$!P,,#PD,!PP* @X"#0L'"@P'# \&# L,!0$- 0X'"P4,# X( M!08- 0T.#08, @T.!P<%"0X( PH,! 4/!0D* 0X"!@,* 0<*#P<&!0D#!0,. M!0,$"P8/# \+"0\) PX!!@\-"P4&"P0." T.!PH) @X!!0L&!0L%# ,'# ,. M"P@+ 0<!"@<*! \$!P0."PP�(' 0X%# H% 04/!@$&" 4)#PD, 0\(!0X/ M!0X"#PP'# T+# ,-" L$#08)#@T'#@<%#P8!#P0)! 4)#@@%# L$#08%"04. M#0X,!0\!# $/ 0\*# ()! H+ PH-"P4,"P8. @4""00#" D##0L.!PL%# \% M" 4"# (&# <"# 8-"@,/"0,. @4" P4) P8##1L7$P$($1 -$ X8#1\7#14( M"A 6+CL8"AH>$Q@0'0\=67F^ P'X P -Q;K@0M<G^=(S.OW P,! #I 56+ M[,5O[D]8VQCVZRJ?+A:/OH: T4(B07W L;_BX8 #+Z&D[Z&G -%"(D%]P+& MXXN&'.K+_[E\0!Q\U#,?Z)8 $83=)<.CMD B(>[ P 1VK^&WSNR4I")*,# M T?0J2< B4I"-O_H#8H.6/^_ (B''.H! $>#N)B#]87([:(W XJ'0@R^ MAC"' ,[PY?K\$'ZBD;\HI)&_#/P5;0O_.LOXH/,L+Z/R #I 8J)_T6#_Y.# MM1$ #A02T,OH]HAQP#BHD6Y___=P9]Y*(W T>#%F6#,[D\_A!]!MK:ZZ60 MU]V@0\9.HY"05> JL^.JW)]6,_]AGF^2D \V"S@ #+LZZ3T$'9]@# (K. M?/U ?&]+?>0 #I*LW^_^F-;V]T^_R)1?3:_NL1D-8BLC,/C9L$.(@-/OL M $<+>1A_[#,6#MV4NJIOT4W[58OL@>.JCU@#4U=5LDP# #;0/^(A\^ _T!( M#N<P?-D\06Z* D]5C349T>(@VA8D#Z=X^'_S(^W** P 9 >(#[YQSO^# M?7$41X+&CXT#@WW-X0N'T0^^CC , #!RD#_2$I*9XH# "(A'=&A!6Y \$/ MOG$I 0 S'0^Q@T&TL'X ZZ&((4X XB'<\#!^.O!_G=YA@, (LJT/@D <\% MQ3,/C:C#) 'CP\\SBH1_@_\(#X/1<,?\,__9HC>3D \V . !C4\C\_[^+ M#4@#Z0$R!#G,CK,+#XT$!#E'Z#@F]RL\06W;DY"08*@ #[X$1;L# (V,A#?Y M#30C?.QR0;2,PW+=?A>#O.T$#$7.0'$WNP\ P>$N1CWF"7 S_#/_Z.0JA\+A M!@Q_.X8Y9 ( 'S^6T/P\#!^(L@."G*:P, BT5+S<!%I_ZH^K\P_^N=4T%S M80F'..5# "+2:W6BX9KBPPXKND OX-87E];R2J1D%6+JP 3,%S:2#/VZP0N M%[C%ABB.@&<#1H/,Q?3P,_9CICB3D(LJ8?G__[\KS]/XS0"(ABA#@_]G20[N M!WSFS'B]"XM%@(@V&PO;G>E\ ;^4?,T %%N0D)!HP04 .A'@_\@C$DD,_;K M!"XG&,6&*(Z'J -&@W;%]/ S]F#6&!<XB8;XZ=;_=WGG P 1FK_,'SN='44 M!Y\=7X/_!O9[@\PU0)/XJ '^>>S%!@\VB "QW?__=ANO, _%WP_4\>\0 &O. M5=_2AU@# ""QP:*3;8+<GI_C@P Z[]6%KA"@_X"(+<K1>M-VNMP(?_R7F_0 MA^-.GX#5(^>E+'CZ"'CP%7D?'WD5['D+TWD!VWLAK7D;O;"R>/L\>1$.>S > M>5;J>4ST>6G">6'(>9C6>9.[>:6_>=N'><Z.>?IR>?QV>?8,>AX:>!3+>@#1 M>#VU>B.^>E.">$^,>GN3>G&9>&Y\>F1)>H%/>K@N>K(S>JL >MX&>M7A>N_R M>1O?>RJI>2.P>R6^><T^#;&>4ZF=Y'QU&W5B6H*?Y'1VYVZ?Y)[:[-':[$,A M_,5DY#T;V":=Y)QAI!P0B:&? +ZW P :OE:?@/$K85\_#;S&X/K!P@HES7_ MZX^[7^ .SQ'BAD L! #I-?___T9J=O>Y?)8Q>.LS'NLTD) 3%>?5Q@8/OFTY M* 0 1H@F!8QR"GSK@P6HJ_\Y?@-J*?A\!.1^ X/#[XK#B(9<A_X"20YY"WT& MN)Z'!*[8R3@"C\.(AI@Y&02#^UIZA*,8! "#21^'^SFWE@< %[<L,Y M[.B M .20GPV*G^2&V&>!F>OZW>1EGV^!%&OVKJSE+QN!D2H :\<!4,WA3%-F>0") M1?!KP%GI]D$@=\0":\X&@-M<5F!R>1NRZHI-\(@8LE(# '062P !:0 M0?____\6_O___[E\ >;P<NO___^5_Y?7^___%_____]\._<6'0 $'_____ M%O[___^Y? 'T\'*J____1/____] _____Q;^____N'P ^?!RZ____RX<E#GY M\$%[Q]?[___T)Q8= ?#S1? 3&\''\____?#SX? 2E\''\____?#SY=#QW M>>7[__\67@ #EYY?O___]_PN;[____\'KU____7^?[__]=YOO__T?G^___ M%O____^AH*0V/#5BQO\:*F :+V :-& :0& :1V :4F :?&!:OJG[&L-@&NA@ M&O5@&O]@&PQ@&U1@&W]@6YRI_1NA8!NQ8.UNU?___OB@C)J+E)J&_______Y ?H)R-AH^+;_S____WH)J1G(V&CXN=_O___Z]U_?__B_B@ end SHAR_EOF fi # end of overwriting check if test -f 'Lpatch' then echo shar: will not over-write existing file "'Lpatch'" else cat << \SHAR_EOF > 'Lpatch' begin 666 Lpatch M M M &P U !@ M> M M & M M M M M M M M M M M M M M M M M M M ";H[@#^0, 5>YPOPC/UI_/2)^Z]LOUBX2 51-G8 E>G(Y&"";=$=1^#H2# MBAP7V)O5WHT8#JC,3]D"P_^+#IB?1AMUQ'^.+7B!3MZ*1Q2U)!P W@JXXE<O MH7/&17"% .AZ(_\8Y'O,N-5=D8:A'XL=B46YJ "1^>^)SGN^&$0CXQCD>\RX MU5V]AN)%< ^8NT<;Q%V$C3-M 2BRR__><U(./_^:L(Y 3[G<$3/HB'[N TT, MIO82#A"*'W3: 4]',HNI& -?B(F2A:>#9Y.D0,%\_)LC]6'VYRNQ"7O@?$3" MN_U6_OW9#PT !@ M 4 !.F^0 K@_Y MB\([_&?_#0N#5QO_3U[Z?+9P"MB*"LB*#O")'=/;J@1_ );!RXU!S?P63I+4 M=S6. [!L=,#V4>'\(-?@)@\ . 1@ 8.18, %,0X<3B$!:(3K366>)VYL+ M:E4MB$ [@%KCFU'4<$/;$W"TT#/@V]1PS]F;VU(/3[*>8N70.(E?HH44BM[U M4WQVL]4U40 +<J,IB1SA17W- 6#Z AZ5 EM\30(#PL[2<V+W67R[^ZY'?J X MBP\M]99[VPGUA]-N=6T)KH2@AZ.(GPEX;WXQ;._\HWIL'0^ =:54Y+/9 (QS MV[H*OP"#G;,C6GKV 7U\7H+Q5OQC;D8H.Y3-BR40BK<)>HA_9WK._0BX=I75 M *Y2 0N#(36WB:/* 0 *$Z9RP#BU ?BEDE$I7=!]R^:0<?F>T-4S&]'*'Q# M*_^*A1=6LWT>#J_3 X+=^&3T]&QU%&+_%QXBH,ZB0!-U5;X**U73^"0!W](# M\H'"J_L'.FJXO3KS[ZCM @GYV/1KU?1+,RXSYX3W5FS9T_@D@DR _*!PJO[ M!SIDN+TZ\^^HPGB ^-Z#8'0,6/R(1J)"X-@>& 2#?GV>>B]UJ'HNAWZXNH!& M_YO5\0GJ!BZC>]-%N @QXX1:*H+SY@S_L>2M4HT9L45F P &,((8\VWU)M#_ M5(#E-KZ%?@G7]=P+Y\8$"2@&I>-'C48)940+<"%1=V$[^0:+5D5$=T2*#_-\ MK)A3(*%"YMH=< .(A]O'C1AU=%^$8JR&Q %]_P97-I?E +IZE=P8H!C:.0 MAEG<_D>#_X6X[L7% #?_E-7/N4)]1OXL?*^8I,8"@[$0C5+,?Z" @@T ?;F( M@[JZ;)E"_JZ]9_HYQYA81CFV'+E2Q;FF'(&'F441J(U#2)N!O6',4B,!I87# M$A_X^YO&L)ENHE*@W[$GWIT3'"G 18@+R(+.>,:,3UGX4%G^4UGR65GI7EG1 M*%G5$5G)\Y '6*)A6)9H6HQW6(! 6/A+6,U862DL6RTY61X&4178G0.V /; M /B O7R<:4^5J-P%B#SUCWV%CKWUC.J5DQAE$K09P"T ("T (!10(!1 (! M3 (!>0 !20 !50(!-0 !(P ![ !\0 !$ !#@ !-0 !' !#@(!= (!&@(! M% !,P()',O'=3_3Y9QXV",%9*6;9J^;?+>92''!FR]ZF5:16(V= (D '( M ', V_:[Q&.>PPCLH2?TH3"?Q#>9FT7OO5+KHA.=Q%@S;<;B77!TYP=?C.]V #:V4- end SHAR_EOF fi # end of overwriting check if test -f 'Mpatch' then echo shar: will not over-write existing file "'Mpatch'" else cat << \SHAR_EOF > 'Mpatch' begin 666 Mpatch M M M " ( 0 M? M M ' M M M M M M M M M M M M M M M M M M M ";HT :)P'54RF)\](!?^@P -65BNC 6@X"I@1V ->!MT1U'X.A(.*'!?8 MF]7>B1GY L/_BPZ8GT8;=<1_ABU\@+EPA!SH>R/^'^11;0CLN7*% >BU)0 MWPJYY5<- ,/_H9.&H!]$&W9=@MEUS'N_&(LE #?"KGE5PT P^.AOX;C1;\) M>Z-\:K$ !MV.* #,?4*$((M L<$'?3+C1X@P]QEEVT\ 1O8 "@ M "63KB']^X!76B)@(N?"7CG?D$8=7:790.N\@ SBD;">_Z8^3OJ-7R@;_<7 M Y3>;K%S68MVN H FE=6*__=TRO_$@[8 \:-4D2AC@^?_,\&=T,[:C@&@NG' MQ8 ( /=VL ]T(_[QZRC-N!6*S;S5=LWD8?P A""&,(:_@+BC@]!7#9//N,=N M#>4B 5F*@8O( 4W2AJ"(0(C&>(R53'<%18M$Q'S/3*'QU$>^!O<89'MZ#DZ. MFTE1U3-K0T(.3XB;23%K6UH.38F;$PEK$%&("VF'40!" ]HYB$ ZQ6+CT#N) MVCP 0K+=662+VQ(UR=!X !0ST%2^/;4TTV+M)XBIY\#-^PFEJ@1X@D22;2 M;C5KT'-B]UE\Z?NO1WY5D=)S8O=9?!T" \*<TG)B]ZR%LH?A1;&G_H#Y..HJ M?-3W]X;!9&>@)P&9+P"X * $ ^AB)^Q<!=_;#6UB0WQ1 MZJ'^DJ "J^4K\ MS>#+?781.H 6RX+; ,Q["WUFFXV);'+]HWH#'</% H0PB+<(X6I_;RITE,U# MB)D '@&9S0 #7T$+_F?_(FN#8-L?BWW6$]\,.[N#7IR( 4>#J!97')C;H^%= MC=9UKL3_*VSK(H/^%RL!W3D/;OJY0(/5C:\-#_=CH*OZ!SNOU/CWK[ATB89B M6/!3U&"M1W:/Z'&6_JO[5^;G1O]&A4]<+7S!'*%"_DU#BXW$W2^F$5X(_T:+ M3@6S?X!ZHD+^S@?F1O^+U:ST@'MN=H+;?;BZ@#3_G-7Q"##VT6WW 4%F HDM M<N[__+.@ H.)$-&FC@)6_9X*. :!> 1T@'7?">^N+: W,T#^?"%8(""(3"4R M0/A\)KO!B;$8 "#@@ WPJY_O8_-H!VA22&H*C=2A9 H(,@F4>#_P;_#4+% M??QEZL#=W0<61B@$>V719OZXA<3SJ @FD_W#+V[. !'@]3YK8Y]_O@N=)!U MX?2%JT)F#L6 N=F! O^N?4!T:'WV>B-Z0@"X]7L_N'I >@0#>.<"BC/X*)P> MIE^'1A-XXID/_UG+=*+]!,?9F6>QFV6_FW^XFYG$%"+,5-ST>\^!XIH \P M@ M@ L@ FP !H@ )^,G+;!R= 9$ : 4( "4#)Q2W961:@6PJN67FR M47)_G0"2 "? !W N=R<8PTEHTV5@MI5@:KU@5M5@.OEA]F%AAGEI=:EA( M;EI'=UBT>UBM2EJ84UJ/7EJ#*UKZ/UC\#EK@&5KD\%LY^ULJQE,@!IP![0 ! M^@ !F !@P !M@(!D ( > 5@ (K,O'O"I;J#%;K#A9FCQ;GP-;BPI9C^!9 MA>=;Z_-;YO5;VL%;U<93PQF<K-N[Q$&>PW#LH5;VH6>?Q!&;DV0D>O7D?0( 2"5@Z'08&$A4-W@ $M5A<GD$ end SHAR_EOF fi # end of overwriting check if test -f 'Spatch' then echo shar: will not over-write existing file "'Spatch'" else cat << \SHAR_EOF > 'Spatch' begin 666 Spatch M M M !@ ^ $ 'P M M M !P M M M M M M M M M M M M M M M M M M FZ-6 M &B<!U5,IB?/2'?_H.%5*O:*T0OL(('8ZUX$W1'4?@Z$@XH<%]B;U=R)&?L" MP_^+#IB?1AMUQ'^&+WR N7"$'.A[(_X?Y%%M".RY<H4!Z+4E #?"KGE5PT MP_^ADX:@'T0;=EV"V77,>[\8BR4 -\*N>57#0##XZ&_AN-%OPE[HWQJL0 & MW8XH ,Q]0H0@BT"QP0=],N-'B##W&67;3P!&]@ * )9.N(?W M[@%=:(F BY\)>.=^01AU=I=E Z[R #.*1L)[_ICY.^HU?*!O]Q<#G-YNL7M9 MBP2X"E>^*__=TRO_$@[8 \:/4D2AC ^?_,\&=T,[:C@&@NG'Q8 & /=VO@]T M(_[QZRC-N!6*S;S5=LWD8?P A""&,(:_@+BC@]!7#9//N,=N#>4B 5F*@8O( M 4W2AJ"(0(C&>(R53'<%18M$Q'S/3*'QU$>^!O<89'MZ#DZ.FTE1U3-K0T(. M3XB;23%K6UH.38F;$PEK$%&("VF'40!" ]HYB$ ZQ6+CT#N)VCP 0K+=662+ MVQ(UR=!X !0ST%2^/;4TTV+M)XBIY\#-^PFEJ@1X@D22;2;C5KT'-B]UE\ MZ?NO1WY5D=)S8O=9?!T" \*<TG)B]ZR%LH?A1;&G_H#Y..HJ?-3W]X;!9&>@ M)P&9+P"X * $ ^AB)^Q<!=_;#6UB0WQ1 MZJ'^DJ "J^4K\S>#+?781.H 6 MRX+; ,Q["WUFFXV);'+]HWH#'</% H0PB+<(X6I_;RITE,U#B)D '@&9S0 # M7T,+_F?_(FN#8-L?BWW6&]\,.[N#7NR( 1#5U+:Z;G9;BZ/>/1?W&9/\Z\J# M_A<K =TY#V[ZN4"#U8VO#0_W8Z"K^@<[K]3X]Z^X=(F$8ECR4]1@K4=VC^AQ MEOZK^U>4YT9\@@:@J,(.+YR) 'WU@@DZD]Z/#N[_1H5.!;-_@'JB0O[.!^9& M_XO5K/2 >VYV@MM]N+J -/^<U?$(,/C1;?D!068"B2UR[O_\LZ "@XD0T::. M E;]G@HX!H%X!'2 ==\)[ZXMH#<S0/Y\(5@@((A,)3) ^'PFN\&)L1@ (. M" #?"KG^]C\V@':%)(:@J-U*%D"@@R#K1X-\PGB/Q7WG?I&]W3%M/E"X _N! MCOZXA<3SJ @FD_W%+V[. !'@]3YK8Y]_O@N=)!UX?2%JT)F#L6 N=F! O^N M?4!T:'WV>B-Z0@"X]7L_N'I >@0#>.<"BC/X*)P>IE^'1A-XXID/_UG#(*+] M!,?7F6>'FV6%FW^.FYG.%"+:7 #">X?Y_)H G0 @@ B D !=0 !K !! MZ,F#8A2= 8\ :( 40 043)Q27=60ZD6P*R67&V&6ASG0"T ") !I $.5 MR<8TUEHHW5@AJ5@>LU@)N5@"@EAQG%AF8EI1;EA,<EJ[>UBH?UBA3EJ<5UJ# M(EJ'+UK^ UCP$EKD'5K8]%L]_ULNRALF&IP!]P !^ !G@ !C0 !L (!E@( M=@ 4 ! K,O'LBQ;KC-;HCI9F#Y;G05;B0Q9C>)9^^E;Z?5;Y/M;V,-;R\0; MPQN<W]F[Q#^>PW+LH53VH66?Q ^;VV0D>C3D<0( "5@Z'08&$A4-W '-5A #<GD$ end SHAR_EOF fi # end of overwriting check if test -f 'xorit.c' then echo shar: will not over-write existing file "'xorit.c'" else cat << \SHAR_EOF > 'xorit.c' #include <stdio.h> #define DEC(c) (((c) - ' ') & 077) #define xorit(ch) putchar((ch)^getc(orig)) main(argc, argv) int argc; char *argv[]; { int n; FILE *orig; char a, b, c, d; if (argc<3) { fprintf(stderr, "Usage: xorit <originalfile> <patchfile>\n"); exit(-1); } if ((orig=fopen(argv[1], "r")) == NULL) { perror(argv[1]); exit(1); } if (freopen(argv[2], "r", stdin) == NULL) { perror(argv[2]); exit(1); } if (scanf("begin %*o %*s ")) { fputs("xorit: bad uudecode input\n", stderr); exit(1); } while ((n=getchar()) != EOF && (n=DEC(n))!=0) { while (n>0) { a = DEC(getchar()); b = DEC(getchar()); c = DEC(getchar()); d = DEC(getchar()); if (n-- > 0) xorit(a << 2 | b >> 4); if (n-- > 0) xorit(b << 4 | c >> 2); if (n-- > 0) xorit(c << 6 | d); } if ( (n=getchar()) != '\n' ) { fputs("xorit: bad uudecode input\n", stderr); exit(1); } } exit(0); } SHAR_EOF fi # end of overwriting check set -e echo "Extracting the old [SML ]crypt.o from [SML ]libc..." ar x /lib/Slibcrypt.a Scrypt.o mv Scrypt.o ORIGScrypt.o ar x /lib/Mlibcrypt.a Mcrypt.o mv Mcrypt.o ORIGMcrypt.o ar x /lib/Llibcrypt.a Lcrypt.o mv Lcrypt.o ORIGLcrypt.o ar x /lib/386/Slibcrypt.a crypt.o mv crypt.o ORIGcrypt.o echo "Making the patch..." cc -o xorit xorit.c ./xorit ORIGScrypt.o Spatch > Scrypt.o ./xorit ORIGMcrypt.o Mpatch > Mcrypt.o ./xorit ORIGLcrypt.o Lpatch > Lcrypt.o ./xorit ORIGcrypt.o 386patch > crypt.o echo "Installing the new [SML ]crypt.o into [SML ]libc..." ar r /lib/Slibcrypt.a Scrypt.o mv Scrypt.o NEWScrypt.o cp ORIGScrypt.o /lib # Save a copy for future reference ar r /lib/Mlibcrypt.a Mcrypt.o mv Mcrypt.o NEWMcrypt.o cp ORIGMcrypt.o /lib # Save a copy for future reference ar r /lib/Llibcrypt.a Lcrypt.o mv Lcrypt.o NEWLcrypt.o cp ORIGLcrypt.o /lib # Save a copy for future reference ar r /lib/386/Slibcrypt.a crypt.o mv crypt.o NEWcrypt.o cp ORIGcrypt.o /lib/386 # Save a copy for future reference echo "Cleaning up..." rm xorit xorit.c Spatch Mpatch Lpatch 386patch echo "All done." # End of shell archive exit 0 -- [ Keith ] UUCP: {cbosgd, hplabs!hp-sdd, sdcsvax, nosc}!crash!portnoy!ag [Gabryelski] INET: ag@portnoy.cts.com ARPA: crash!portnoy!ag@nosc.mil