summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/des/cfb64ede.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/des/cfb64ede.c')
-rw-r--r--src/lib/libcrypto/des/cfb64ede.c36
1 files changed, 13 insertions, 23 deletions
diff --git a/src/lib/libcrypto/des/cfb64ede.c b/src/lib/libcrypto/des/cfb64ede.c
index 80b8a9eaaa..5362a551bf 100644
--- a/src/lib/libcrypto/des/cfb64ede.c
+++ b/src/lib/libcrypto/des/cfb64ede.c
@@ -63,14 +63,9 @@
63 * 64bit block we have used is contained in *num; 63 * 64bit block we have used is contained in *num;
64 */ 64 */
65 65
66void des_ede3_cfb64_encrypt(in, out, length, ks1,ks2,ks3, ivec, num, enc) 66void des_ede3_cfb64_encrypt(const unsigned char *in, unsigned char *out,
67unsigned char *in; 67 long length, des_key_schedule ks1, des_key_schedule ks2,
68unsigned char *out; 68 des_key_schedule ks3, des_cblock *ivec, int *num, int enc)
69long length;
70des_key_schedule ks1,ks2,ks3;
71des_cblock (*ivec);
72int *num;
73int enc;
74 { 69 {
75 register DES_LONG v0,v1; 70 register DES_LONG v0,v1;
76 register long l=length; 71 register long l=length;
@@ -78,7 +73,7 @@ int enc;
78 DES_LONG ti[2]; 73 DES_LONG ti[2];
79 unsigned char *iv,c,cc; 74 unsigned char *iv,c,cc;
80 75
81 iv=(unsigned char *)ivec; 76 iv=&(*ivec)[0];
82 if (enc) 77 if (enc)
83 { 78 {
84 while (l--) 79 while (l--)
@@ -90,14 +85,14 @@ int enc;
90 85
91 ti[0]=v0; 86 ti[0]=v0;
92 ti[1]=v1; 87 ti[1]=v1;
93 des_encrypt3((DES_LONG *)ti,ks1,ks2,ks3); 88 des_encrypt3(ti,ks1,ks2,ks3);
94 v0=ti[0]; 89 v0=ti[0];
95 v1=ti[1]; 90 v1=ti[1];
96 91
97 iv=(unsigned char *)ivec; 92 iv = &(*ivec)[0];
98 l2c(v0,iv); 93 l2c(v0,iv);
99 l2c(v1,iv); 94 l2c(v1,iv);
100 iv=(unsigned char *)ivec; 95 iv = &(*ivec)[0];
101 } 96 }
102 c= *(in++)^iv[n]; 97 c= *(in++)^iv[n];
103 *(out++)=c; 98 *(out++)=c;
@@ -116,14 +111,14 @@ int enc;
116 111
117 ti[0]=v0; 112 ti[0]=v0;
118 ti[1]=v1; 113 ti[1]=v1;
119 des_encrypt3((DES_LONG *)ti,ks1,ks2,ks3); 114 des_encrypt3(ti,ks1,ks2,ks3);
120 v0=ti[0]; 115 v0=ti[0];
121 v1=ti[1]; 116 v1=ti[1];
122 117
123 iv=(unsigned char *)ivec; 118 iv = &(*ivec)[0];
124 l2c(v0,iv); 119 l2c(v0,iv);
125 l2c(v1,iv); 120 l2c(v1,iv);
126 iv=(unsigned char *)ivec; 121 iv = &(*ivec)[0];
127 } 122 }
128 cc= *(in++); 123 cc= *(in++);
129 c=iv[n]; 124 c=iv[n];
@@ -137,14 +132,9 @@ int enc;
137 } 132 }
138 133
139#ifdef undef /* MACRO */ 134#ifdef undef /* MACRO */
140void des_ede2_cfb64_encrypt(in, out, length, ks1,ks2, ivec, num, enc) 135void des_ede2_cfb64_encrypt(unsigned char *in, unsigned char *out, long length,
141unsigned char *in; 136 des_key_schedule ks1, des_key_schedule ks2, des_cblock (*ivec),
142unsigned char *out; 137 int *num, int enc)
143long length;
144des_key_schedule ks1,ks2;
145des_cblock (*ivec);
146int *num;
147int enc;
148 { 138 {
149 des_ede3_cfb64_encrypt(in,out,length,ks1,ks2,ks1,ivec,num,enc); 139 des_ede3_cfb64_encrypt(in,out,length,ks1,ks2,ks1,ivec,num,enc);
150 } 140 }