Make all configuration macros available for application by making
[openssl.git] / crypto / des / ede_cbcm_enc.c
index caaf6daccec624a47d1d0efec0f670c5a2c36cd8..127aee00bad86f12fe7a6e71209117b7dfed1ea3 100644 (file)
@@ -68,18 +68,13 @@ http://www.cs.technion.ac.il/users/wwwb/cgi-bin/tr-get.cgi/1998/CS/CS0928.ps.gz
 
 */
 
+#ifndef OPENSSL_NO_DESCBCM
 #include "des_locl.h"
 
-void des_ede3_cbcm_encrypt(in, out, length, ks1, ks2, ks3, ivec1, ivec2, enc)
-const unsigned char *in;
-unsigned char *out;
-long length;
-des_key_schedule ks1;
-des_key_schedule ks2;
-des_key_schedule ks3;
-des_cblock ivec1;
-des_cblock ivec2;
-int enc;
+void des_ede3_cbcm_encrypt(const unsigned char *in, unsigned char *out,
+            long length, des_key_schedule ks1, des_key_schedule ks2,
+            des_key_schedule ks3, des_cblock *ivec1, des_cblock *ivec2,
+            int enc)
     {
     register DES_LONG tin0,tin1;
     register DES_LONG tout0,tout1,xor0,xor1,m0,m1;
@@ -87,8 +82,8 @@ int enc;
     DES_LONG tin[2];
     unsigned char *iv1,*iv2;
 
-    iv1=ivec1;
-    iv2=ivec2;
+    iv1 = &(*ivec1)[0];
+    iv2 = &(*ivec2)[0];
 
     if (enc)
        {
@@ -131,11 +126,11 @@ int enc;
            l2c(tout0,out);
            l2c(tout1,out);
            }
-       iv1=ivec1;
+       iv1=&(*ivec1)[0];
        l2c(m0,iv1);
        l2c(m1,iv1);
 
-       iv2=ivec2;
+       iv2=&(*ivec2)[0];
        l2c(tout0,iv2);
        l2c(tout1,iv2);
        }
@@ -188,14 +183,15 @@ int enc;
            xor1=t1;
            }
 
-       iv1=ivec1;
+       iv1=&(*ivec1)[0];
        l2c(m0,iv1);
        l2c(m1,iv1);
 
-       iv2=ivec2;
+       iv2=&(*ivec2)[0];
        l2c(xor0,iv2);
        l2c(xor1,iv2);
        }
     tin0=tin1=tout0=tout1=xor0=xor1=0;
     tin[0]=tin[1]=0;
     }
+#endif