aboutsummaryrefslogtreecommitdiff
path: root/lib/nssg.h
diff options
context:
space:
mode:
authorKamil Dudka <kdudka@redhat.com>2010-06-27 03:38:01 +0200
committerKamil Dudka <kdudka@redhat.com>2010-06-30 13:12:25 +0200
commitf3b77e5611d860739c0cffbc394172adf1f14b57 (patch)
tree8715c80457ba55d2af77c2f6b11be521857e4ee9 /lib/nssg.h
parent89924a897d1cdb76750459a07e6caf460601c822 (diff)
http_ntlm: add support for NSS
When configured with '--without-ssl --with-nss', NTLM authentication now uses NSS crypto library for MD5 and DES. For MD4 we have a local implementation in that case. More details are available at https://bugzilla.redhat.com/603783 In order to get it working, curl_global_init() must be called with CURL_GLOBAL_SSL or CURL_GLOBAL_ALL. That's necessary because NSS needs to be initialized globally and we do so only when the NSS library is actually required by protocol. The mentioned call of curl_global_init() is responsible for creating of the initialization mutex. There was also slightly changed the NSS initialization scenario, in particular, loading of the NSS PEM module. It used to be loaded always right after the NSS library was initialized. Now the library is initialized as soon as any SSL or NTLM is required, while the PEM module is prevented from being loaded until the SSL is actually required.
Diffstat (limited to 'lib/nssg.h')
-rw-r--r--lib/nssg.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/nssg.h b/lib/nssg.h
index 6eaa17858..f9cc46ae2 100644
--- a/lib/nssg.h
+++ b/lib/nssg.h
@@ -46,6 +46,9 @@ size_t Curl_nss_version(char *buffer, size_t size);
int Curl_nss_check_cxn(struct connectdata *cxn);
int Curl_nss_seed(struct SessionHandle *data);
+/* initialize NSS library if not already */
+CURLcode Curl_nss_force_init(struct SessionHandle *data);
+
/* API setup for NSS */
#define curlssl_init Curl_nss_init
#define curlssl_cleanup Curl_nss_cleanup