• Kamil Dudka's avatar
    http_ntlm: add support for NSS · f3b77e56
    Kamil Dudka authored
    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.
    f3b77e56