cURL / Mailing Lists / curl-library / Single Mail


RE: Authentication

From: Xiuping Hu <>
Date: Fri, 6 Feb 2004 08:49:15 -0800

Hi Daniel,

Thank you very much for your message, it is very helpful. cURL support NTLM
from 7.10.6. We currently use 7.10.8-1. The latest one is 7.11.x. Do you
think 7.10.8-1 is good enough for NTLM support? Do we need to upgrade to

> (Note that when using PUT or POST, the current libcurl is not behaving
> correctly if more than one type is set with CURLOPT_HTTPAUTH.)

[Xiuping Hu] So that this mean CURLAUTH_ANY does not behave correctly?
If I switch between CURLAUTH_NTLM or CURLAUTH_BASIC, the both can do the
right thing?

> > Inside a proxy code, do we care about sending the base64 encoded
> > Or it is done by curl?
> I don't understand what "base64 encoded message" you're talking about. Can
> you
> elaborate?
[Xiuping Hu] Currently, we use curl to do the basic auth forwarding, when we
put the username:password in to the curl handler, we do base64encoding
before send to it, does this necessary?

> > Could you please send me a simple C code that make both Basic and NTLM
> work?
> I don't have anything prepared.

[Xiuping Hu] Do we have any C API for curl book available? Could you please
refer one to me?
> > curl_easy_setopt(d_curl, CURLOPT_HTTPAUTH, (long)CURLAUTH_ANY);
> >
> > curl_easy_setopt(d_curl, CURLOPT_USERPWD, "user:pass");
> > curl_easy_setopt(d_curl, CURLOPT_PROXYUSERPWD, "user:pass");
> >
> > ....
> >
> > CURLcode res = curl_easy_perform(m_curl);
> >
> > Is this all I need?
> Yes it is.
> > Do I need to decide if it Basic, do base64encode, if it is NTLM,
> construct
> > the type2 and type3 Message for each 401 respond?
> Oh no. libcurl hides all the details on how the authentication is actually
> made. No need for you to worry about that!
Thanks a lot!

[Xiuping Hu] Have a great day!
Received on 2004-02-06