@@ -42,7 +42,7 @@ void mbedtls_sha1_hw_init(crypto_sha_context *ctx)
42
42
{
43
43
/* Init crypto module */
44
44
crypto_init ();
45
- memset (ctx , 0 , sizeof (crypto_sha_context ));
45
+ memset (ctx , 0 , sizeof (* ctx ));
46
46
}
47
47
48
48
void mbedtls_sha1_hw_free (crypto_sha_context * ctx )
@@ -55,7 +55,7 @@ void mbedtls_sha1_hw_free(crypto_sha_context *ctx)
55
55
56
56
/* Uninit crypto module */
57
57
crypto_uninit ();
58
- crypto_zeroize (ctx , sizeof (crypto_sha_context ));
58
+ crypto_zeroize (ctx , sizeof (* ctx ));
59
59
}
60
60
61
61
void mbedtls_sha1_hw_clone (crypto_sha_context * dst ,
@@ -121,7 +121,7 @@ void mbedtls_sha256_hw_init(crypto_sha_context *ctx)
121
121
{
122
122
/* Init crypto module */
123
123
crypto_init ();
124
- memset (ctx , 0 , sizeof (crypto_sha_context ));
124
+ memset (ctx , 0 , sizeof (* ctx ));
125
125
}
126
126
127
127
void mbedtls_sha256_hw_free (crypto_sha_context * ctx )
@@ -134,7 +134,7 @@ void mbedtls_sha256_hw_free(crypto_sha_context *ctx)
134
134
135
135
/* Uninit crypto module */
136
136
crypto_uninit ();
137
- crypto_zeroize (ctx , sizeof (crypto_sha_context ));
137
+ crypto_zeroize (ctx , sizeof (* ctx ));
138
138
}
139
139
140
140
void mbedtls_sha256_hw_clone (crypto_sha_context * dst ,
@@ -202,7 +202,7 @@ void mbedtls_sha512_hw_init(crypto_sha_context *ctx)
202
202
{
203
203
/* Init crypto module */
204
204
crypto_init ();
205
- memset (ctx , 0 , sizeof (crypto_sha_context ));
205
+ memset (ctx , 0 , sizeof (* ctx ));
206
206
}
207
207
208
208
void mbedtls_sha512_hw_free (crypto_sha_context * ctx )
@@ -215,7 +215,7 @@ void mbedtls_sha512_hw_free(crypto_sha_context *ctx)
215
215
216
216
/* Uninit crypto module */
217
217
crypto_uninit ();
218
- crypto_zeroize (ctx , sizeof (crypto_sha_context ));
218
+ crypto_zeroize (ctx , sizeof (* ctx ));
219
219
}
220
220
221
221
void mbedtls_sha512_hw_clone (crypto_sha_context * dst ,
@@ -322,9 +322,8 @@ void crypto_sha_update_nobuf(crypto_sha_context *ctx, const unsigned char *input
322
322
int rmn = ilen ;
323
323
uint32_t sha_ctl_start = (CRPT -> HMAC_CTL & ~(CRPT_HMAC_CTL_DMALAST_Msk | CRPT_HMAC_CTL_DMAEN_Msk | CRPT_HMAC_CTL_HMACEN_Msk )) | CRPT_HMAC_CTL_START_Msk ;
324
324
uint32_t sha_opmode = (CRPT -> HMAC_CTL & CRPT_HMAC_CTL_OPMODE_Msk ) >> CRPT_HMAC_CTL_OPMODE_Pos ;
325
- uint32_t DGST0_old = 0 , DGST1_old = 0 , DGST2_old = 0 , DGST3_old = 0 , DGST4_old = 0 , DGST5_old = 0 , DGST6_old = 0 , DGST7_old = 0 ,
326
- DGST8_old = 0 , DGST9_old = 0 , DGST10_old = 0 , DGST11_old = 0 , DGST12_old = 0 , DGST13_old = 0 , DGST14_old = 0 , DGST15_old = 0 ;
327
-
325
+ uint32_t DGSTs [16 ] = { 0 };
326
+
328
327
while (rmn > 0 ) {
329
328
CRPT -> HMAC_CTL = sha_ctl_start ;
330
329
@@ -340,26 +339,26 @@ void crypto_sha_update_nobuf(crypto_sha_context *ctx, const unsigned char *input
340
339
} else {
341
340
switch (sha_opmode ) {
342
341
case SHA_MODE_SHA512 :
343
- DGST15_old = CRPT -> HMAC_DGST [15 ];
344
- DGST14_old = CRPT -> HMAC_DGST [14 ];
345
- DGST13_old = CRPT -> HMAC_DGST [13 ];
346
- DGST12_old = CRPT -> HMAC_DGST [12 ];
342
+ DGSTs [ 12 ] = CRPT -> HMAC_DGST [12 ];
343
+ DGSTs [ 13 ] = CRPT -> HMAC_DGST [13 ];
344
+ DGSTs [ 14 ] = CRPT -> HMAC_DGST [14 ];
345
+ DGSTs [ 15 ] = CRPT -> HMAC_DGST [15 ];
347
346
case SHA_MODE_SHA384 :
348
- DGST11_old = CRPT -> HMAC_DGST [11 ];
349
- DGST10_old = CRPT -> HMAC_DGST [10 ];
350
- DGST9_old = CRPT -> HMAC_DGST [9 ];
351
- DGST8_old = CRPT -> HMAC_DGST [8 ];
347
+ DGSTs [ 8 ] = CRPT -> HMAC_DGST [8 ];
348
+ DGSTs [ 9 ] = CRPT -> HMAC_DGST [9 ];
349
+ DGSTs [ 10 ] = CRPT -> HMAC_DGST [10 ];
350
+ DGSTs [ 11 ] = CRPT -> HMAC_DGST [11 ];
352
351
case SHA_MODE_SHA256 :
353
- DGST7_old = CRPT -> HMAC_DGST [7 ];
352
+ DGSTs [ 7 ] = CRPT -> HMAC_DGST [7 ];
354
353
case SHA_MODE_SHA224 :
355
- DGST5_old = CRPT -> HMAC_DGST [5 ];
356
- DGST6_old = CRPT -> HMAC_DGST [6 ];
354
+ DGSTs [ 5 ] = CRPT -> HMAC_DGST [5 ];
355
+ DGSTs [ 6 ] = CRPT -> HMAC_DGST [6 ];
357
356
case SHA_MODE_SHA1 :
358
- DGST0_old = CRPT -> HMAC_DGST [0 ];
359
- DGST1_old = CRPT -> HMAC_DGST [1 ];
360
- DGST2_old = CRPT -> HMAC_DGST [2 ];
361
- DGST3_old = CRPT -> HMAC_DGST [3 ];
362
- DGST4_old = CRPT -> HMAC_DGST [4 ];
357
+ DGSTs [ 0 ] = CRPT -> HMAC_DGST [0 ];
358
+ DGSTs [ 1 ] = CRPT -> HMAC_DGST [1 ];
359
+ DGSTs [ 2 ] = CRPT -> HMAC_DGST [2 ];
360
+ DGSTs [ 3 ] = CRPT -> HMAC_DGST [3 ];
361
+ DGSTs [ 4 ] = CRPT -> HMAC_DGST [4 ];
363
362
}
364
363
365
364
CRPT -> HMAC_CTL = sha_ctl_start ;
@@ -383,30 +382,30 @@ void crypto_sha_update_nobuf(crypto_sha_context *ctx, const unsigned char *input
383
382
while (! isfinish ) {
384
383
switch (sha_opmode ) {
385
384
case SHA_MODE_SHA512 :
386
- if (DGST12_old != CRPT -> HMAC_DGST [12 ] || DGST13_old != CRPT -> HMAC_DGST [13 ] || DGST14_old != CRPT -> HMAC_DGST [14 ] ||
387
- DGST15_old != CRPT -> HMAC_DGST [15 ]) {
385
+ if (DGSTs [ 12 ] != CRPT -> HMAC_DGST [12 ] || DGSTs [ 13 ] != CRPT -> HMAC_DGST [13 ] || DGSTs [ 14 ] != CRPT -> HMAC_DGST [14 ] ||
386
+ DGSTs [ 15 ] != CRPT -> HMAC_DGST [15 ]) {
388
387
isfinish = 1 ;
389
388
break ;
390
389
}
391
390
case SHA_MODE_SHA384 :
392
- if (DGST8_old != CRPT -> HMAC_DGST [8 ] || DGST9_old != CRPT -> HMAC_DGST [9 ] || DGST10_old != CRPT -> HMAC_DGST [10 ] ||
393
- DGST11_old != CRPT -> HMAC_DGST [11 ]) {
391
+ if (DGSTs [ 8 ] != CRPT -> HMAC_DGST [8 ] || DGSTs [ 9 ] != CRPT -> HMAC_DGST [9 ] || DGSTs [ 10 ] != CRPT -> HMAC_DGST [10 ] ||
392
+ DGSTs [ 11 ] != CRPT -> HMAC_DGST [11 ]) {
394
393
isfinish = 1 ;
395
394
break ;
396
395
}
397
396
case SHA_MODE_SHA256 :
398
- if (DGST7_old != CRPT -> HMAC_DGST [7 ]) {
397
+ if (DGSTs [ 7 ] != CRPT -> HMAC_DGST [7 ]) {
399
398
isfinish = 1 ;
400
399
break ;
401
400
}
402
401
case SHA_MODE_SHA224 :
403
- if (DGST5_old != CRPT -> HMAC_DGST [5 ] || DGST6_old != CRPT -> HMAC_DGST [6 ]) {
402
+ if (DGSTs [ 5 ] != CRPT -> HMAC_DGST [5 ] || DGSTs [ 6 ] != CRPT -> HMAC_DGST [6 ]) {
404
403
isfinish = 1 ;
405
404
break ;
406
405
}
407
406
case SHA_MODE_SHA1 :
408
- if (DGST0_old != CRPT -> HMAC_DGST [0 ] || DGST1_old != CRPT -> HMAC_DGST [1 ] || DGST2_old != CRPT -> HMAC_DGST [2 ] ||
409
- DGST3_old != CRPT -> HMAC_DGST [3 ] || DGST4_old != CRPT -> HMAC_DGST [4 ]) {
407
+ if (DGSTs [ 0 ] != CRPT -> HMAC_DGST [0 ] || DGSTs [ 1 ] != CRPT -> HMAC_DGST [1 ] || DGSTs [ 2 ] != CRPT -> HMAC_DGST [2 ] ||
408
+ DGSTs [ 3 ] != CRPT -> HMAC_DGST [3 ] || DGSTs [ 4 ] != CRPT -> HMAC_DGST [4 ]) {
410
409
isfinish = 1 ;
411
410
break ;
412
411
}
0 commit comments