Fix implementation-specific behavior in gcm_test.c
gcm_test.c includes a test case that does a 'malloc(0)'. This test case currently fails if malloc(0) returns NULL. According to the standard, malloc's behavior with a size of 0is implementation specific and may either be NULL or another pointer suitable to be passed to free(). This change modifies gcm_test.c to handle a return value of NULL. It has been tested with a custom allocator on an experimental branch. Change-Id: I35514ec9735cedffc621f7dfae42b4c6664a1766 Reviewed-on: https://boringssl-review.googlesource.com/7122 Reviewed-by: Adam Langley <agl@google.com>
This commit is contained in:
parent
95a79eec40
commit
136df6bd99
@ -336,7 +336,7 @@ static int run_test_case(unsigned test_num, const struct test_case *test) {
|
||||
}
|
||||
|
||||
out = OPENSSL_malloc(plaintext_len);
|
||||
if (out == NULL) {
|
||||
if (plaintext_len != 0 && out == NULL) {
|
||||
goto out;
|
||||
}
|
||||
if (AES_set_encrypt_key(key, key_len*8, &aes_key)) {
|
||||
|
Loading…
Reference in New Issue
Block a user