summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwtc%netscape.com <devnull@localhost>2002-06-19 01:35:35 +0000
committerwtc%netscape.com <devnull@localhost>2002-06-19 01:35:35 +0000
commit76fa77815995cbe6aef8b9f1f1ffeaf96f52ac32 (patch)
treed890e63ddcad79efc80115ebf3959c293f43d406
parent49406a07521f5c6407c50cdd430607c36faaf871 (diff)
downloadnss-hg-76fa77815995cbe6aef8b9f1f1ffeaf96f52ac32.tar.gz
Bug 144605: Reset the cert cache and clobber cert handles on token
insertion an removal. r=mcgreer. a=mozilla1.0.1+ and adt1.0.1+. Tag: MOZILLA_1_0_BRANCH
-rw-r--r--security/nss/lib/dev/devslot.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/security/nss/lib/dev/devslot.c b/security/nss/lib/dev/devslot.c
index 843a5bd4b..a5c875261 100644
--- a/security/nss/lib/dev/devslot.c
+++ b/security/nss/lib/dev/devslot.c
@@ -331,6 +331,12 @@ nssSlot_IsTokenPresent
if (session->handle != CK_INVALID_SESSION) {
return PR_TRUE;
} else {
+ /* the token has been removed, and reinserted, invalidate all the old
+ * information we had on this token */
+#ifdef NSS_3_4_CODE
+ nssToken_NofifyCertsNotVisible(slot->token);
+#endif /* NSS_3_4_CODE */
+ nssToken_Remove(slot->token);
/* token has been removed, need to refresh with new session */
nssrv = nssSlot_Refresh(slot);
if (nssrv != PR_SUCCESS) {