3838*/
3939int ccm_memory (int cipher ,
4040 const unsigned char * key , unsigned long keylen ,
41- symmetric_key * uskey ,
41+ symmetric_ECB * uskey ,
4242 const unsigned char * nonce , unsigned long noncelen ,
4343 const unsigned char * header , unsigned long headerlen ,
4444 unsigned char * pt , unsigned long ptlen ,
@@ -48,7 +48,7 @@ int ccm_memory(int cipher,
4848{
4949 unsigned char PAD [16 ], ctr [16 ], CTRPAD [16 ], ptTag [16 ], b , * pt_real ;
5050 unsigned char * pt_work = NULL ;
51- symmetric_key * skey ;
51+ symmetric_ECB * skey ;
5252 int err ;
5353 unsigned long len , L , x , y , z , CTRlen ;
5454
@@ -89,7 +89,7 @@ int ccm_memory(int cipher,
8989 if (cipher_descriptor [cipher ].accel_ccm_memory != NULL ) {
9090 return cipher_descriptor [cipher ].accel_ccm_memory (
9191 key , keylen ,
92- uskey ,
92+ & uskey -> key ,
9393 nonce , noncelen ,
9494 header , headerlen ,
9595 pt , ptlen ,
@@ -123,7 +123,7 @@ int ccm_memory(int cipher,
123123 }
124124
125125 /* initialize the cipher */
126- if ((err = cipher_descriptor [ cipher ]. setup ( key , keylen , 0 , skey )) != CRYPT_OK ) {
126+ if ((err = ecb_start ( cipher , key , keylen , 0 , skey )) != CRYPT_OK ) {
127127 XFREE (skey );
128128 return err ;
129129 }
@@ -169,7 +169,7 @@ int ccm_memory(int cipher,
169169 }
170170
171171 /* encrypt PAD */
172- if ((err = cipher_descriptor [ cipher ]. ecb_encrypt (PAD , PAD , skey )) != CRYPT_OK ) {
172+ if ((err = ecb_encrypt_block (PAD , PAD , skey )) != CRYPT_OK ) {
173173 goto error ;
174174 }
175175
@@ -194,7 +194,7 @@ int ccm_memory(int cipher,
194194 for (y = 0 ; y < headerlen ; y ++ ) {
195195 if (x == 16 ) {
196196 /* full block so let's encrypt it */
197- if ((err = cipher_descriptor [ cipher ]. ecb_encrypt (PAD , PAD , skey )) != CRYPT_OK ) {
197+ if ((err = ecb_encrypt_block (PAD , PAD , skey )) != CRYPT_OK ) {
198198 goto error ;
199199 }
200200 x = 0 ;
@@ -203,7 +203,7 @@ int ccm_memory(int cipher,
203203 }
204204
205205 /* remainder */
206- if ((err = cipher_descriptor [ cipher ]. ecb_encrypt (PAD , PAD , skey )) != CRYPT_OK ) {
206+ if ((err = ecb_encrypt_block (PAD , PAD , skey )) != CRYPT_OK ) {
207207 goto error ;
208208 }
209209 }
@@ -238,7 +238,7 @@ int ccm_memory(int cipher,
238238 ctr [z ] = (ctr [z ] + 1 ) & 255 ;
239239 if (ctr [z ]) break ;
240240 }
241- if ((err = cipher_descriptor [ cipher ]. ecb_encrypt (ctr , CTRPAD , skey )) != CRYPT_OK ) {
241+ if ((err = ecb_encrypt_block (ctr , CTRPAD , skey )) != CRYPT_OK ) {
242242 goto error ;
243243 }
244244
@@ -247,7 +247,7 @@ int ccm_memory(int cipher,
247247 * (LTC_FAST_TYPE_PTR_CAST (& PAD [z ])) ^= * (LTC_FAST_TYPE_PTR_CAST (& pt [y + z ]));
248248 * (LTC_FAST_TYPE_PTR_CAST (& ct [y + z ])) = * (LTC_FAST_TYPE_PTR_CAST (& pt [y + z ])) ^ * (LTC_FAST_TYPE_PTR_CAST (& CTRPAD [z ]));
249249 }
250- if ((err = cipher_descriptor [ cipher ]. ecb_encrypt (PAD , PAD , skey )) != CRYPT_OK ) {
250+ if ((err = ecb_encrypt_block (PAD , PAD , skey )) != CRYPT_OK ) {
251251 goto error ;
252252 }
253253 }
@@ -258,7 +258,7 @@ int ccm_memory(int cipher,
258258 ctr [z ] = (ctr [z ] + 1 ) & 255 ;
259259 if (ctr [z ]) break ;
260260 }
261- if ((err = cipher_descriptor [ cipher ]. ecb_encrypt (ctr , CTRPAD , skey )) != CRYPT_OK ) {
261+ if ((err = ecb_encrypt_block (ctr , CTRPAD , skey )) != CRYPT_OK ) {
262262 goto error ;
263263 }
264264
@@ -267,7 +267,7 @@ int ccm_memory(int cipher,
267267 * (LTC_FAST_TYPE_PTR_CAST (& pt [y + z ])) = * (LTC_FAST_TYPE_PTR_CAST (& ct [y + z ])) ^ * (LTC_FAST_TYPE_PTR_CAST (& CTRPAD [z ]));
268268 * (LTC_FAST_TYPE_PTR_CAST (& PAD [z ])) ^= * (LTC_FAST_TYPE_PTR_CAST (& pt [y + z ]));
269269 }
270- if ((err = cipher_descriptor [ cipher ]. ecb_encrypt (PAD , PAD , skey )) != CRYPT_OK ) {
270+ if ((err = ecb_encrypt_block (PAD , PAD , skey )) != CRYPT_OK ) {
271271 goto error ;
272272 }
273273 }
@@ -282,7 +282,7 @@ int ccm_memory(int cipher,
282282 ctr [z ] = (ctr [z ] + 1 ) & 255 ;
283283 if (ctr [z ]) break ;
284284 }
285- if ((err = cipher_descriptor [ cipher ]. ecb_encrypt (ctr , CTRPAD , skey )) != CRYPT_OK ) {
285+ if ((err = ecb_encrypt_block (ctr , CTRPAD , skey )) != CRYPT_OK ) {
286286 goto error ;
287287 }
288288 CTRlen = 0 ;
@@ -298,7 +298,7 @@ int ccm_memory(int cipher,
298298 }
299299
300300 if (x == 16 ) {
301- if ((err = cipher_descriptor [ cipher ]. ecb_encrypt (PAD , PAD , skey )) != CRYPT_OK ) {
301+ if ((err = ecb_encrypt_block (PAD , PAD , skey )) != CRYPT_OK ) {
302302 goto error ;
303303 }
304304 x = 0 ;
@@ -307,7 +307,7 @@ int ccm_memory(int cipher,
307307 }
308308
309309 if (x != 0 ) {
310- if ((err = cipher_descriptor [ cipher ]. ecb_encrypt (PAD , PAD , skey )) != CRYPT_OK ) {
310+ if ((err = ecb_encrypt_block (PAD , PAD , skey )) != CRYPT_OK ) {
311311 goto error ;
312312 }
313313 }
@@ -317,12 +317,12 @@ int ccm_memory(int cipher,
317317 for (y = 15 ; y > 15 - L ; y -- ) {
318318 ctr [y ] = 0x00 ;
319319 }
320- if ((err = cipher_descriptor [ cipher ]. ecb_encrypt (ctr , CTRPAD , skey )) != CRYPT_OK ) {
320+ if ((err = ecb_encrypt_block (ctr , CTRPAD , skey )) != CRYPT_OK ) {
321321 goto error ;
322322 }
323323
324324 if (skey != uskey ) {
325- cipher_descriptor [ cipher ]. done (skey );
325+ ecb_done (skey );
326326#ifdef LTC_CLEAN_STACK
327327 zeromem (skey , sizeof (* skey ));
328328#endif
0 commit comments