home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / perl560.zip / win32 / des_fcrypt.patch < prev    next >
Text File  |  1999-07-20  |  2KB  |  76 lines

  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.
  76.