Closed
Bug 128915
Opened 24 years ago
Closed 24 years ago
Crash when importing recipient s/mime cert.
Categories
(NSS :: Libraries, defect, P1)
Tracking
(Not tracked)
VERIFIED
FIXED
3.4
People
(Reporter: ssaux, Assigned: wtc)
References
()
Details
Attachments
(1 file, 1 obsolete file)
Create a new profile.
Go to pb.mcom.com
click on the cert icon for a user, click again.
Crash.
Stack trace:
CERT_SaveSMimeProfile(CERTCertificateStr * 0x014e0708, SECItemStr * 0x00000000,
SECItemStr * 0x00000000) line 709 + 6 bytes
nsNSSCertificateDB::ImportEmailCertificate(nsNSSCertificateDB * const
0x047dce30, char * 0x0452eca0, unsigned int 0x00000301, nsIInterfaceRequestor *
0x042bfb20) line 3083 + 13 bytes
PSMContentDownloader::OnStopRequest(PSMContentDownloader * const 0x0454f438,
nsIRequest * 0x046885d0, nsISupports * 0x00000000, unsigned int 0x00000000) line
1718 + 46 bytes
nsDocumentOpenInfo::OnStopRequest(nsDocumentOpenInfo * const 0x04773ce0,
nsIRequest * 0x046885d0, nsISupports * 0x00000000, unsigned int 0x00000000) line 254
nsStreamListenerTee::OnStopRequest(nsStreamListenerTee * const 0x0487f630,
nsIRequest * 0x046885d0, nsISupports * 0x00000000, unsigned int 0x00000000) line 25
nsHttpChannel::OnStopRequest(nsHttpChannel * const 0x046885d4, nsIRequest *
0x0454ef3c, nsISupports * 0x00000000, unsigned int 0x00000000) line 2513
nsOnStopRequestEvent::HandleEvent() line 213
nsARequestObserverEvent::HandlePLEvent(PLEvent * 0x042bf794) line 116
PL_HandleEvent(PLEvent * 0x042bf794) line 590 + 10 bytes
PL_ProcessPendingEvents(PLEventQueue * 0x0108bb88) line 520 + 9 bytes
_md_EventReceiverProc(HWND__ * 0x001c02a0 _mbsncmp(const unsigned char *, const
unsigned char *, unsigned int), unsigned int 0x0000c122, unsigned int
0x00000000, long 0x0108bb88) line 1071 + 9 bytes
USER32! 77e12e98()
USER32! 77e130e0()
USER32! 77e15824()
nsAppShellService::Run(nsAppShellService * const 0x014ea840) line 309
main1(int 0x00000001, char * * 0x00305eb0, nsISupports * 0x00000000) line 1289 +
32 bytes
main(int 0x00000001, char * * 0x00305eb0) line 1637 + 37 bytes
mainCRTStartup() line 338 + 17 bytes
KERNEL32! 77e97d08()
Crashes on the SECITEM_FROM_NSSITEM line:
c = STAN_GetNSSCertificate(cert);
if (!c) return SECFailure;
cc = c->object.cryptoContext;
if (cc != NULL) {
stanProfile = nssCryptoContext_FindSMIMEProfileForCertificate(cc, c);
if (stanProfile) {
SECITEM_FROM_NSSITEM(&oldprof, stanProfile->profileData);
oldProfile = &oldprof;
}
} else {
oldProfile = PK11_FindSMimeProfile(&slot, emailAddr, &cert->derSubject,
&oldProfileTime);
}
saveit = PR_FALSE;
The stanProfile->profileData is null.
Reporter | ||
Comment 1•24 years ago
|
||
*** Bug 128911 has been marked as a duplicate of this bug. ***
Reporter | ||
Comment 2•24 years ago
|
||
Note that after the first crash, restarting on this profile and importing the
cert again doesn't cause the crash anymore. On the other hand, the user cert
doesn't appear on the "other's" tab.
Comment 3•24 years ago
|
||
I'm running with the several patches from bug 125808 and I was able to
successfully import ssaux and javi 's user certs from the directory.
The user certs are all appearing in the 'others' tab.
Comment 4•24 years ago
|
||
Checking this in. Will avoid frivolous storage of empty S/MIME profiles for
temp certs, and not crash should there be some.
Assignee | ||
Comment 5•24 years ago
|
||
Comment on attachment 72488 [details] [diff] [review]
prevent some crashin'
r=wtc.
Ian, later in the same function (CERT_SaveSMimeProfile), we have
if (saveit) {
if (cc) {
if (stanProfile) {
/* well, it's hashed and in an arena, might as well just
* overwrite the buffer
*/
NSSITEM_FROM_SECITEM(stanProfile->profileTime, profileTime);
NSSITEM_FROM_SECITEM(stanProfile->profileData, emailProfile);
Should we also change the innermost 'if' to
if (stanProfile && stanProfile->profileData) {
?
Attachment #72488 -
Flags: review+
Assignee | ||
Comment 6•24 years ago
|
||
The first change in the previous patch is not necessary
because of the second change, so I replaced the first
change by an assertion.
Attachment #72488 -
Attachment is obsolete: true
Assignee | ||
Comment 7•24 years ago
|
||
This is an NSS bug. Assigned the bug to Ian.
Assignee: ssaux → ian.mcgreer
Component: S/MIME → Libraries
Priority: -- → P1
Product: PSM → NSS
Target Milestone: --- → 3.4
Version: 2.2 → 3.4
Assignee | ||
Comment 9•24 years ago
|
||
Stephane, Antonio,
I checked in Ian's fix for this crash in the NSS_CLIENT_TAG
yesterday morning. Could you try today's Mozilla daily
build and see if it fixes the crash?
Thanks.
Status: NEW → ASSIGNED
Comment 10•24 years ago
|
||
Tried with today's build (2002-03-06-06-trunk) on Win2000.
I don't see the crash anymore, and the user cert showed up in the "Other" tab.
Assignee | ||
Comment 11•24 years ago
|
||
Thank you, Antonio.
With Antonio's verification, I'm marking this bug fixed.
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•