HPSBUX9408-016 Advisory - md5 source code

HPSBUX9408-016 Advisory - md5 source code

Secure Home | Search | About
 General Computer Security    Post an article   get this group's latest topics as an RSS feed add this group's latest topics to your My MSN content add this group's latest topics to your My Yahoo content add this group's latest topics to your Google content
Subject Author Date
HPSBUX9408-016 Advisory - md5 source code Security Alert 12-02-2004
Posted by Security Alert on December 2, 2004, 10:51 am
If you were  Registered and logged in, you could reply and use other advanced thread options
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

-----------------------------------------------------------------
**REVISED 03**
Source: HEWLETT-PACKARD COMPANY
SECURITY BULLETIN: HPSBUX9408-016
Originally issued: 29 August 1994
Last Revised: 30 November 2004
-----------------------------------------------------------------
ANNOUNCEMENT: Patch check sums are now available.
PLATFORM: All HP-UX systems.
**REVISED 03**
MANUAL ACTIONS: No
-> This advisory is obsolete.

CHANGE SUMMARY: Revision 01 add MANUAL ACTIONS field
Revision 02 modify MANUAL ACTIONS field
Revision 03 modify MANUAL ACTIONS field,
add note that this advisory is
obsolete
-----------------------------------------------------------------
**REVISED 03**
-> The instructions in this advisory for obtaining the
-> md5 sums for patches are obsolete.
-> Please refer to HPSBUX01099 for current information:
-> http://www.itrc.hp.com/service/cki/
docDisplay.do?docId=HPSBUX01099
-> The md5 source in section VI below is still valid.

Contents
-------

I. Introduction
II. Sample of hp-ux_patch_sums file
III. How to get the hp-ux_patch_sums list and generate the sums
-> (deleted)IV. How to access support.mayfield.hp.com via ftp
-> (deleted)V. How to self-register an account on
support.mayfield.hp.com
VI. The md5.shar archive of the MD5 source and documentation
-> (deleted) VII. How to get patches and security bulletins


I. INTRODUCTION
---------------

A list of check sums for HP-UX patches is now available.
All HP-UX patches, not just those with security fixes, are summed
with the MD5 program and with "sum -p". The "sum -p" output is
the 32-bit cyclical redundancy check (CRC) algorithm used by
cksum(1).
These sums allow you to verify that the patches have not been
altered.


The MD5 message-digest algorithm takes as input a message of
arbitrary
length and produces as output a 128-bit "fingerprint" or "message
digest"
of the input.

Each time a patch changes an entry will be added to the sums file.
Each entry has the MD5 and sum(1) sums for the PHxx_nnnn,
PHxx_nnnn.text, and PHxx_nnnn.updt. The entry also has the date
when the patch was changed or created.

A patch may be changed for several reasons. For example, it may have
been issued for one revision of HP-UX and still be applicable to a
later revision. This is very common. Rather than issue an new
patch,
the customize script is changed to allow the patch to be installed on
the later revision. Normally if the actual contents of the files
(libraries, executables, etc.) change a new patch with a different
patch number is issued.

It is believed that it would be computationally infeasible to
generate an altered patch with the same MD5 and sum(1) values
as the original patch. However, HP does not guarantee this to
be the case. We believe that MD5 is a well known algorithm and
we have used the reference implementation to create the sums in
the hp-ux_patch_sums file.

Concerning the MD5 software RSA Data Security, Inc. says:

RSA Data Security, Inc. makes no representations concerning either
the merchantability of this software or the suitability of this
software for any particular purpose. It is provided "as is"
without express or implied warranty of any kind.

Hewlett-Packard Company also makes no representations concerning
either
the merchantability of this software or the suitability of this
software
for any particular purpose. It is provided "as is" without express or
implied warranty of any kind.


II. SAMPLE OF THE hp-ux_patch_sums FILE
--------------------------------------
Here is a sample of the beginning of the hp-ux_patch_sums file:


HP-UX Patch Checksum Information
Dated: 08/15/94 14:25:04


- ----------------------------------------------------------------------
- -------
Patch Date | Patch File | md5 output | sum -p
output

- ----------------------------------------------------------------------
- -------
| | |
Oct 6 1992| [PHNE_0100/PACHRDME/English]
|42E72F29A5B2E976F4ADEFA9FC855A21|1508933583 23781

|PHNE_0100.text|78CE1064F54A9D75B64A6467538C35BA|2439548508 3843

|PHNE_0100.updt|C5B93FB2AB08ADE9A78845B9E4CF4EF0|1766551480 30720
| | |
Jul 19 1991| [PHKL_0107/PACHRDME/English]
|0BED04E352ABFAED4D4ECB16394F48E7|1605114266 423853

|PHKL_0107.text|93E2F594D003BA4697B8D88DCCC9F36C|1767212502 5010
|PHKL_0107.updt|4D91D069D1783E29A0D526B0B9B644F2|678221130
296960

[rest of file deleted]


III. HOW TO GET THE LIST AND GENERATE THE SUMS
----------------------------------------------

1. How to get the list.

A. Send the following in the TEXT PORTION OF THE MESSAGE to
support@support.mayfield.hp.com (no Subject is required):

send hp-ux_patch_sums

OR

B. Use ftp to:
Name: support.mayfield.hp.com
Address: 192.6.148.1

cd export/patches
get hp-ux_patch_sums

Instructions for getting an account on support.mayfield.hp.com
are included below. NOTE that ftp access is often VERY MUCH
faster than e-mail access.

2. How to generate patch sums to compare with the list.

The MD5 program is included in source form below. The MD5 program
is from RSA Data Security, Inc. Please note their copyright
in the source files below. Basically you are free to use and
distribute the MD5 program as long as the copyright message is
included.

A. Extract the MD5 shar file from this note.

The following assumes you have edited the shar file into
md5.shar.

B. Unpack the source:

sh md5.shar

C. Make and test the md5 program:

make test

[You should see the following:]

cc -c -O -DMD=5 md5c.c
cc -c -O -DMD=5 mddriver.c
cc -o md5 md5c.o mddriver.o
./md5 -x | diff - test.rfc > diffs 2>&1
*** MD5 Test Passed
rm -f diffs

D. The following script unpacks a patch, computes the
sums, and finds any matches in the hp-ux_patch_sums
file. The script assumes that the patch and the
hp-ux_patch_sums file are both in the working
directory. It also assumes that md5 is installed
and can be reached via $PATH.

------------------
check_patch script
------------------
#!/bin/sh
sh $1
md5_sum=`md5 $1 | tr "[a-f]" "[A-F]" | cut -d" " -f4`
md5_sum_text=`md5 $1.text | tr "[a-f]" "[A-F]" | cut -d" " -f4`
md5_sum_updt=`md5 $1.updt | tr "[a-f]" "[A-F]" | cut -d" " -f4`
if [ -x /bin/cksum ]
then
sum_p=`cksum $1 | cut -d" " -f1,2`
sum_p_text=`cksum $1.text | cut -d" " -f1,2`
sum_p_updt=`cksum $1.updt | cut -d" " -f1,2`
grep "$md5_sum" hp-ux_patch_sums | grep "$sum_p"
grep "$md5_sum_text" hp-ux_patch_sums | grep "$sum_p_text"
grep "$md5_sum_updt" hp-ux_patch_sums | grep "$sum_p_updt"
else
echo "WARNING: No /bin/cksum. Using md5 outout only."
grep "$md5_sum" hp-ux_patch_sums
grep "$md5_sum_text" hp-ux_patch_sums
grep "$md5_sum_updt" hp-ux_patch_sums
fi
---------------------------
end of check_patch script
---------------------------

Check_patch should report one match for each
of the three patch files.

Here is an example of using the check_patch script:

check_patch [PHKL_4628/PACHRDME/English]

[The following is the output from check_patch]

x - PHKL_4628.text
x - PHKL_4628.updt [compressed]
Aug 10 1994| [PHKL_4628/PACHRDME/English]
|50379A6AC08297842766B86A4BB57644|3769858694 52974

|PHKL_4628.text|A3946FAE1649E6840A082468DE31F2E7|3596174542 3169
|PHKL_4628.updt|4230EB9D6637250F9300ACDA14D0C38B|457486715
71680


Here is another script that just reports if the patch sums
were found or not:

$ ./test_patch [PHKL_4628/PACHRDME/English]
Three matches found - ok.


$ more test_patch
#!/bin/sh
rm $1.text
rm $1.updt
number_found=`./check_patch $1 | grep "|$1" | wc -l`
if [ $number_found = 3 ]
then
echo "Three matches found - ok."
else
echo "Did not find three matches - problem."
fi

-> (deleted)IV. How to access support.mayfield.hp.com via ftp
-> (deleted)V. How to self-register an account on
support.mayfield.hp.com

VI. md5.shar
-----------



# This is a shell archive. Remove anything before this line,
# then unpack it by saving it in a file and typing "sh file".
#
#
# This archive contains:
# Makefile global.h
# md5-announcement.txt md5.1.txt
# md5.h md5c.c
# mddriver.c
#
# Error checking via wc(1) will be performed.
# Error checking via sum(1) will be performed.
# Files are compressed using compress(1).

LANG=""; export LANG
PATH=/bin:/usr/bin:$PATH; export PATH

if sum -r </dev/null >/dev/null 2>&1
then
sumopt='-r'
else
sumopt=''
fi

rm -f /tmp/uud$$
(echo "begin 666 /tmp/uud$$\n#;VL*n#6%@x\n \nend" | uudecode)
>/dev/null 2>&1
if [ X"`cat /tmp/uud$$ 2>&1`" = Xok ]
then
unpacker=uudecode
else
echo Compiling unpacker for non-ascii files
pwd=`pwd`; cd /tmp
cat >unpack$$.c <<'EOF'
#include <stdio.h>
#define C (*p++ - ' ' & 077)
main()
{
int n;
char buf[128], *p, a,b;

scanf("begin %o ", &n);
gets(buf);

if (freopen(buf, "w", stdout) == NULL) {
perror(buf);
exit(1);
}

while (gets(p=buf) && (n=C)) {
while (n>0) {
a = C;
if (n-- > 0) putchar(a << 2 | (b=C) >> 4);
if (n-- > 0) putchar(b << 4 | (a=C) >> 2);
if (n-- > 0) putchar(a << 6 | C);
}
}
exit(0);
}
EOF
cc -o unpack$$ unpack$$.c
rm unpack$$.c
cd $pwd
unpacker=/tmp/unpack$$
fi
rm -f /tmp/uud$$

echo x - Makefile '[compressed]'
$unpacker <<'@eof'
begin 600 Makefile
M'YV0(T!009-F#H@V8=:4,9.&31D08]ZT@=.PC$$Z:![.>5-'SIB'$<D\-/-&X
M#@B,#T5(F1($!)$P=,* F%)F3,<T=/*P )'$S1@7"@(V(5(#1!.+<\*<*=."X
M2)JE<^B ",+F3$F<:-J( !'&(,DZ;LB 2.,&A!0C0T#$F"$CA@L0 M' A/A&X
MY%B#$>'DD?,4#9TR9'0$#9I@R!N]?,_X!8%B2 JU.7+$:"%CY\J6+V/.K'DSX
MY\Z>/T$,D5,&)F#(DH&.2$"5#8C$?@V2GE-&CAW JH-N?H@2Q,:.'^G:)6DRX
M[]Z^4F?3X3N&3IHW;N;D#NCD#0@1"!4R=+BU( @X<M[822-2+-F3&<VB51W7X
M._2'=[J"N,.7SM^R8O* 4)*F#8@B;+#A'0IJ_ 7$1W+0X4))9SQ&'%UNW.9&X
MC%R5159$<I#6' AVA,%&'66PH-M&\VE4AE0XG62="#5LE1%I0 UA!!-!'#$%X
M"#V T,(37A(Q5 \U** B35PB.9/UI%H8AHH+JA F.,X66;9!2UYH('E7ABX
M;7*>Z2><@+[!X1ELO"&&D"Z@T6<-C<Y9IY=VDM#8E5E.B;?\KAPAAF[FDHX
M"(@JRJBC:$9*IYTM5'HIEEINFN=/H"KP5U1JYGF210K*80:H";3@P@MH>HD'X
M"'R 0$8:9ICAY:Y1N>"KG3XHRZP9!LG@@PDQS E$"\Q"*U4+!BW;K$$[H%<AX
M"#6A8=T)*L1K%%$"%3$%%2 8$4023!1!Q GICC&7N=BF6P8;M+$[AKL@P"OOX
M4$51P2L(4'1%&QD @\#0G'+XUX*S!,]A9D"W]OKK72<EM*X9X?D7!!QP5+CLX
ML46]X>Q9::W5%E E2_NK8 FT^R[$XOI6!TYEZ' ""-7V/.V<0C=,- HBB/!8X
MEV30$ ,9.(Q!1@XXF $##&+( ,-98 ]=F0XU&0&#C3(<$,92_O0-*\^ QOUX
M"5.+$(;57(( 0YTQW%"#&#F, 8,9,8AA0Q@XS!##&#-$5H8,-N1PPPV8VQ!#X
MX;_+ +JX>4-=NM2G8X>44@\M"Q4=K&N<@PV.:T[&#6.(<4,.,^"0IPPUA"&#X
M&9*'$0;CGI,!P_%._ZH\PWPWG[K7"RF6AAIKL-&&&X>)@QRB4@<[W $/>=!#X
M]2CW*S+,8'N>RX$,RD"#L0$/=S2X7IW"8(.YK44,\,/;Z/;6MR (80A$*((1X
MCH"$)"AA"4QH@A.> (4HK(0*5;#"%;"0!2W<;T;ZXY__ @' 1+0@ C4 PQBX
M((,9T* &'<1!#JI'AL+1('5@"][FOF:&\D$Q!I.3P1AR8 :MY8"+(12=_$A'X
MO[XQT8E0O($4E]C$)T;1=6^THQSQ6,<XSC&/?N0C'.](QT'NL9!ZG&/U:C WX
(\*E8(4/>TP!H X
X
end
@eof
uncompress <Makefile >/tmp/compress$$
mv /tmp/compress$$ Makefile
set `sum $sumopt <Makefile`; if test $1 -ne 34034
then
echo ERROR: Makefile checksum is $1 should be 34034
fi
set `wc -lwc <Makefile`
if test $1$2$3 != 422271625
then
echo ERROR: wc results of Makefile are $* should be 42 227
1625
fi

chmod 644 Makefile

echo x - global.h '[compressed]'
$unpacker <<'@eof'
begin 600 global.h
M'YV0+U2 .,+DB9 @3%P@ =$"A)0I0:04,0*"3AXX9>: "..&#(@Q;]S,H<.1X
MSAP%(%2* @( @H4IY0D9D%2I$I(.:@>5.'C4<Q97*6H5/Q#8B00=.8V=CQX
MJ!LV>4 HK8@F*,@V<-*P*2,G9QTX<-[(,8D2A)DZ;L;021-RHYPS==J4<4,4X
MCIPW=/!>3./FC L%5*J:?<.&S9L[?,^ :!-F3<:7,6=2J7D3!)DR9L+T))H7X
M! RI2],011-&HQN\&]G(*1.&3)ZR0.=:QLRWC$?$=-" &/+Q#5:M7,VR"7-FX
M#(@S<[FF&0,B+%\ZP2UB1*Y O^WF:,V1QAGL>30&:5VI,%YYYTFQ0W@"5<&@X
M#.K5II%[=-QAE!AYX >"AG)XI%)_%_VW5( #%IC33F-)11<($IHGPX,M1<@@X
M#16R=^%@=73%H8<@BKB2?]6!@"*!MH%@6%\N$A4C%330*%YD3WS!1!)34"&5X
M1M75YM%E&'64F%,@['0'=M!5E@:7M*D8AAAOV%'&7TF<*""3,#TW670L4"5;X
MGC-9B:66J]'1HTA^*KDF'7WB594<B,V1%!UE%7KHA6Z 4 96%BDZTG$C*K<4X
KH&E*1UV;09$J:)8HL+%H"IY2.D(9;$@Z79?LH;DJ%:V^"@(**70GIAD* +<4X
X
end
@eof
uncompress <global.h >/tmp/compress$$
mv /tmp/compress$$ global.h
set `sum $sumopt <global.h`; if test $1 -ne 1906
then
echo ERROR: global.h checksum is $1 should be 1906
fi
set `wc -lwc <global.h`
if test $1$2$3 != 30124781
then
echo ERROR: wc results of global.h are $* should be 30 124
781
fi

chmod 644 global.h

echo x - md5-announcement.txt '[compressed]'
$unpacker <<'@eof'
begin 600 md5-announcement.txt
M'YV0"1* :$*D!H@6+4 X*7-G8)DY<\*<*0."2)J)<^B ",+FS!LY:>B@::,@X
M( @0*(R4*<,&A!DY*T'0>0."3)J,(,74H4/13!TY(LO(2:% @90I02J&H1,&X
MQ)0R8WZ&S /B)H@P;MR\J>-F3!HW9P869'$5A!N&(-H\C#BQA4V,&L-T_!ARX
MI L%3-*LH4B0!EF15N5Z!"FR3=4Y(,24^1H6#ILP8\J0J>I&)AJ*<.J(89-FX
M3,TW;<)\=?G1)<PR"B:>E2,71)TY9>XJH')9K$'!= L?+HNS#-B@9R?;$3HGX
MS9O*;\R(I>'B9!*-:,(@-K-5C@(Y6]V00?PU8YDPDY-;/DT6Z^2O8S["^;CTX
M&W0@=IQE?!%!PU5S$6;724:45@8>8;3A6!DL*! 499G%-49D$($ QU(\R8$?X
M>W!$V48:>O!'G7RAX7%D'8:! 488=LB%U1B7*5"&&68XZ,())YQ$&T7@V13EX
MD.GAQQ2%B&%)Y):AD4$15VG$40=%HWT')PC>P<'DCUA=18:?][6F*!R^*=H5X
M1>))B@:E/,'1GY-PT&?<:_U1%%U^12K0IV2R[0D;"'!BA1&O8;R6H4$S$4DIX
M: Q%I]$<;+QQAU"69=I7<R!<0=%#7K:GHK*V@7!'&@S*E <<G<G%!E5R<'65X
M&%MI%$,-+<P 0PF4-ONL?"))JR%9GX;*6'_;4J3H&:?)1-,=:'1VZHK#R5'<X
M<18JUY>/DQ%DD*%:(M?ED6#B.EMM5,*$(55AB,PN@F]L_&682SI)\'<ULBI4X
M9!1*A)I-= KE6V0XS@$JKB<%H;&7'0M'G)3B6;QJ4U-PI< 4,\HQQA102IGNX
MC4NMVRX(..0 PA+B)$'3W.\ %N@9,AV!1I46?S#26N#2]&SGYD%'PAK:-60X
M38YVML:YI,DW1QV38J6 FA*]#%$:PR&N:'%GN$&MM5>RF661E/[4ZDW;VBX
MSRM-]BV"""NL .2T_CO[1<%15FRK;Y"!>H74*FV5FA,??RIL2RG&1H5XVOJCX
M2*^5AUA3(5,4:.9M_BGP0]"3957[O8<4QF8]E<8:N610P*>:E8<)T4$VS]G-X
MBB[G&XV(YRA)(<)2F 85J= A<#015K=&$Q+$4,]Z8["2>120$?.4;$?=X0EXX
M$K2<VU$$)A&:T&3RY<"?\.HU,U&+PT"@&J&8*P\"I,GP2H0BU[BA03&*#Z36X
MAYR&(8PE7P*+68I7.B<E[ R7,=W/ I@T#5%K""E+@WO$LR*EX<9#;;!?5]A0X
M!YM(L2DPJ1-,1J6 (YW(@$N1TFB&4!Z1L4DTC^&?:4#CI C-R UYH!8*GM PX
M#"D@"102REGH0)8\; 58_GG16BQC%3*\(2IXC-*%Q.:CXQ1P*X@Q A6@8+#KX
@1,0%$:+8> E*_\:T5FD)N,-/."-I"A!B[PY!A<0!2C X
X
end
@eof
uncompress <md5-announcement.txt >/tmp/compress$$
mv /tmp/compress$$ md5-announcement.txt
set `sum $sumopt <md5-announcement.txt`; if test $1 -ne 60901
then
echo ERROR: md5-announcement.txt checksum is $1 should be
60901
fi
set `wc -lwc <md5-announcement.txt`
if test $1$2$3 != 373181898
then
echo ERROR: wc results of md5-announcement.txt are $* should be 37
318 1898
fi

chmod 644 md5-announcement.txt

echo x - md5.1.txt '[compressed]'
$unpacker <<'@eof'
begin 600 md5.1.txt
M'YV0"@(V(5(#18P4(!(J7,AP894I1:2 &/*D29,@3HA,:<BQX\""!P,&=!*DX
M21$%#-N0J0&B!8@Q8=B,J<,F#)TR(,* :%-FSIPP9\JT(),FZ!PZ(,RD<1-4X
M#APY2Y&B&(.FS)@U<^JT09CTC1R4"W4J95,FX)0L3IY F9)D"EB%*EEN:8F4X
M3TL\(.RV$D'*M.=.0=1.&)XHY"+L$)%)DRA I2:!02?+$R=N$<4'0";.FX
M9\XY();"J8-4)T^?0'&^,9-3CI@T?</(R9-P\!DZ:!*&<4,FX=,W+2Z#(%-GX
MN8N$29"F 3WFC1LU5NG4D5.F-VZ;H<D'VDMOM,&<36G8%Q,;>0BWE!EEA#%'X
M&F*0E1 =;_@FQQO$&:?9'1F&EQIH:(1AQU)GJ(?33SSMU)-X93%$E%%TL-"=X
M>>^!0,5Z'^7$QAE>P89&&Z&!%E629/0GG!E>D6?D9FR ,.$9A.G'7TYPP,%&X
M&C#1D: ;<]AX1U5[ZE23'..-A=-.=1PEG!B/BE"?@?SYU!]W[.EFIU7[X=3&X
M;FY@!P*E<.Y)*8H@)#G&;'#<1(9P=YB9$PA/'6D33H=9Q1\="'5&6QV\F:K3X
M:!4"VH*P";V:1ZQOS)''466T(5Q65"'W!0)2;#O%MD&X$)!:DU7F%D-?X@0GX
M88A!>M2I..&&4TT3OR$&?F/0 9I]*@8,Y4*C\@;"GZ6**]Q>1_F58JYN>'PKX
M559AI55RK%E<Y)%)?M<RBB*HS% +2,E!+&@ZB5&'8'2TT*^@+?:51DQ"+]0"X
M7D83>JO23#NMY$T3S_%J&K%6K9##A95Q&$(PRZP3S5=EU<;:77D78;;IZ>SHX
M'"I#5 0(03 QQ1/7:F50"@$Q)(410S@W@PPQ#-?3V)2JJ62;FPD6\D RV#@0X
M#3;NUEN86,(XLD);3AP3F5#AU@;? 04QQ!)I7<%$$40<481)3E!Q[D)?SH?KX
MAF?(45B:N-9D7&]/KX?LGV,,5V 8_:::%'\X!56JP(M^^IM$DQ11 @$&&3X
(3E. VGH>X@)D X
X
end
@eof
uncompress <md5.1.txt >/tmp/compress$$
mv /tmp/compress$$ md5.1.txt
set `sum $sumopt <md5.1.txt`; if test $1 -ne 34374
then
echo ERROR: md5.1.txt checksum is $1 should be 34374
fi
set `wc -lwc <md5.1.txt`
if test $1$2$3 != 482011420
then
echo ERROR: wc results of md5.1.txt are $* should be 48 201
1420
fi

chmod 644 md5.1.txt

echo x - md5.h '[compressed]'
$unpacker <<'@eof'
begin 600 md5.h
M'YV0+U2 :$*DA@LD(%J 0%,F#)DR<D"82<.FC,0W$0G6&.)BB (0*EXH4! 0X
MQ) W</+(27,&#1T0*(:D !$C1XX8+62P "%E2A 01,+0"0-B2IDQ=5;2R;,SX
MB9LQ+DS*:4BG#!F:-F-$#<*&C8*5+>G, 3%U#D0[5EV,9))F3!DW9D'0>0-BX
M#,H\(,*XN5HG+ATT:<;.>6.&SITP4T$$!G%&CMZJ5^'(>6,GS<.K?X4JIJ-@X
ML>6W=-),M)IW[%^+(GK^##JTZ-&D:98V?1I5X\ R<^:$.5.F!1&6N#ES/8,QX
M-IHV(A2[R=L51!NA$-.$8>,<=)HW;M*X.0,"(]DR9B"^':.=^]_%@PL?GJK X
M^_FQ9NH\#8U=K0*V;N%:7#Q],&/';D F%UW/K6&17GS%]=!*=@B5!EH@W('1X
M&F-)1MEG9"B0V4MSU#$&&A%..!9B^ST4H&AID!;&6"(L^"!I9DS6AEP,\>03X
M4$*%H8!12"G%% A.03500;?EMEMOO_$VQTO#%?<7<LHQ1]US5:TTG0)M6(==X
M=F/9]11$V6T'0AG&0:1AC5G*\>%C88A!46QX$48C>H091F*7-%K486R13KI4X
M=V9<.H<"Z6F:F!G>Z847'(B%AA0;B($ 1U)PO&%65$F\M)B%E5T&@@@K*C:'X
M" K<8=P;=;Q4!AY\YL9I&FW P4:*:"(&X*B6N@K"&MJ181#,65IZRX.=?7X
M2V)8--50VI&F75YNX&47'"F.U6V]ML9*JJD*D/$&4ED&^.=R"+[@7:KKE:$6X
M2"*1))!M@E:%!QU1A:1A'G!8!1X(2\KAX4M[? 1"%4DX004-( ]5U18T=+$#X
M"#37;//-..><<TE+0@=3$$(,0<1,&M.,LLHLVR4?'5O((+/.);E11QOM1F2IX
MI&+MU,8;9-3!!ETR>&$#RRBP,8<8$J4AQY)$BT2S?'.PY 9ICT8D1AUF@+G%X
MV$_K[/?. FEW*[MX@PFQ GT,6<,70U"!Q0XCV?&&98H[%1L(4$CQ!!5/?,%$X
M$E-0 1,*&C'N.$@II "YY)1K5 4<9/B<^>:=?QZZR2B07I#I6("T$]QRTXU&X
MK2K\#E?P5VE'1^JK3WZ51D9H-QWFFG/N.>BBYP[\&7-?53<(6@0Q<[E=YXX
%[RHPKP#P X
X
end
@eof
uncompress <md5.h >/tmp/compress$$
mv /tmp/compress$$ md5.h
set `sum $sumopt <md5.h`; if test $1 -ne 26957
then
echo ERROR: md5.h checksum is $1 should be 26957
fi
set `wc -lwc <md5.h`
if test $1$2$3 != 362011350
then
echo ERROR: wc results of md5.h are $* should be 36 201 1350
fi

chmod 644 md5.h

echo x - md5c.c '[compressed]'
$unpacker <<'@eof'
begin 600 md5c.c
M'YV0+U2 :$*DQA 70T"T "%E2A 01,+0"0-B2IDQ=>2DH9.'!8@D;L:X$BPX
M!H@V9>;,"7.F3 LR:5K.H0,B#)LS;S320=-& 0@5+Q0H" ABR!LX>32>04,3X
MQ9 4(&+DR!&CA0R/#1]&G%CQ8L:-'3^&=%%43AF)9<A$G1J#;! V;!0H93H'X
MA-DY9>382>M"*),T8\JXP0N"SAL08X[FJ>E&;1W".]/4G?/&#)T[8<R"D SBX
MC)PP;NBD!0%'SAL[:<B,WBEQ,QT%G%,+II/&3)K18>KN+ -"1%:($BE:Q*@SX
M+$B1 PL.3+FR90LB,5.^?HM3)TF]W4A'L2K4:;)V>G>>,FC9LS('+:+6,FX
MK^ QYM%'GESY<N8R"M3/!V&F3DC:Y/6EP%^!#<8;9S91UMEGH:UV6!MAK,$;X
M:(X1III&=DB4QEX@W)'3&G65=IIL9"C &DUSU#$&&AU^6-=]FZD66FVWJ95;X
M;Q=N.)H9IK51&!J\_;95& H,]Q5''AU'5DG+J<222]#)1!-U.6UT77;;L=&=X
M:-_%A=*,Y,67GASKM6=62&+N!D*.>ZGEH1QK""AD<%T1!U:28W4G85UN'&96X
M:2G-IB%Y=2464E[EG0="&5;F92*0X<FQ(F@3B9$&&V"E9\:/G%%F&6::Z0=IX
MBAN%82FF'&G*Z1P*>&J?9F:H!]IB<&1&&T9L9$9:1G"\@1=92=#$F8BHJ::6X
M"#=*)H("=UCY1ATTE8$'H"J-N5D;<& Z&J@,IEH98XNM81X9 E(!)&%]WIK2X
M28_1) 9O9DUDWFCF@8O84;?5]>VLI-FJZGP*D/$&1E].!*!V%+Z@GJN@EM'7X
M3T$I,()Y8[!1AVJ]G<'&&V+8Y (:RTX<DL48B] &&35\O.Q0 ADUV$2AU14KX
MTB,$S731-( @0]19+SUT13(<78/46W\-0@YHCSV%#%;'0$/;1,O0M0PPT%W1X
M#$?/'?;4>S]MM-Y3S!"W#83/</<,A--P-.)_;TV#X'E'[C8-<9]M.=$TW!V#X
M4#-I. 8(=KR16G(UV P:SCGY"(443U#QQ!=,)#$%%2"@@$(523A!1==;T-"%X
M1_[-$=/0:DU*YA8V")]""CNT:C!@I)NN5A$AO8'QZ['/7OOM/N6.0O''CZ;\X
M3Q[Q[GO7*A _6/EJF4?'\]&'?FOUIQ-QD?:\<2\[[;:C0OATI[[?H0$Y#L#X
M\A"#!EVU#X'O4R"]0D,_Z8D.?VHIR1=0TH8Q( 4$_O-> ,4'A2?TC@I%D()'X
M2GC"%+K/>!*,'P6A9\'[E>YT&N0@7F@20@#>CH0F])T+LT.'%\*/B!6L(?42X
MN,#S02$(1"!"[X[ /.&!H <@V$/X8( '',# (U\$01C'",8RBM&,9#RC&M/(X
MFFBF8;'9/Z\Y_Q#,9G0=E<(5& !X^$10]0T1TGH6*"W.7A>2#@@_C\@ =2X
MY@Z4S]/;$3CI28^ 4GRC!$$I40#+5(KOE+K,G1]@F0*](8&6(/AD*'/I!5-"X
MI9F\C*4FDX!,9?[RF>)KI2]1,,SG%9.0L*-"$%!(NR(8 7>F,=BZ\ "-K"'X
M)MJQ%!WF@$F]A7.<12CG.9'IAF7FD@<\R%T_H:)*W6G3!S[(W0QDT (4##26X
MA#2"(4%P!$2" E(\ B%/M)(.MPL9X,:#'_4L[/&U"4&'KD*"&:@T<: @ 9]X
MD<(;ID>>S4RF#+7ZC&CXTZ.:D $F!RO,80"UE]"L)S'8@E9(ZZE)B:(@#!X1X
M^R#+64(5!%)%3%6OZA&MUH2K652L6!N+Q2.<-:VY8VONW#K6N+:6KNN[:QCRX
M*EK&_C5V^-0G8<5ZV,1*=K2.10%D%0L"RFH2HT^-ZE0W"P*L>G:V7:WM6+&HX
M2-VA5:VJ10%K&^M:[L+V=[*E[6]MRQ#<!G:PXC-L[A +/>F2]K'ME6QQ]98$X
M:EXVLU1=$V>SNM7HCG>Z'SDM=E&KW;=V=ZX%M"M>X\M7OY97G.<]9WH)S-[(X
M-OB]PF7P9(5"%":99R-IL$D:]+!4$ BA#&<PSXNTPZ2CY"6D'KF#3L1$D:'=X
MX5X-P@,=ZGG##!8$)!M)+7E$H^-B:G (5,#"3PQ%9#KH58]0CK*4ITSE*D>9X
M*$R6%DU^ID4]9EG'+?!!8OQ#ARW H M7Q'&3PSSFT&PA!FC&(@RBIT>B,.$-X
M85 +A%(\N@_31L0D#JJA0A>SOOS,RT/6<ICM5P8SQUF,>+#!#6A0 [C!( 9TX
M]0Q<'0,8++0&-+B!#:)'64(R20P;&\,:$ B'4>_4Q3JU)%E<1ALWU&%=H$%=X
M>)SD')A(*7S0AC%I3!,8E= X74 B$TJXS1MD#VP-+75,LS6DJ-V$#]4\MA[JX
MJC#OG:[UUD7,#AR@Y1'S#)P.3!",D0OR!20K606H?K*5)T[Q*F,9X!!3 !/-X
MUT RJ<#@T))XQ4=^98& W%W)7O;/-BY#8;GAX EW@\A)#F6BN/,\.U'5R3&;X
M\HQW&8(P7*#\-E/PQDC+(SE%N& &6>>6O2&I.[5V&]Y%IF^)(0^BJ4L;M >"X
MYF5<C^.25IK'%T&A4U!WJ&;SL]QA @=*6NY.(,C$##\!&%W\[FC=2IKBIYX
MUN70F]D4V@&N=C([&L/?M>O)8PX"@,*]F% .* 'KFH+%"Z;Q 9U!+#6-ZS:7X
M,#FKB=;Y19MU"Y\TOC(>LAVF ,#7)G>6UXX/L%A[A6?1)SDL0P>1$CX@ME *X
M*3!!VGT@ACJ8P4Q;T/WP<L="(8+_Y$BW5<QIB+K?LTX./OHWZ56-EJD2GOSFX
M9R:S-S/0EV;5)W.;P5TV8#4!%7UZE0;OU3R0IT<U\U&M(V3[EVO]ITLGEWY=X
M,'NZEV9S%CZ4I4=EP 9XX1,0*&>Q1"$(!YL1X0\F&*LG. EWW;EP=AA0+MX
MAT+@)W[_5W[GEQ?I9W1XL'X\&$0^&'X=F ;#$S[1UP)I0$/%UF'*(32 5F+8X
M0P8KIFWKUAPNX6W2D1YP\&('$V,S5F] $CYJ\H5/LB;1,1.+! )ZD!>FHP=IX
M BGXYA,_TV.H8P3F 1[:%8<!AVK%Q'(,I"MB.!-O9@-=,',T)V5$X88M 8=2X
MDG%'EF1+!G"0&(F>>'&DYW/A@XCGXW=;@ ./.(IE-T$NIQI852MD$',M*!!3X
M<!)<USR&UHO9X8ICAXCR<U?ZMV:F9WAM]W::%TQR9P;TUR^Q>'E8A (A&%#2X
M"!4_D#O2J!#9*"U0H0.YXS0P8(^ZEXXE@7=H@8%-MD)0)$5.8%&P.'^S" )!X
M =EZ%(W=P8Y)USLD1.\ 8LP<1Y0<8,%(9#^AFI1-8P@@(R91A138!B:P6A8X
MLHA;AHV_R#^K18C$"(Z,YA$Q8 /)2!1:8(<CQAMXZTP2'F 5('<XWA@X,[X
MY'WNEP(BJ4;&4X??@@(0!W 55(4"<6RY03T>M3I&*6T@8'\Y,QGJA%FY,1HUX
MY6[*5D_V0SU^6(%>>8$H<),\]V[%E&!9M6K"$SVDV'%UJ6Q5E(H_AY<4@46=X
M=F91E6:=!F=3I9BKUFI5Y9AHL06[=E6-F(KAHS_ R!O(I);PUG5VU9 RY1]JX
M<32 )U&+I5R:I5_-M05BM'Y%@U*01@;"%@9A$&PFJ8Q1%9%;:I5&JF5]XX
MX)J,V30J!6HX, 8W( 8W$(]Z111/<YJ^F5]651.J.9Q> YM5 T9X8#=X<P,PX
M0 ;#1116(YV/M5RL>5G869E-0P/<.08Q( :S5@;TV5Y$P3[8B)K)A5GH69W8X
M*3P>$9O<:08U< -C -F$ ;H^)P"81+F^9O6R9^KB9TUH)W'B0>X:: V( -]X
MQ:!=QYOZ29W *:'8Z8@!NIV0%@8X, ,P0 ,V4#7V*1 W **^B5_,I9ZN>0/:X
MZ9Z09@9DX*(Y4 .7%J,E2:.I*:$BVIHEJ9VRR44V &LP &MDD)M$D0-&"J'WX
MA9[8F0,6RIVQUCEF< ,*2J2]=J5)FJ6MV6O:R5(]>GX$*@9B$ -D:IKY6:/]X
M.:+#:30[ZJ5!*FK+609D&IUU>J0VRIIY"IE-TZ21)@8Y<&E.(P-D6IZ#BJ7!X
M:9E5TZ4]2@:P=@-2H7D>*C=F>J/7^68 VC1LRD5A(&DY@#DX *B?ZJ"36JC5X
MB:,Q4*$GRJ-<1 ,Y( 8T ,X4#9D.HT_XQ-$,9HN):CA4U&$>J=*6IQOHZAFX
M\*)E( /2"*F?.J. IZR4BJ26V76P^37OV:(P( :* P-DB@.\J:UG.JIZ&J!PX
MPYTR8 ,U4 8U$ 8U(*>?:J79:EK"Q:PX^IKNBJMX4 :[:@/*:9M$BC?IRJ]HX
MFJ04^JV*2@8;:@:]5@-NY:%EL["K-:*%FJ>(238J!6EVXSB4YJFZJ3;[FEJBX
M0*4"83<:NY\]JZ1<ZJZ*6C9E$ .B5K,)"ZL[N[$1VK&D^JT7.@:& YY$JY,8X
M*ZS8J*XKFUGK^:TP:P8T@#+AB0,WD+#8FK8\ZZ_=BHH!RYV45J]RDQ8)BZXIX
MZ[3,FJ?L^:S<&08Y4 8S0+ P4 ,)JZ]XR[4-VZV(^C87:@:!D:!&J[0KU8^%X
MNZXLBS1NRYV29@-F ,RH*E$RC=-^[2TFKEVXZ5DP*$TD+0=JIL+E7%V)Q#&X
MJA8ZJT<8M:RKZ9^NZ;*% ZWG%P8SL*K6RKO#>U'5-:N5JJ1\&SA>>@.<&JTWX
M^[KX&3[%NU9K:ZG.:CBHJZD2^ZBOJ[7$6UVR:ZE JS@#JAHU, ->1%ODB;;BX
M6UV7:ZC$"9M\L[@T\"YGT3FO>[?]:[G7^Y\"?*$%K!JTQKBO2[C8.+ZDR[8YX
M*L!O:P-P6L V8*X>^KR\.;[QFZ8?6S@"^RYB<+3**<*ZV:LE[+_7B[R7&J #X
M++*EQIP78;8Q3*<+O*U>"[#:"VEG,;,R< ,)2J23,\,JFYZCNE(<S)T_RAXLX
MB@.2ZZ&8X]>KP^ZZTXS*.01@,X<+-D$+E,'+[O:[P.ZYI1NS<1FP,_>L;/X
MRN2[T,S*UIFKD+Q9TU*YY30:],S+]K3+Y0S+*U.L60%@,)FL2T!KK!QL4GX
MC)U\++!C0 .S)8WRRL06+!1-QQ!KIQ9JS%%LS%S8F<*.,Z"3DP-?@\!:3+GAX
M4U]Y/,0Z&J"3X[<+I:!FD -UZZ%"RINR;,C6B\A BSF+RZB3,P-AT,NZ>:_ X
MW$A=3+H/:\L"R[DYH,R^)GN^C*QZ%,S_:\.9F\J0)J\U( 8UD -B2Z3W^\RSX
MK*6NF;BW#&DXL+IC4,^LK,ZC',P9;*FH_+;M<7[!=K'-?,?!/,D!3,U>6@,XX
M0&D_A;-$48^ Y\TUO+>P*<Y.FJ!T6P8TL*#-K,#=#,W#[+6);,N;.ZV!80-EX
M ,,/W<D?_<0AW:TF6A'&G*(L*C=$YK-#,LM'<TKB[@5+; TD-(W&P,S2Z0AX
MS,Z&Z*6LS0VIPS< -E\*M&#<0[_=(3^F;.&L]<))_*; 9PDZN:%(O<]*X
M&LXPRZ&T>;MP:M336]!Z"[4_[<=B@ ,V4+148=3A&SZ'F7I8% :9MIA\C5E_X
M_9B!/0:#/9F[]EYDT) ]:1H_F56"83Q#>2!N\)4!TGS8J)1ET!1)^'TI@%5AX
M%)5E,)6M1(4<)A QJ1IUL7.K1T2'QT<'"YTY>9D0)NH1)U8'PW9U/A0Q%MX
M4 =L0!O9PAO? E-\&!1M.3I^F-J<"=L'5W3/W4X*IW&KF#Q^J0+.'7(*@)<?X
MUWI.1MU!QXK2+7,*\'/<:%1IX!%JP'L$Z(XBJ-XBJ%=JT'CC_8"A!]^.95?7X
MYXRQ#2U;H :/1G;A;=VU[8[>[8'FB ?G1W_9769JL )PMHW5G8ARX(U-B&9OX
MAXP)ON!TUN#_O0*M)N$#3N$6?N!.Z'8)E9-QI^ +ZA,>_N")W8ZT7>&Z<^$HX
M[C7Z74I<Q.$D&$BG#1'[H]H"]XP"?D3* Q7R\]K0(MNK=]LIHMN7)QF]S2[!X
MG0;#K2K&G7')C4% OIFYT^#037#C?9=U]1,-SI<3?C[=?7!H/N)#=W/18]X3X
M/G3I#0+K[<DC12;N+6?PS8)V3M]POAGW_>?Y#7D>?N+MN'H=". $A4L)QGH'X
M]^%P!A6.I^%\T'VB].B+#N(?B'E1H9/;-'FQM>F[1ND!93>F34A.,%-EH(]2X
M#G]CK@ ]F$+\S>;0KH32?G)M?D1OOG3EK8INCM[LK1Y[+D8/".A+)^@K8.C,X
M7F:(/N3LGHI8"0*K+AJN#NNSQ1LB0.MO8.L=8B5Y22&9T>MML)3!GGQI0.S'X
M;>Q<KME- >:D8Q/7YA$W5TS1+@73KMU#ER$64P;9'D-$5-_=KD?G+2SAKN<KX
=2.X)&%"!G@:A!WEH=]TIT. I@.#M>.0:?VW$I@#9 X
X
end
@eof
uncompress <md5c.c >/tmp/compress$$
mv /tmp/compress$$ md5c.c
set `sum $sumopt <md5c.c`; if test $1 -ne 29320
then
echo ERROR: md5c.c checksum is $1 should be 29320
fi
set `wc -lwc <md5c.c`
if test $1$2$3 != 333190210423
then
echo ERROR: wc results of md5c.c are $* should be 333 1902
10423
fi

chmod 644 md5c.c

echo x - mddriver.c '[compressed]'
$unpacker <<'@eof'
begin 600 mddriver.c
M'YV0+U2 :$*$B)0D5HI(<3$$1 L0=,K,H0."C)PT=LK( 6'FS4:",E@,)$(#X
M1!@W9$;64 !"Q0L%"@*"&/(&3IZ+9]!01#$D!8@8.7+ :!$2A)0I04 0"4,GX
M#(@I9<;4N4@GC\@D;L:XF"FG#-,R*8$*W1J$#1L%.'7. =%UCL:,9%S /)ITX
M:=.G4:>FJ7HUZ]8V8=9(!.'F#=LR<-J6<=.43IHW;M:.@3Q&HYLT;LZ *+,7X
MC48%=#R#:*-Q#)J33<6D8;,W#X@W9B"B2;-V#FPZ=\)T?;TQ=!D0<^KL#:.:X
M==77L4/35F#;#&[=OSMN/.D:CF['4MGH!@%G*IPW;K<FH4B;NYPW=M*0 0M"X
M1)BUM$4HN-/Y31V*9? DEKC6(X@T;<#!&GNYR2$':J[!9I(;KJV!65PP4>&9X
M6X2]@=U@;=0Q$0AB_-954YBQA]F"KDT&1QJ#*4@==]<A)]MR9+PA%6F,,?68X
M&PN2)_S3W7E5PMO1230!)&]X99;]"7V6B!#4901668$48=;%!$AV$$U?!?X
M;'N!<-I:A5$4!AM=A4&&:QTNQA*49H28$GVAS03"9 &NIA%'VITQ!Y N*3!"X
M&F:@%.5(?J[7IAN_/9FEGXN1 2A,?V;%1AWK@<##1(Z^X0(:/OB)V1B35LJ#X
M8Z1MVFFDH%+ZVZ5T7)29J9Y*JFI[9[#QAAAC;BK?G[$]V4,/(,@0:ZJ5BM &X
M&3+HRBA*C_(Z$@B_@D##L*'^9BP9-"@[0J/- OILM"NA6FU[Q]:@+;=FP"03X
M$XN=$:>"$6THAJUCK"&2&W6TT>%&$I$T;PRKK$G2WV.8&B((%!1Q!14?"$$X
M$T\,L<073!3AQ$\P9%QHE @KS+##$$O\Q1!/5.$$%1AKS%QC:8P!@AUOJ#?2X
M%*UBIAD44CQ!Q1,4)$P""B@8-IV*J20P@XKV^@RS#(31 6 95!QT9@@X*PSX
MSTSXC'+03)-A--(3*?URS"DY[>PD54=<X[]_PSUV1_G31V8S=-A!%VKGVUX
MVUL+?=I&11\]=\MUEWWW:A%M9'7;6;^-0M=RATUWUR-!X2I%BV.M-= HU!%9X
M&F<@FM+0&VT1@PU=R.UIKT1 "ZRP!G.,Z$@C4X'%2#+4CL7&AR9*!%9=@@0\X
M';PC3% 5<)#Q%>[(*Q]1\;,3A+<;5(,T_9C+.IJNL[X".VWLO=,^A.TCT: [X
M]+X/7_[PZ(_4_/($T?#^\^ ;?SCU;)1__5G;,KN]M]T#0;@.%CTBZ$XEYZM?X
M =67)?8IT'?S\UT-(M@^Z6&F>D2HP?ZR]Z@A#20,([((1C0B%P4$00YGR-=BX
MZ+ 6% &3;]9$9U40SW'0"8%.EA3"^8P$5=IYB&..H._:E.SS.B0(B!(HA(?X
M(@?/K854OZD9]I+8 CPHI,=")$_ 6<,5P$#L1+8IO8L)@PD,8A%0'=$#EBX
MIS6AH#"(\@D5TRC$B1#Q),J30THPTYTP]@DS% ',B%"@FS.,022%M$,*% !(X
MDZ!P#$@C74L2N84N(&T/:VID&I"6R=@0\I$@\,%/%LD1_Z @#=#ZR0[^8RE'X
M&G*5:5C!"DB91&]]\@QVV$(:NK %&'3!=2 X00M. (3F,"5N=REZ7X9K1/,X
MX02T5")!:.9#H%%RER!80; $IRL(%"MNSA& )D310FLPLB$4$+Z" "GT0+X
M!M%,HM.@)K4T4 T%W$RB-\'I27&2\Y;G3&<5VPE,>*Y)FD2@PMG2]AM\(JV;X
MWRS#0>5Y.#*6$Y>Z3-U#-Q-1EEBP2G=R*$R2^*&IX @%\$1:']0E$"*HT8XFX
M 4X1-8-'\P#RB:)I"Y7HP*>72(YPE)OF3('60YLM4I(J*&IF+KDF@AQP,HS)X
M#QTVZD30B6Y.?Z.COTR'.JI^+G0B8@P(R(@C8/60K$2=J>":^KO+[,0$4(T(X
M'NB0S^,E;WDH@"MDY$H'D2CU#"(A:UWO=\@^DLD>HWJ7->:Q,0 TI,B($@)X
M4H("+HB@!'.PK#O;(Q*"^%6M&R6(Y1J) L-.))^.90QDN>"&=JJ4I0/Q2G#:X
M(ILH0@TBAC$M13S6L(=%;&(D,QG*> NRWU+,8BT00QZ>ET2 U6M@01K<TL@VX
MDJ>1II[W7"0F*?K4O4IUHU#\ GY08MTR?/8ZY?7J'*S*'DDZ=PU;(*YO158QX
M)Z!3JQ/AJB775%6P[E&LFQRI357+$A1$E@B3A<AMI<B&K;BTCHY94H(GF]SEX
M_N:]:W&!AD7062*P8$WR#=G$ZBN2$!LWN"=C+ AD,CQ[LD8/%Z;7&J(K1E.BX
M$E@P@&4K34Q?B\%2EJ1\;T93V;FO7I5T*3AE,4$ SR8P0PJE@G-6@1%P+TDX
MB5 $F@G")@<ZE#?*+7WIOV2\ECY15'UYC:M4\RD=H-V8R3KF0<(6UEL1CZQDX
MSFNCO@SI =,!LA6!3!E8Z]HUI?;30!/!@[D(K%)3=+1B+:V847NYU;JAO*DLX
M 1M2XA:HDB&SK14)"FR5F21O&FH[;$J7OYS/@!Q4($+XS1B@8P8JR88IFR$OX
MLKGLY=N6)TP@@/%Y@)1$@:! "'703)NL:(;SM,$HA N"H.1@&S>(Y")C ,()X
M'=,CACRA"2Z(IID]G:Y43P$.96 /L'2=$N7&ZP6]A@P92/WA) X;,F=( 8]'X
M;+&6 (W8&=_XG87[@J =FS3)1B_4?!("'(/@!T [>1E2ONR5ZR &<ENI!U<-X
M4Z=TQ0P:64QE@,-0%_UU+34]-4X]))&=0K=//YVNW10Z$;3MI:':-76M4RW9X
ME,2+(L&YN@XH/A(5"[6:!G;US(9JX#"H_>PV2S5QQO!V(E S[@8F#0_#($3\X
MLG.P=U]2VP!D/E) UJ6 ,;VE 8.,2!WG2H@QWN@(<\Z*'N@3]#@440!"$,X
M@0A%,,(1D) $)2R!"4UPPA.@$(6C4*$*5K@"%K*@A;D;?C:)7WSC'SR5/>X
M\C"(@0QF0(,:V. &.,@!YF>Z>>$3W_C(%XKSBW_\Y =_^-2/_O6?7WVA<$$!X
MTX>^]</?_>UG?_S8%[]02JUSF?"<A3$=8PQ1XNFE'R8X5>JI= LW$KQ9% 7RX
M1SVD<519I0(!:$9EP%1)9 1)4#$M(7^A94#C<SN.ME&-1%;JQ5ZCDU5B4 =/X
MIA&F P,R0 /WI5OZU6FV!(!Y RP=@7 G=8"DD4YR( ;MY$[ X@15P 1,0$JGX
M!6EF "K@T5!D"&D]R'4(1EF8M5D<-A)C:"<"J(0/)5J74X<0QDV!:&"DED\KX
MU7YA!F'V%S8HH1O_U4<Y4G^U=7\[I7]1QW\?E3A DW7<-8%S@H=3E4EBA8'\X
M963MQ8%M"(*G4X)B=H("]H1N]6>PF$]4F#?#MABIU&Y>H86Y^(9?^!,V\%F.X
MX@9EZ#YWI39I!HMLR(6!%8<1J&BR!F%WJ%B/]HM$ &L[H5NT]EBI5HFOY4'HX
MB'2CP1]\]QNZ]1\XXAEX8"91 2"Y0C ^Q3)29SCH"(G^LDC]=61998*[J( @X
@D)!A11Z=UF9*AF-Q!HUZQH-;9V E(()X<(@FN$N"LU+^ X
X
end
@eof
uncompress <mddriver.c >/tmp/compress$$
mv /tmp/compress$$ mddriver.c
set `sum $sumopt <mddriver.c`; if test $1 -ne 64081
then
echo ERROR: mddriver.c checksum is $1 should be 64081
fi
set `wc -lwc <mddriver.c`
if test $1$2$3 != 2317005002
then
echo ERROR: wc results of mddriver.c are $* should be 231 700
5002
fi

chmod 644 mddriver.c

rm -f /tmp/unpack$$
exit 0


-> (deleted) VII. How to get patches and security bulletins


SUPPORT: For further information, contact HP Services support
channel.

SUBSCRIBE: To initiate a subscription to receive future HP
Security Bulletins via Email:
http://h30046.www3.hp.com/driverAlertProfile.php?regioncode
=NA&langcode=USENG&jumpid=in_SC-GEN__driverITRC&topiccode=ITRC
On the web page:
Driver and Support Alerts/Notifications Sign-up: Product Selection
Under Step1: your products
1. Select product category:
- a minimum of servers must be selected.
2. Select product family or search:
- a minimum of one product must be selected.
3. Add a product:
- a minimum of one product must be added.
In Step 2: your operating system(s)
- check ALL operating systems for which alerts are required.
Complete the form and Save.

To update an existing subscription:
http://h30046.www3.hp.com/subSignIn.php
Log in on the web page Subscriber's choice for Business: sign-in.
On the Web page: Subscriber's Choice: your profile summary
- use Edit Profile to update appropriate sections.

Note: In addition to the individual alerts/notifications for the
selected operating systems/products, subscribers will
automatically receive one copy of alerts for non-operating system
categories (i.e., a subscriber who signs up for all six operating
system alerts will only receive one copy of all the non-operating
system alerts).



HP-UX SPECIFIC SECURITY BULLETINS*:
The HP-UX Security Patch Matrix is available here:
http://itrc.hp.com/service/cki/docDisplay.do?
docId=hpuxSecurityMatrix
Or via anonymous ftp:
ftp://ftp.itrc.hp.com/export/patches/hp-ux_patch_matrix/

The HP-UX Security Patch Matrix, updated daily, categorizes
security patches by platform/OS release, and by Bulletin topic.
The Security Patch Check tool completely automates the process of
reviewing the Security Patch Matrix for HP-UX 11.XX Versions.

NOTE: Installing patches listed in the Security Patch Matrix will
completely implement the RESOLUTION in the Security Bulletin
_only_ if there are no MANUAL ACTIONS included.

The Security Patch Check tool can also verify that a Security
Bulletin RESOLUTION has been implemented on HP-UX 11.XX Versions
provided that no MANUAL ACTIONS were included.

For information on the Security Patch Check tool, see:
http://www.software.hp.com/cgi-bin/swdepot_parser.cgi/cgi/
displayProductInfo.pl?productNumber=B6834AA

REPORT: To report a potential security vulnerability with any HP
supported product, send Email to: security-alert@hp.com. It is
strongly recommended that security related information being
communicated to HP be encrypted using PGP, especially exploit
information. To obtain the security-alert PGP key please send an
e-mail message to security-alert@hp.com with the Subject of
'get key' (no quotes).

System management and security procedures must be reviewed
frequently to maintain system integrity. HP is continually
reviewing and enhancing the security features of software products
to provide customers with current secure solutions.

"HP is broadly distributing this Security Bulletin in order to
bring to the attention of users of the affected HP products the
important security information contained in this Bulletin. HP
recommends that all users determine the applicability of this
information to their individual situations and take appropriate
action. HP does not warrant that this information is necessarily
accurate or complete for all user situations and, consequently,
HP will not be responsible for any damages resulting from user's
use or disregard of the information provided in this Bulletin.
To the extent permitted by law, HP disclaims all warranties,
either express or implied, including the warranties of
merchantability and fitness for a particular purpose, title
and non-infringement."

(c)Copyright 2004 Hewlett-Packard Development Company, L.P.
Hewlett-Packard Company shall not be liable for technical or
editorial errors or omissions contained herein. The information
provided is provided "as is" without warranty of any kind. To the
extent permitted by law, neither HP or its affiliates,
subcontractors or suppliers will be liable for incidental, special
or consequential damages including downtime cost; lost profits;
damages relating to the procurement of substitute products or
services; or damages for loss of data, or software restoration.
The information in this document is subject to change without
notice. Hewlett-Packard Company and the names of Hewlett-Packard
products referenced herein are trademarks of Hewlett-Packard
Company in the United States and other countries. Other product
and company names mentioned herein may be trademarks of their
respective owners.

-----BEGIN PGP SIGNATURE-----
Version: PGP 8.1

iQA/AwUBQazTXeAfOvwtKn1ZEQJm+gCgmsLZlHp1zkeVbAfLqmGeoGosUXIAni6b
WcyJh0BZXa9zjUGgqNsOlREv
=16tq
-----END PGP SIGNATURE-----



--
Yours truly,
HP S/W Security Team
WTEC Cupertino, California


Return-Path: secure@cup.hp.com
Reply-to: security-alert@hp.com


Similar ThreadsPosted
WEP source code? December 18, 2005, 3:43 pm
Oracle security advisory 67 is released June 13, 2004, 9:30 pm
SSRT4877 rev.0 HP-UX ADVISORY md5 sums are available for downloaded software December 2, 2004, 10:53 am
App source of IP sent? July 5, 2004, 9:19 am
Source routed packet generator September 14, 2005, 3:21 am
Re: Open-source bug hunt results posted March 11, 2006, 4:23 pm
Open source implementation of the SEED algorithm? February 24, 2007, 12:27 am
Open source two-factor authentication system released September 1, 2005, 9:23 am
Software writers spot open source in Sony BMG CDs November 20, 2005, 4:00 pm
Advice for minimal password security on an open source app February 27, 2007, 10:34 am

The site map in XML format XML site map

Contact Us | Privacy Policy