Kenneth R. Robinette wrote: > Found it.! > > One of the things Netscape 6.2 (and I think other versions) do to the secmod > database is to place the full path to the nsscbki.dll into the secmod.db. > On my systems, Netscape always installs itself into the \PROGRAM > FILES\NETSCAPE\NETSCAPE 6 directory, by default. This is shown in the > partial dump of the secmod.db file. The problem appears to be the spaces > contined within at least the \NETSCAPE 6\ portion of the path. If you edit > this file with a hex editor and replace the spaces in the path with some non > space character, my program and the NSS tools no longer abort.
Now for the $64,000 question: why does NSS abort when trying to load the built-in when PSM does not. Since it's essentially the same code, the only thing I can think of is a bug in NSPR which is fixed in the trunk, but not in the default version of NSPR included with NSS. > > I don't know if this is the only problem, but it is the one that is causing > all non Netscape programs to bomb out when they make the NSS_Init call after > the secmod database has been "messed" with by Netscape. No, unless the file is marked critical, NSS will ignore failures in loading other tokens. Does NSS_Init simply fail, or does it actually crash? It looks more like an NSPR issue rather than an NSS issue, since Netscape 6 uses essentially the same version of NSS that you are using (NSS 3.3). bob >
