Skip to content

Commit 3b4d39e

Browse files
committed
OCBv3: improve a bit when ARGCHK'ing pointers
* it didn't really make sense to check that the _in_ pointer is NULL * instead we should check that _in_ and _out_ are not NULL when there's something to process
1 parent 868c5a8 commit 3b4d39e

4 files changed

Lines changed: 16 additions & 8 deletions

File tree

src/encauth/ocb3/ocb3_decrypt.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,10 @@ int ocb3_decrypt(ocb3_state *ocb, const unsigned char *ct, unsigned long ctlen,
3131

3232
LTC_ARGCHK(ocb != NULL);
3333
if (ct == NULL) LTC_ARGCHK(ctlen == 0);
34-
if (ctlen == 0) LTC_ARGCHK(ct == NULL);
35-
else LTC_ARGCHK(pt != NULL);
34+
if (ctlen != 0) {
35+
LTC_ARGCHK(ct != NULL);
36+
LTC_ARGCHK(pt != NULL);
37+
}
3638

3739
if ((err = cipher_is_valid(ocb->cipher)) != CRYPT_OK) {
3840
return err;

src/encauth/ocb3/ocb3_decrypt_last.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,10 @@ int ocb3_decrypt_last(ocb3_state *ocb, const unsigned char *ct, unsigned long ct
3131

3232
LTC_ARGCHK(ocb != NULL);
3333
if (ct == NULL) LTC_ARGCHK(ctlen == 0);
34-
if (ctlen == 0) LTC_ARGCHK(ct == NULL);
35-
else LTC_ARGCHK(pt != NULL);
34+
if (ctlen != 0) {
35+
LTC_ARGCHK(ct != NULL);
36+
LTC_ARGCHK(pt != NULL);
37+
}
3638

3739
if ((err = cipher_is_valid(ocb->cipher)) != CRYPT_OK) {
3840
goto LBL_ERR;

src/encauth/ocb3/ocb3_encrypt.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,10 @@ int ocb3_encrypt(ocb3_state *ocb, const unsigned char *pt, unsigned long ptlen,
3131

3232
LTC_ARGCHK(ocb != NULL);
3333
if (pt == NULL) LTC_ARGCHK(ptlen == 0);
34-
if (ptlen == 0) LTC_ARGCHK(pt == NULL);
35-
else LTC_ARGCHK(ct != NULL);
34+
if (ptlen != 0) {
35+
LTC_ARGCHK(pt != NULL);
36+
LTC_ARGCHK(ct != NULL);
37+
}
3638

3739
if ((err = cipher_is_valid(ocb->cipher)) != CRYPT_OK) {
3840
return err;

src/encauth/ocb3/ocb3_encrypt_last.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,10 @@ int ocb3_encrypt_last(ocb3_state *ocb, const unsigned char *pt, unsigned long pt
3131

3232
LTC_ARGCHK(ocb != NULL);
3333
if (pt == NULL) LTC_ARGCHK(ptlen == 0);
34-
if (ptlen == 0) LTC_ARGCHK(pt == NULL);
35-
else LTC_ARGCHK(ct != NULL);
34+
if (ptlen != 0) {
35+
LTC_ARGCHK(pt != NULL);
36+
LTC_ARGCHK(ct != NULL);
37+
}
3638

3739
if ((err = cipher_is_valid(ocb->cipher)) != CRYPT_OK) {
3840
goto LBL_ERR;

0 commit comments

Comments
 (0)