1
0
mirror of https://github.com/Mbed-TLS/mbedtls.git synced 2025-08-08 17:42:09 +03:00

Merge pull request #9065 from paul-elliott-arm/fix_ubsan_mp_aead_gcm

Add early exit if zero length AEAD additional data passed in.
This commit is contained in:
Gilles Peskine
2024-04-30 09:48:20 +00:00
committed by GitHub
2 changed files with 9 additions and 0 deletions

View File

@@ -0,0 +1,3 @@
Bugfix
* Fix undefined behaviour (incrementing a NULL pointer by zero length) when
passing in zero length additional data to multipart AEAD.

View File

@@ -5194,6 +5194,12 @@ psa_status_t psa_aead_update_ad(psa_aead_operation_t *operation,
goto exit; goto exit;
} }
/* No input to add (zero length), nothing to do. */
if (input_length == 0) {
status = PSA_SUCCESS;
goto exit;
}
if (operation->lengths_set) { if (operation->lengths_set) {
if (operation->ad_remaining < input_length) { if (operation->ad_remaining < input_length) {
status = PSA_ERROR_INVALID_ARGUMENT; status = PSA_ERROR_INVALID_ARGUMENT;