Fix wrong return value check of mmap function
authorTristan Bauer <67098820+trisbauer@users.noreply.github.com>
Thu, 18 Jun 2020 09:45:24 +0000 (11:45 +0200)
committerPauli <paul.dale@oracle.com>
Tue, 23 Jun 2020 00:09:24 +0000 (10:09 +1000)
The mmap function never returns NULL. If an error occurs, the function returns MAP_FAILED.

CLA: trivial

Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org>
Reviewed-by: Paul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/12187)

(cherry picked from commit 1d78129dd205e3e85083a91c33540a70c51b0a23)

crypto/mem_sec.c

index 9e0f6702f4069d7cdce6098e42877da8b3f417ef..8bcb0509c150ed35e03b6d1e7d38463f949ff22c 100644 (file)
@@ -502,7 +502,7 @@ static void sh_done(void)
     OPENSSL_free(sh.freelist);
     OPENSSL_free(sh.bittable);
     OPENSSL_free(sh.bitmalloc);
-    if (sh.map_result != NULL && sh.map_size)
+    if (sh.map_result != MAP_FAILED && sh.map_size)
         munmap(sh.map_result, sh.map_size);
     memset(&sh, 0, sizeof(sh));
 }