From c82b8683b00eed67f6242e25aa92da4d641131b4 Mon Sep 17 00:00:00 2001 From: "nelsonb%netscape.com" Date: Fri, 21 Nov 2003 22:10:56 +0000 Subject: [PATCH] Don't invoke PKCS11 with an invalid handle. Bug 226285. r=relyea sr=wchang0222 git-svn-id: svn://10.0.0.236/trunk@149617 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/security/nss/lib/pk11wrap/pk11skey.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/mozilla/security/nss/lib/pk11wrap/pk11skey.c b/mozilla/security/nss/lib/pk11wrap/pk11skey.c index 2e4ea493dcf..062a22f4a2a 100644 --- a/mozilla/security/nss/lib/pk11wrap/pk11skey.c +++ b/mozilla/security/nss/lib/pk11wrap/pk11skey.c @@ -2427,6 +2427,12 @@ PK11_PubWrapSymKey(CK_MECHANISM_TYPE type, SECKEYPublicKey *pubKey, mechanism.ulParameterLen = 0; id = PK11_ImportPublicKey(slot,pubKey,PR_FALSE); + if (id == CK_INVALID_HANDLE) { + if (newKey) { + PK11_FreeSymKey(newKey); + } + return SECFailure; /* Error code has been set. */ + } session = pk11_GetNewSession(slot,&owner); if (!owner || !(slot->isThreadSafe)) PK11_EnterSlotMonitor(slot);