Commit | Line | Data |
---|---|---|
2d77217b GS |
1 | You need the GNU `patch' utility to apply this patch. Get: |
2 | ||
3 | ftp://fractal.mta.ca/pub/crypto/SSLeay/DES/libdes-3.06.tar.gz | |
4 | ||
5 | Uncompress it somewhere, and use the command line: | |
6 | ||
7 | patch -p1 -N < this_file | |
8 | ||
9 | to apply the patch. Move the fcrypt.c file to the win32 subdirectory | |
10 | of the Perl source distribution. | |
11 | ||
12 | --- libdes-3.06/fcrypt.c.dist Tue Aug 4 18:41:49 1998 | |
13 | +++ libdes-3.06/fcrypt.c Tue Aug 4 18:42:03 1998 | |
14 | @@ -325,12 +325,15 @@ | |
15 | ||
16 | static char shifts2[16]={0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0}; | |
17 | ||
18 | -static int body(); | |
19 | -static int des_set_key(); | |
20 | +static int body( | |
21 | + unsigned long *out0, | |
22 | + unsigned long *out1, | |
23 | + des_key_schedule ks, | |
24 | + unsigned long Eswap0, | |
25 | + unsigned long Eswap1); | |
26 | ||
27 | -static int des_set_key(key,schedule) | |
28 | -des_cblock *key; | |
29 | -des_key_schedule schedule; | |
30 | +static int | |
31 | +des_set_key(des_cblock *key, des_key_schedule schedule) | |
32 | { | |
33 | register unsigned long c,d,t,s; | |
34 | register unsigned char *in; | |
35 | @@ -460,16 +463,14 @@ | |
36 | 0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7A | |
37 | }; | |
38 | ||
39 | -char *crypt(buf,salt) | |
40 | -char *buf; | |
41 | -char *salt; | |
42 | +char * | |
43 | +des_fcrypt(const char *buf, const char *salt, char *buff) | |
44 | { | |
45 | unsigned int i,j,x,y; | |
46 | unsigned long Eswap0=0,Eswap1=0; | |
47 | unsigned long out[2],ll; | |
48 | des_cblock key; | |
49 | des_key_schedule ks; | |
50 | - static unsigned char buff[20]; | |
51 | unsigned char bb[9]; | |
52 | unsigned char *b=bb; | |
53 | unsigned char c,u; | |
54 | @@ -521,13 +522,15 @@ | |
55 | buff[i]=cov_2char[c]; | |
56 | } | |
57 | buff[13]='\0'; | |
58 | - return((char *)buff); | |
59 | + return buff; | |
60 | } | |
61 | ||
62 | -static int body(out0,out1,ks,Eswap0,Eswap1) | |
63 | -unsigned long *out0,*out1; | |
64 | -des_key_schedule *ks; | |
65 | -unsigned long Eswap0,Eswap1; | |
66 | +static int | |
67 | +body( unsigned long *out0, | |
68 | + unsigned long *out1, | |
69 | + des_key_schedule ks, | |
70 | + unsigned long Eswap0, | |
71 | + unsigned long Eswap1) | |
72 | { | |
73 | register unsigned long l,r,t,u,v; | |
74 | #ifdef ALT_ECB | |
75 | End of Patch. |