|
167 | 167 | } |
168 | 168 | int wc_Sha512Update(wc_Sha512* sha512, const byte* data, word32 len) |
169 | 169 | { |
| 170 | + if (sha512 == NULL) { |
| 171 | + return BAD_FUNC_ARG; |
| 172 | + } |
| 173 | + if (data == NULL && len == 0) { |
| 174 | + /* valid, but do nothing */ |
| 175 | + return 0; |
| 176 | + } |
| 177 | + if (data == NULL) { |
| 178 | + return BAD_FUNC_ARG; |
| 179 | + } |
| 180 | + |
170 | 181 | return se050_hash_update(&sha512->se050Ctx, data, len); |
171 | 182 | } |
172 | 183 | int wc_Sha512Final(wc_Sha512* sha512, byte* hash) |
@@ -1024,7 +1035,14 @@ static WC_INLINE int Sha512Update(wc_Sha512* sha512, const byte* data, word32 le |
1024 | 1035 |
|
1025 | 1036 | int wc_Sha512Update(wc_Sha512* sha512, const byte* data, word32 len) |
1026 | 1037 | { |
1027 | | - if (sha512 == NULL || (data == NULL && len > 0)) { |
| 1038 | + if (sha512 == NULL) { |
| 1039 | + return BAD_FUNC_ARG; |
| 1040 | + } |
| 1041 | + if (data == NULL && len == 0) { |
| 1042 | + /* valid, but do nothing */ |
| 1043 | + return 0; |
| 1044 | + } |
| 1045 | + if (data == NULL) { |
1028 | 1046 | return BAD_FUNC_ARG; |
1029 | 1047 | } |
1030 | 1048 |
|
@@ -1414,6 +1432,17 @@ int wc_Sha512Transform(wc_Sha512* sha, const unsigned char* data) |
1414 | 1432 | } |
1415 | 1433 | int wc_Sha384Update(wc_Sha384* sha384, const byte* data, word32 len) |
1416 | 1434 | { |
| 1435 | + if (sha384 == NULL) { |
| 1436 | + return BAD_FUNC_ARG; |
| 1437 | + } |
| 1438 | + if (data == NULL && len == 0) { |
| 1439 | + /* valid, but do nothing */ |
| 1440 | + return 0; |
| 1441 | + } |
| 1442 | + if (data == NULL) { |
| 1443 | + return BAD_FUNC_ARG; |
| 1444 | + } |
| 1445 | + |
1417 | 1446 | return se050_hash_update(&sha384->se050Ctx, data, len); |
1418 | 1447 |
|
1419 | 1448 | } |
@@ -1489,7 +1518,15 @@ static int InitSha384(wc_Sha384* sha384) |
1489 | 1518 |
|
1490 | 1519 | int wc_Sha384Update(wc_Sha384* sha384, const byte* data, word32 len) |
1491 | 1520 | { |
1492 | | - if (sha384 == NULL || (data == NULL && len > 0)) { |
| 1521 | + |
| 1522 | + if (sha384 == NULL) { |
| 1523 | + return BAD_FUNC_ARG; |
| 1524 | + } |
| 1525 | + if (data == NULL && len == 0) { |
| 1526 | + /* valid, but do nothing */ |
| 1527 | + return 0; |
| 1528 | + } |
| 1529 | + if (data == NULL) { |
1493 | 1530 | return BAD_FUNC_ARG; |
1494 | 1531 | } |
1495 | 1532 |
|
|
0 commit comments