[EMAIL PROTECTED] wrote:
Hi,
is there an easy way to build NSS (on Linux) using preinstalled NSPR
libs and include files?
No, there is no easy way to do that. We will need to fix
this problem.
One other thing I've observed is that at least libnssckbi.so and
libswft.so is built using static libs from plds4 and plc4 while all
other libs using the dynamic libs from NSPR. Is this intentionally and
if yes, why?
This is intentional. You will also find that these two
.so's are not linked with nspr4 (neither the static lib
nor the dynamic lib). Instead, they are linked with
stub implementations of the NSPR functions they need.
The reason is that libnssckbi.so and libswft.so are
PKCS #11 libraries that can be used without NSS.
In order to avoid problems with being loaded into
an application that uses incompatible versions of
NSPR, we decided to statically link these two .so's
with the NSPR functions they need. I think this
solution is less than ideal, and the problem we
try to solve (incompatible versions of NSPR being
loaded into one application) may not exist any more.
If those two .so's need to be NSPR-free, they should
be really NSPR-free. This requires implementing versions
of the arena and hash table functions in plds4 to not
use NSPR functions (PR_SetError, PR_Lock, PR_Unlock,
etc.). Some of the stub implementation of NSPR functions
are so broken I can only shake my head. For example, the
atomic routines:
http://lxr.mozilla.org/security/source/security/nss/lib/ckfw/nsprstub.c#347
the error code functions:
http://lxr.mozilla.org/security/source/security/nss/lib/ckfw/nsprstub.c#218
Fortunately, they are probably not really being used.
Wan-Teh
_______________________________________________
mozilla-crypto mailing list
[email protected]
http://mail.mozilla.org/listinfo/mozilla-crypto