Redundant now as it's moved to ./Makefile.org.
[openssl.git] / crypto / des / enc_read.c
index a33e2496b467e9817829bf5385bc8ea8979f6f64..c70fb686b8b02b26815fd950279f9b39493eae60 100644 (file)
 
 /* This has some uglies in it but it works - even over sockets. */
 /*extern int errno;*/
-int des_rw_mode=DES_PCBC_MODE;
+OPENSSL_IMPLEMENT_GLOBAL(int,DES_rw_mode)=DES_PCBC_MODE;
 
 
 /*
  * WARNINGS:
  *
- *  -  The data format used by des_enc_write() and des_enc_read()
+ *  -  The data format used by DES_enc_write() and DES_enc_read()
  *     has a cryptographic weakness: When asked to write more
- *     than MAXWRITE bytes, des_enc_write will split the data
+ *     than MAXWRITE bytes, DES_enc_write will split the data
  *     into several chunks that are all encrypted
  *     using the same IV.  So don't use these functions unless you
  *     are sure you know what you do (in which case you might
@@ -84,8 +84,8 @@ int des_rw_mode=DES_PCBC_MODE;
  */
 
 
-int des_enc_read(int fd, char *buf, int len, des_key_schedule sched,
-            des_cblock iv)
+int DES_enc_read(int fd, void *buf, int len, DES_key_schedule *sched,
+                DES_cblock *iv)
        {
        /* data to be unencrypted */
        int net_num=0;
@@ -93,27 +93,27 @@ int des_enc_read(int fd, char *buf, int len, des_key_schedule sched,
        /* extra unencrypted data 
         * for when a block of 100 comes in but is des_read one byte at
         * a time. */
-       static char *unnet=NULL;
+       static unsigned char *unnet=NULL;
        static int unnet_start=0;
        static int unnet_left=0;
-       static char *tmpbuf=NULL;
+       static unsigned char *tmpbuf=NULL;
        int i;
        long num=0,rnum;
        unsigned char *p;
 
        if (tmpbuf == NULL)
                {
-               tmpbuf=(char *)Malloc(BSIZE);
+               tmpbuf=OPENSSL_malloc(BSIZE);
                if (tmpbuf == NULL) return(-1);
                }
        if (net == NULL)
                {
-               net=(unsigned char *)Malloc(BSIZE);
+               net=OPENSSL_malloc(BSIZE);
                if (net == NULL) return(-1);
                }
        if (unnet == NULL)
                {
-               unnet=(char *)Malloc(BSIZE);
+               unnet=OPENSSL_malloc(BSIZE);
                if (unnet == NULL) return(-1);
                }
        /* left over data from last decrypt */
@@ -125,7 +125,7 @@ int des_enc_read(int fd, char *buf, int len, des_key_schedule sched,
                         * with the number of bytes we have - should always
                         * check the return value */
                        memcpy(buf,&(unnet[unnet_start]),
-                               (unsigned int)unnet_left);
+                              unnet_left);
                        /* eay 26/08/92 I had the next 2 lines
                         * reversed :-( */
                        i=unnet_left;
@@ -133,7 +133,7 @@ int des_enc_read(int fd, char *buf, int len, des_key_schedule sched,
                        }
                else
                        {
-                       memcpy(buf,&(unnet[unnet_start]),(unsigned int)len);
+                       memcpy(buf,&(unnet[unnet_start]),len);
                        unnet_start+=len;
                        unnet_left-=len;
                        i=len;
@@ -147,7 +147,7 @@ int des_enc_read(int fd, char *buf, int len, des_key_schedule sched,
        /* first - get the length */
        while (net_num < HDRSIZE) 
                {
-               i=read(fd,&(net[net_num]),(unsigned int)HDRSIZE-net_num);
+               i=read(fd,(void *)&(net[net_num]),HDRSIZE-net_num);
 #ifdef EINTR
                if ((i == -1) && (errno == EINTR)) continue;
 #endif
@@ -169,7 +169,7 @@ int des_enc_read(int fd, char *buf, int len, des_key_schedule sched,
        net_num=0;
        while (net_num < rnum)
                {
-               i=read(fd,&(net[net_num]),(unsigned int)rnum-net_num);
+               i=read(fd,(void *)&(net[net_num]),rnum-net_num);
 #ifdef EINTR
                if ((i == -1) && (errno == EINTR)) continue;
 #endif
@@ -180,13 +180,13 @@ int des_enc_read(int fd, char *buf, int len, des_key_schedule sched,
        /* Check if there will be data left over. */
        if (len < num)
                {
-               if (des_rw_mode & DES_PCBC_MODE)
-                       des_pcbc_encrypt(net,unnet,num,sched,iv,DES_DECRYPT);
+               if (DES_rw_mode & DES_PCBC_MODE)
+                       DES_pcbc_encrypt(net,unnet,num,sched,iv,DES_DECRYPT);
                else
-                       des_cbc_encrypt(net,unnet,num,sched,iv,DES_DECRYPT);
-               memcpy(buf,unnet,(unsigned int)len);
+                       DES_cbc_encrypt(net,unnet,num,sched,iv,DES_DECRYPT);
+               memcpy(buf,unnet,len);
                unnet_start=len;
-               unnet_left=(int)num-len;
+               unnet_left=num-len;
 
                /* The following line is done because we return num
                 * as the number of bytes read. */
@@ -202,27 +202,27 @@ int des_enc_read(int fd, char *buf, int len, des_key_schedule sched,
                if (len < rnum)
                        {
 
-                       if (des_rw_mode & DES_PCBC_MODE)
-                               des_pcbc_encrypt(net,tmpbuf,num,sched,iv,
+                       if (DES_rw_mode & DES_PCBC_MODE)
+                               DES_pcbc_encrypt(net,tmpbuf,num,sched,iv,
                                                 DES_DECRYPT);
                        else
-                               des_cbc_encrypt(net,tmpbuf,num,sched,iv,
+                               DES_cbc_encrypt(net,tmpbuf,num,sched,iv,
                                                DES_DECRYPT);
 
                        /* eay 26/08/92 fix a bug that returned more
                         * bytes than you asked for (returned len bytes :-( */
-                       memcpy(buf,tmpbuf,(unsigned int)num);
+                       memcpy(buf,tmpbuf,num);
                        }
                else
                        {
-                       if (des_rw_mode & DES_PCBC_MODE)
-                               des_pcbc_encrypt(net,buf,num,sched,iv,
+                       if (DES_rw_mode & DES_PCBC_MODE)
+                               DES_pcbc_encrypt(net,buf,num,sched,iv,
                                                 DES_DECRYPT);
                        else
-                               des_cbc_encrypt(net,buf,num,sched,iv,
+                               DES_cbc_encrypt(net,buf,num,sched,iv,
                                                DES_DECRYPT);
                        }
                }
-       return((int)num);
+       return num;
        }