mirror of
https://github.com/curl/curl.git
synced 2024-11-27 05:50:21 +08:00
34 lines
1.4 KiB
Natural
34 lines
1.4 KiB
Natural
|
libcurl with NSS
|
||
|
================
|
||
|
|
||
|
Author: Daniel Stenberg
|
||
|
Date: June 24, 2008
|
||
|
|
||
|
NSS home => http://www.mozilla.org/projects/security/pki/nss/
|
||
|
|
||
|
libcurl can be built to use the NSS libraries for SSL/TLS. Invoke configure
|
||
|
--without-ssl --with-nss.
|
||
|
|
||
|
The source code in lib/nss.c currently cause a compiler warning due to the
|
||
|
lack of a prototype. The prototype is provided by the public header provided
|
||
|
by NSS called "base64.h". But since we use a private header in libcurl named
|
||
|
identically, we cannot include the NSS one.
|
||
|
|
||
|
This problem persists because:
|
||
|
|
||
|
* NSS doesn't use a properly established separate subdir for their include
|
||
|
files. Instead different distros have put them in /usr/include/nss and
|
||
|
/usr/include/nss3 etc.
|
||
|
|
||
|
* The pkg-config output for NSS provides a full -I path to the nss include dir,
|
||
|
so we cannot #include <nss/base64.h> or <nss3/base64.h>. This too may be due
|
||
|
to how distros do it.
|
||
|
|
||
|
* I tried getting the (all new in June 2008) NSS 3.12 tarball to check how it
|
||
|
behaves out-of-box but this wouldn't even build - complaining on missing
|
||
|
files that aren't included in the tarball. The tarball doesn't even include
|
||
|
build instuctions but you must hunt them down on their web site.
|
||
|
|
||
|
Due to these design problems we may of course get further similar problems in
|
||
|
the future, but I hope we can work them out somehow along the way.
|