On 2009-10-14 05:27 PDT, star_ni...@my-deja.com wrote: > Nelson, > > Thank you for your response. > > The module is an access manager Apache agent module from Sun > (libamapc2). This gets loaded when Apache starts and handles handles > authentication of AM protected applications. > > You are correct that I don't see sec_error_ext_not_found in logs, but > I found it is happening from tracing AM agent module.
As I suspected. That error code, extension not found, is the single most common error code that occurs in NSS. If you set a breakpoint in the function that sets error codes (PR_SetError), you will find that about half of the calls set that value. But you should essentially ignore it. > The error message in the AM agent module is > > all: Connection::read(): NSPR Error while reading data:-5990 > AuthService: BaseService::doRequest() caught NSPRException: PR_Recv > called by Connection::read() returned PR_IO_TIMEOUT_ERROR IO Timeout error means that the thread waited for a read or a write to finish on a socket for some application-specified time (might be 30 seconds, or 5 minutes), after which it gave up. You won't learn much about that by tracing through the code. I don't want to discourage your from learning about NSS internals. :) We can always use more help from more people familiar with NSS code internals. :) But that's not the fast path to resolving IO timeout errors, IMO. > The NSS/NSPR/SSL library that we are using is the one shipped with > Solaris 10 update 6. > > NSPR version = 4.6.7 > NSS version = 3.11.7 > libssl is also the same version as NSS > > we have a working config > NSS 3.11.10 > NSPR 4.7.1 > > The AM agent modules itself is not configured with a CA cert that > trusts, that's what I have been told and I have also been told it is > configured to trust all certs since this only involves internal SSL > communication with internal load balancer. Well, given that the error you're experiencing is an IO timeout error and not a certificate error (extension not found doesn't count ;) I wouldn't worry about trusted certs at this point. I'd suggest you try using a program like ssltap or ssldump to monitor the traffic on the SSL connection(s). That will probably get you to the point of being able to see what's wrong a LOT faster than tracing through code. > Is the application (AM agent module) trying to create some temp > certificate when it calls __CERT_NewTempCertificate? Any reference > where I can get more info is appreciated. When an application that uses NSS receives a certificate from some other source (e.g. over a wire, or in a file) and wants to check the certificate, it must first "import" the certificate into NSS. There are two ways to import a certificate into NSS. Those two ways are known as "temporary" and "permanent" or "temp" and "perm" for short. In this case, the SSL code has received a certificate from the other system to which it is connected, and is trying to import the certificate as a temporary cert for the purpose of verifying the validity of the cert. But I think you should ignore the extension not found error code completely. It's not the real problem that you need to solve. -- dev-tech-crypto mailing list dev-tech-crypto@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-tech-crypto