From: Yehuda Sadeh Date: Tue, 20 Nov 2012 23:30:37 +0000 (-0800) Subject: crypto: fix nss related leak X-Git-Tag: v0.55~67 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=24fde54700220199065721e4a84e2a4c8880a0a7;p=ceph.git crypto: fix nss related leak Signed-off-by: Yehuda Sadeh --- diff --git a/src/auth/Crypto.cc b/src/auth/Crypto.cc index 77c959fba92..1bfc2814f4f 100644 --- a/src/auth/Crypto.cc +++ b/src/auth/Crypto.cc @@ -191,9 +191,13 @@ static void nss_aes_operation(CK_ATTRIBUTE_TYPE op, const bufferptr& secret, goto err_op; } - PK11_DestroyContext(ctx, PR_TRUE); out_tmp.set_length(written + written2); out.append(out_tmp); + + PK11_DestroyContext(ctx, PR_TRUE); + SECITEM_FreeItem(param, PR_TRUE); + PK11_FreeSymKey(key); + PK11_FreeSlot(slot); return; err_op: diff --git a/src/rgw/rgw_main.cc b/src/rgw/rgw_main.cc index 944b59a5c8d..bdcee9d11ac 100644 --- a/src/rgw/rgw_main.cc +++ b/src/rgw/rgw_main.cc @@ -500,6 +500,9 @@ int main(int argc, const char **argv) RGWStoreManager::close_storage(store); + curl_global_cleanup(); + g_ceph_context->put(); + return 0; }