I found the problem I was having trying to use NSS on windows 98. I was using the Netscape 6.2 certificate, key and secmod databases. As is turns out, no NSS based application can access these databases; if they try, the program aborts on the NSS_Init call.
If you use the NSS utilities modutil and certutil to create new databases, define various PKCS11 smart card/USB tokens PKCS11 dll's and add a few certificates to the internal module, then all the utilities will work, including my program. If you copy these databases to the Netscape user profile and start Netscape 6.2, use PSM to list the certificates, all works well. Then if you close Netscape and then copy the databases back to the test directory, all NSS based programs that try to access the databases will abort. I guess this means trying to use NSS on a windows based system is not such a good idea unless you have no plans to ever use Netscape to use the certificates/keys contained within the certificate database used by all other applications, or to never use the certificates contained within the Netscape databases in all the other applications. Might as well use the Microsoft browser/cryptoapi, where all security aware programs can share the common certificates. Ken
