summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Relyea <rrelyea@redhat.com>2019-06-01 13:56:15 -0700
committerRobert Relyea <rrelyea@redhat.com>2019-06-01 13:56:15 -0700
commit9cb06e05d60da343fa225f006c1fc091898db8c2 (patch)
tree9e69d9589091eabea3e4a433e13373b31e677828
parentda4e8faac2e2e501c633297be5df766751c15769 (diff)
downloadnss-hg-9cb06e05d60da343fa225f006c1fc091898db8c2.tar.gz
Bug 1546477 - FIPS review changes. r=mt, Fix memory leak in error path issue
-rw-r--r--gtests/pk11_gtest/manifest.mn1
-rw-r--r--lib/freebl/rijndael.c4
2 files changed, 5 insertions, 0 deletions
diff --git a/gtests/pk11_gtest/manifest.mn b/gtests/pk11_gtest/manifest.mn
index 75ddb71c3..475a35b64 100644
--- a/gtests/pk11_gtest/manifest.mn
+++ b/gtests/pk11_gtest/manifest.mn
@@ -8,6 +8,7 @@ MODULE = nss
CPPSRCS = \
pk11_aeskeywrap_unittest.cc \
+ pk11_aes_gcm_unittest.cc \
pk11_chacha20poly1305_unittest.cc \
pk11_curve25519_unittest.cc \
pk11_ecdsa_unittest.cc \
diff --git a/lib/freebl/rijndael.c b/lib/freebl/rijndael.c
index b2a0dbf14..74fdec573 100644
--- a/lib/freebl/rijndael.c
+++ b/lib/freebl/rijndael.c
@@ -1041,6 +1041,10 @@ AES_DestroyContext(AESContext *cx, PRBool freeit)
PORT_Memset(cx, 0, sizeof(AESContext));
if (freeit) {
PORT_Free(mem);
+ } else {
+ /* if we are not freeing the context, restore mem, We may get called
+ * again to actually free the context */
+ cx->mem = mem;
}
}