cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: Name lookup/DNS resolution mechanism of libcurl

From: Michael-O <1983-01-06_at_gmx.net>
Date: Wed, 10 Apr 2013 21:48:09 +0200

Am 2013-04-09 21:10, schrieb Guenter:
> Hi Mike,
> On 09.04.2013 20:46, Michael-O wrote:
>> Am 2013-04-09 20:31, schrieb Guenter:
>>> yes, today commited two patches - one for curl and one for c-ares ...
>>
>> Do you want to to clone from Git and test it?
> sure, that would be great!
> But remember that Daniel might at any time tag and release ...
> so only a short while for last-minute hot-fixes :-P

Hi Günter,

I don't mind have them in 7.30.1 as long as (lib)curl gets improved. I
have checkws the github diffs which are very simple.

Now here are my results, I make several compilation runs. In all cases,
I compiled c-ares one with MinGW which ran flawlessly.

1. Plain vanilla curl with
- Added #define HTTP_ONLY in lib\config-win32.h
> set LIBCARES_PATH=D:\Projekte\c-ares-master
> mingw32-make mingw32-winssl-ares
> src\curl --version
curl 7.30.0-DEV (i386-pc-win32) libcurl/7.30.0-DEV WinSSL c-ares/1.10.0-DEV
Protocols: http https
Features: AsynchDNS GSS-Negotiate Largefile NTLM SSL SSPI

Compiles fine.

2. Plain vanilla curl with
- Added #define HTTP_ONLY in lib\config-win32.h
- LIBCARES_PATH changed directly in Makefile.m32
> mingw32-make mingw32-winssl-ares
mingw32-make[1]: *** No rule to make target '../ares/libcares.a', needed
by 'curl.exe'. Stop.
mingw32-make[1]: Leaving directory 'D:/Projekte/curl-master/src'
Makefile:87: recipe for target 'mingw32-winssl-ares' failed
mingw32-make: *** [mingw32-winssl-ares] Error 2

For some reason, make does not realize that LIBCARES_PATH has been
changed internally.

So I continued with solution 1 for further testing.

Now I tried to compile my simple C file against that libcurl dynamically:
> gcc "-LD:\\Projekte\\curl-master\\lib" -o curlsimple.exe curlsimple.o
-lcurldll

I presume that curldll is statically linked against libcares, thus
includes it.

enabled VirtualBox Host-only Adapter and chaged PATH accordingly

> curlsimple http://curl.haxx.se
Provided URL: http://curl.haxx.se
   % Total % Received % Xferd Average Speed Time Time Time
  Current
                                  Dload Upload Total Spent Left
  Speed
100 11444 100 11444 0 0 73358 0 --:--:-- --:--:-- --:--:--
73358
Name lookup time: 0.031000 s
Connect time: 0.047000 s
Pretransfer time: 0.000000 s
start transfer time: 0.062000 s
Total time: 0.156000 s

Perfect! c-ares does not suffer from this problem.

What I haven't tried:

1. Link statically against libcurl
2. Enable and compile other protocols only
3. Enable sync DNS resolver

Are you interested in these results too?

Grüße aus Berlin,

Michael

-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html
Received on 2013-04-10