cURL
Haxx ad
libcurl

curl's project page on SourceForge.net

Sponsors:
Haxx

cURL > Mailing List > Monthly Index > Single Mail

curl-tracker Archives

[ curl-Bugs-3370249 ] [curl 7.21.7 and older] mem leak in DNS lookup

From: SourceForge.net <noreply_at_sourceforge.net>
Date: Tue, 26 Jul 2011 17:57:12 +0200

Bugs item #3370249, was opened at 2011-07-18 14:55
Message generated for change (Comment added) made by rudlof
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=100976&aid=3370249&group_id=976

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: libcurl
Group: bad behaviour
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Stephan Rudlof (rudlof)
Assigned to: Daniel Stenberg (bagder)
Summary: [curl 7.21.7 and older] mem leak in DNS lookup

Initial Comment:
In a server app polling permanently once per second, there is a mem leak: it is about 5MB per day.
- Upgrading to curl 7.21.7 (by installing manually) has not helped.
- Looking into the problem with valgrind (see below) has supported the guess cURL being the suspect; moreover it has suggested that DNS lookup is part of the problem.
- Looking into cURL source code, DNS seems to be cached somehow: possibly there is the problem. Probably Curl_freeaddrinfo() won't be called enough, at least.
  - A further clue could be, that reiniting the connection for each poll - curl_easy_cleanup(), curl_easy_init(), ... - has not helped!

After all that a workaround has been found: just giving the numeric IP instead of an unresolved server name as part of the URL *avoids* the leak, obviously no DNS is needed then.

Regards,
Stephan

Version
------------
curl 7.21.7 (x86_64-unknown-linux-gnu) libcurl/7.21.7 OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.15 libssh2/1.2.6
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp
Features: IDN IPv6 Largefile NTLM SSL libz

valgrind output
------------------------
==3618== HEAP SUMMARY:
==3618== in use at exit: 3,974 bytes in 65 blocks
==3618== total heap usage: 302,914 allocs, 302,849 frees, 535,873,612 bytes allocated
==3618==
==3618== 16 bytes in 1 blocks are possibly lost in loss record 1 of 16
==3618== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==3618== by 0x5912C31: __nss_lookup_function (nsswitch.c:356)
==3618== by 0x58DF3F3: gaih_inet (getaddrinfo.c:707)
==3618== by 0x58E1781: getaddrinfo (getaddrinfo.c:2153)
==3618== by 0x4E6F291: Curl_getaddrinfo_ex (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E6652C: Curl_getaddrinfo (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3ABA8: Curl_resolv (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3AE67: Curl_resolv_timeout (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4A031: resolve_server (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4C0E0: create_conn (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4CC18: Curl_connect (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5B5E7: Curl_do_perform (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x41C1FC: HTTPConnection::doPOST(std::string const&, std::vector<std::string, std::allocator<std::string> > const*) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x41D200: ECSConnection::pollFifo(unsigned int) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x454DCD: CC_Controller::getSolutionPostResult() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x457ECA: CC_Controller::clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40BA96: clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40D68C: main (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 21 bytes in 1 blocks are still reachable in loss record 2 of 16
==3618== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==3618== by 0x4005C7D: open_path (dl-load.c:1912)
==3618== by 0x400791C: _dl_map_object (dl-load.c:2164)
==3618== by 0x4011BC8: dl_open_worker (dl-open.c:225)
==3618== by 0x400D5E5: _dl_catch_error (dl-error.c:178)
==3618== by 0x4011609: _dl_open (dl-open.c:554)
==3618== by 0x593948F: do_dlopen (dl-libc.c:86)
==3618== by 0x400D5E5: _dl_catch_error (dl-error.c:178)
==3618== by 0x593952E: dlerror_run (dl-libc.c:47)
==3618== by 0x5939626: __libc_dlopen_mode (dl-libc.c:160)
==3618== by 0x5912E33: __nss_lookup_function (nsswitch.c:405)
==3618== by 0x58DF3F3: gaih_inet (getaddrinfo.c:707)
==3618== by 0x58E1781: getaddrinfo (getaddrinfo.c:2153)
==3618== by 0x4E6F291: Curl_getaddrinfo_ex (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E6652C: Curl_getaddrinfo (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3ABA8: Curl_resolv (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3AE67: Curl_resolv_timeout (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4A031: resolve_server (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4C0E0: create_conn (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4CC18: Curl_connect (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5B5E7: Curl_do_perform (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x41C1FC: HTTPConnection::doPOST(std::string const&, std::vector<std::string, std::allocator<std::string> > const*) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x41D200: ECSConnection::pollFifo(unsigned int) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x454DCD: CC_Controller::getSolutionPostResult() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 21 bytes in 1 blocks are still reachable in loss record 3 of 16
==3618== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==3618== by 0x400A7C5: _dl_new_object (dl-object.c:150)
==3618== by 0x4005F35: _dl_map_object_from_fd (dl-load.c:969)
==3618== by 0x4007617: _dl_map_object (dl-load.c:2240)
==3618== by 0x4011BC8: dl_open_worker (dl-open.c:225)
==3618== by 0x400D5E5: _dl_catch_error (dl-error.c:178)
==3618== by 0x4011609: _dl_open (dl-open.c:554)
==3618== by 0x593948F: do_dlopen (dl-libc.c:86)
==3618== by 0x400D5E5: _dl_catch_error (dl-error.c:178)
==3618== by 0x593952E: dlerror_run (dl-libc.c:47)
==3618== by 0x5939626: __libc_dlopen_mode (dl-libc.c:160)
==3618== by 0x5912E33: __nss_lookup_function (nsswitch.c:405)
==3618== by 0x58DF3F3: gaih_inet (getaddrinfo.c:707)
==3618== by 0x58E1781: getaddrinfo (getaddrinfo.c:2153)
==3618== by 0x4E6F291: Curl_getaddrinfo_ex (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E6652C: Curl_getaddrinfo (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3ABA8: Curl_resolv (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3AE67: Curl_resolv_timeout (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4A031: resolve_server (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4C0E0: create_conn (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4CC18: Curl_connect (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5B5E7: Curl_do_perform (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x41C1FC: HTTPConnection::doPOST(std::string const&, std::vector<std::string, std::allocator<std::string> > const*) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x41D200: ECSConnection::pollFifo(unsigned int) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 24 bytes in 1 blocks are still reachable in loss record 4 of 16
==3618== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==3618== by 0x692A961: CRYPTO_malloc (in /usr/lib/libcrypto.so.0.9.8)
==3618== by 0x669667B: ??? (in /usr/lib/libssl.so.0.9.8)
==3618== by 0x6696868: SSL_COMP_get_compression_methods (in /usr/lib/libssl.so.0.9.8)
==3618== by 0x669CFE3: SSL_library_init (in /usr/lib/libssl.so.0.9.8)
==3618== by 0x4E53C02: Curl_ossl_init (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5C668: curl_global_init (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x6251E6: CurlGlobalEnv::CurlGlobalEnv() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40BB9F: main (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 24 bytes in 1 blocks are still reachable in loss record 5 of 16
==3618== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==3618== by 0x5912D8C: __nss_lookup_function (nsswitch.c:796)
==3618== by 0x58DF3F3: gaih_inet (getaddrinfo.c:707)
==3618== by 0x58E1781: getaddrinfo (getaddrinfo.c:2153)
==3618== by 0x4E6F291: Curl_getaddrinfo_ex (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E6652C: Curl_getaddrinfo (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3ABA8: Curl_resolv (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3AE67: Curl_resolv_timeout (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4A031: resolve_server (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4C0E0: create_conn (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4CC18: Curl_connect (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5B5E7: Curl_do_perform (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x41C1FC: HTTPConnection::doPOST(std::string const&, std::vector<std::string, std::allocator<std::string> > const*) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x41D200: ECSConnection::pollFifo(unsigned int) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x454DCD: CC_Controller::getSolutionPostResult() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x457ECA: CC_Controller::clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40BA96: clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40D68C: main (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 32 bytes in 1 blocks are still reachable in loss record 6 of 16
==3618== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==3618== by 0x692A961: CRYPTO_malloc (in /usr/lib/libcrypto.so.0.9.8)
==3618== by 0x6988D2E: sk_new (in /usr/lib/libcrypto.so.0.9.8)
==3618== by 0x6696659: ??? (in /usr/lib/libssl.so.0.9.8)
==3618== by 0x6696868: SSL_COMP_get_compression_methods (in /usr/lib/libssl.so.0.9.8)
==3618== by 0x669CFE3: SSL_library_init (in /usr/lib/libssl.so.0.9.8)
==3618== by 0x4E53C02: Curl_ossl_init (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5C668: curl_global_init (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x6251E6: CurlGlobalEnv::CurlGlobalEnv() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40BB9F: main (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 32 bytes in 1 blocks are still reachable in loss record 7 of 16
==3618== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==3618== by 0x692A961: CRYPTO_malloc (in /usr/lib/libcrypto.so.0.9.8)
==3618== by 0x6988D4C: sk_new (in /usr/lib/libcrypto.so.0.9.8)
==3618== by 0x6696659: ??? (in /usr/lib/libssl.so.0.9.8)
==3618== by 0x6696868: SSL_COMP_get_compression_methods (in /usr/lib/libssl.so.0.9.8)
==3618== by 0x669CFE3: SSL_library_init (in /usr/lib/libssl.so.0.9.8)
==3618== by 0x4E53C02: Curl_ossl_init (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5C668: curl_global_init (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x6251E6: CurlGlobalEnv::CurlGlobalEnv() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40BB9F: main (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 32 bytes in 1 blocks are possibly lost in loss record 8 of 16
==3618== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==3618== by 0x5900777: tsearch (tsearch.c:281)
==3618== by 0x5912BC9: __nss_lookup_function (nsswitch.c:342)
==3618== by 0x58DF3F3: gaih_inet (getaddrinfo.c:707)
==3618== by 0x58E1781: getaddrinfo (getaddrinfo.c:2153)
==3618== by 0x4E6F291: Curl_getaddrinfo_ex (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E6652C: Curl_getaddrinfo (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3ABA8: Curl_resolv (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3AE67: Curl_resolv_timeout (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4A031: resolve_server (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4C0E0: create_conn (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4CC18: Curl_connect (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5B5E7: Curl_do_perform (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x41C1FC: HTTPConnection::doPOST(std::string const&, std::vector<std::string, std::allocator<std::string> > const*) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x41D200: ECSConnection::pollFifo(unsigned int) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x454DCD: CC_Controller::getSolutionPostResult() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x457ECA: CC_Controller::clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40BA96: clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40D68C: main (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 72 bytes in 1 blocks are still reachable in loss record 9 of 16
==3618== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==3618== by 0x400BF54: _dl_map_object_deps (dl-deps.c:506)
==3618== by 0x4011C25: dl_open_worker (dl-open.c:262)
==3618== by 0x400D5E5: _dl_catch_error (dl-error.c:178)
==3618== by 0x4011609: _dl_open (dl-open.c:554)
==3618== by 0x593948F: do_dlopen (dl-libc.c:86)
==3618== by 0x400D5E5: _dl_catch_error (dl-error.c:178)
==3618== by 0x593952E: dlerror_run (dl-libc.c:47)
==3618== by 0x5939626: __libc_dlopen_mode (dl-libc.c:160)
==3618== by 0x5912E33: __nss_lookup_function (nsswitch.c:405)
==3618== by 0x58DF3F3: gaih_inet (getaddrinfo.c:707)
==3618== by 0x58E1781: getaddrinfo (getaddrinfo.c:2153)
==3618== by 0x4E6F291: Curl_getaddrinfo_ex (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E6652C: Curl_getaddrinfo (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3ABA8: Curl_resolv (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3AE67: Curl_resolv_timeout (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4A031: resolve_server (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4C0E0: create_conn (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4CC18: Curl_connect (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5B5E7: Curl_do_perform (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x41C1FC: HTTPConnection::doPOST(std::string const&, std::vector<std::string, std::allocator<std::string> > const*) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x41D200: ECSConnection::pollFifo(unsigned int) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x454DCD: CC_Controller::getSolutionPostResult() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x457ECA: CC_Controller::clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 122 bytes in 2 blocks are possibly lost in loss record 10 of 16
==3618== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==3618== by 0x591305C: nss_parse_service_list (nsswitch.c:622)
==3618== by 0x591384D: __nss_database_lookup (nsswitch.c:164)
==3618== by 0x58E00FB: gaih_inet (getaddrinfo.c:683)
==3618== by 0x58E1781: getaddrinfo (getaddrinfo.c:2153)
==3618== by 0x4E6F291: Curl_getaddrinfo_ex (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E6652C: Curl_getaddrinfo (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3ABA8: Curl_resolv (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3AE67: Curl_resolv_timeout (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4A031: resolve_server (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4C0E0: create_conn (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4CC18: Curl_connect (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5B5E7: Curl_do_perform (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x41C1FC: HTTPConnection::doPOST(std::string const&, std::vector<std::string, std::allocator<std::string> > const*) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x41D200: ECSConnection::pollFifo(unsigned int) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x454DCD: CC_Controller::getSolutionPostResult() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x457ECA: CC_Controller::clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40BA96: clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40D68C: main (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 192 bytes in 1 blocks are still reachable in loss record 11 of 16
==3618== at 0x4C2380C: calloc (vg_replace_malloc.c:467)
==3618== by 0x400F233: _dl_check_map_versions (dl-version.c:299)
==3618== by 0x4011E78: dl_open_worker (dl-open.c:268)
==3618== by 0x400D5E5: _dl_catch_error (dl-error.c:178)
==3618== by 0x4011609: _dl_open (dl-open.c:554)
==3618== by 0x593948F: do_dlopen (dl-libc.c:86)
==3618== by 0x400D5E5: _dl_catch_error (dl-error.c:178)
==3618== by 0x593952E: dlerror_run (dl-libc.c:47)
==3618== by 0x5939626: __libc_dlopen_mode (dl-libc.c:160)
==3618== by 0x5912E33: __nss_lookup_function (nsswitch.c:405)
==3618== by 0x58DF3F3: gaih_inet (getaddrinfo.c:707)
==3618== by 0x58E1781: getaddrinfo (getaddrinfo.c:2153)
==3618== by 0x4E6F291: Curl_getaddrinfo_ex (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E6652C: Curl_getaddrinfo (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3ABA8: Curl_resolv (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3AE67: Curl_resolv_timeout (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4A031: resolve_server (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4C0E0: create_conn (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4CC18: Curl_connect (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5B5E7: Curl_do_perform (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x41C1FC: HTTPConnection::doPOST(std::string const&, std::vector<std::string, std::allocator<std::string> > const*) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x41D200: ECSConnection::pollFifo(unsigned int) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x454DCD: CC_Controller::getSolutionPostResult() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x457ECA: CC_Controller::clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 208 bytes in 13 blocks are indirectly lost in loss record 12 of 16
==3618== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==3618== by 0x5912C31: __nss_lookup_function (nsswitch.c:356)
==3618== by 0x58DF3F3: gaih_inet (getaddrinfo.c:707)
==3618== by 0x58E1781: getaddrinfo (getaddrinfo.c:2153)
==3618== by 0x4E6F291: Curl_getaddrinfo_ex (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E6652C: Curl_getaddrinfo (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3ABA8: Curl_resolv (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3AE67: Curl_resolv_timeout (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4A031: resolve_server (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4C0E0: create_conn (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4CC18: Curl_connect (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5B5E7: Curl_do_perform (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x41C1FC: HTTPConnection::doPOST(std::string const&, std::vector<std::string, std::allocator<std::string> > const*) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x41D200: ECSConnection::pollFifo(unsigned int) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x454DCD: CC_Controller::getSolutionPostResult() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x457ECA: CC_Controller::clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40BA96: clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40D68C: main (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 416 bytes in 13 blocks are indirectly lost in loss record 13 of 16
==3618== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==3618== by 0x5900777: tsearch (tsearch.c:281)
==3618== by 0x5912BC9: __nss_lookup_function (nsswitch.c:342)
==3618== by 0x58DF3F3: gaih_inet (getaddrinfo.c:707)
==3618== by 0x58E1781: getaddrinfo (getaddrinfo.c:2153)
==3618== by 0x4E6F291: Curl_getaddrinfo_ex (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E6652C: Curl_getaddrinfo (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3ABA8: Curl_resolv (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3AE67: Curl_resolv_timeout (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4A031: resolve_server (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4C0E0: create_conn (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4CC18: Curl_connect (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5B5E7: Curl_do_perform (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x41C1FC: HTTPConnection::doPOST(std::string const&, std::vector<std::string, std::allocator<std::string> > const*) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x41D200: ECSConnection::pollFifo(unsigned int) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x454DCD: CC_Controller::getSolutionPostResult() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x457ECA: CC_Controller::clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40BA96: clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40D68C: main (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 806 bytes in 13 blocks are indirectly lost in loss record 14 of 16
==3618== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==3618== by 0x591305C: nss_parse_service_list (nsswitch.c:622)
==3618== by 0x591384D: __nss_database_lookup (nsswitch.c:164)
==3618== by 0x58E00FB: gaih_inet (getaddrinfo.c:683)
==3618== by 0x58E1781: getaddrinfo (getaddrinfo.c:2153)
==3618== by 0x4E6F291: Curl_getaddrinfo_ex (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E6652C: Curl_getaddrinfo (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3ABA8: Curl_resolv (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3AE67: Curl_resolv_timeout (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4A031: resolve_server (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4C0E0: create_conn (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4CC18: Curl_connect (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5B5E7: Curl_do_perform (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x41C1FC: HTTPConnection::doPOST(std::string const&, std::vector<std::string, std::allocator<std::string> > const*) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x41D200: ECSConnection::pollFifo(unsigned int) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x454DCD: CC_Controller::getSolutionPostResult() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x457ECA: CC_Controller::clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40BA96: clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40D68C: main (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 1,176 bytes in 1 blocks are still reachable in loss record 15 of 16
==3618== at 0x4C2380C: calloc (vg_replace_malloc.c:467)
==3618== by 0x400A4DE: _dl_new_object (dl-object.c:52)
==3618== by 0x4005F35: _dl_map_object_from_fd (dl-load.c:969)
==3618== by 0x4007617: _dl_map_object (dl-load.c:2240)
==3618== by 0x4011BC8: dl_open_worker (dl-open.c:225)
==3618== by 0x400D5E5: _dl_catch_error (dl-error.c:178)
==3618== by 0x4011609: _dl_open (dl-open.c:554)
==3618== by 0x593948F: do_dlopen (dl-libc.c:86)
==3618== by 0x400D5E5: _dl_catch_error (dl-error.c:178)
==3618== by 0x593952E: dlerror_run (dl-libc.c:47)
==3618== by 0x5939626: __libc_dlopen_mode (dl-libc.c:160)
==3618== by 0x5912E33: __nss_lookup_function (nsswitch.c:405)
==3618== by 0x58DF3F3: gaih_inet (getaddrinfo.c:707)
==3618== by 0x58E1781: getaddrinfo (getaddrinfo.c:2153)
==3618== by 0x4E6F291: Curl_getaddrinfo_ex (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E6652C: Curl_getaddrinfo (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3ABA8: Curl_resolv (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3AE67: Curl_resolv_timeout (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4A031: resolve_server (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4C0E0: create_conn (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4CC18: Curl_connect (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5B5E7: Curl_do_perform (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x41C1FC: HTTPConnection::doPOST(std::string const&, std::vector<std::string, std::allocator<std::string> > const*) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x41D200: ECSConnection::pollFifo(unsigned int) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== 2,210 (780 direct, 1,430 indirect) bytes in 13 blocks are definitely lost in loss record 16 of 16
==3618== at 0x4C244E8: malloc (vg_replace_malloc.c:236)
==3618== by 0x591305C: nss_parse_service_list (nsswitch.c:622)
==3618== by 0x591384D: __nss_database_lookup (nsswitch.c:164)
==3618== by 0x58E00FB: gaih_inet (getaddrinfo.c:683)
==3618== by 0x58E1781: getaddrinfo (getaddrinfo.c:2153)
==3618== by 0x4E6F291: Curl_getaddrinfo_ex (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E6652C: Curl_getaddrinfo (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3ABA8: Curl_resolv (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E3AE67: Curl_resolv_timeout (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4A031: resolve_server (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4C0E0: create_conn (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E4CC18: Curl_connect (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x4E5B5E7: Curl_do_perform (in /home/sr/Projects/NumLab/trunk/Backend/local/lib/libcurl.so.4.2.0)
==3618== by 0x41C1FC: HTTPConnection::doPOST(std::string const&, std::vector<std::string, std::allocator<std::string> > const*) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x41D200: ECSConnection::pollFifo(unsigned int) (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x454DCD: CC_Controller::getSolutionPostResult() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x457ECA: CC_Controller::clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40BA96: clientLoop() (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618== by 0x40D68C: main (in /home/sr/Projects/NumLab/trunk/Backend/bin/vip_cc_memLeak)
==3618==
==3618== LEAK SUMMARY:
==3618== definitely lost: 780 bytes in 13 blocks
==3618== indirectly lost: 1,430 bytes in 39 blocks
==3618== possibly lost: 170 bytes in 4 blocks
==3618== still reachable: 1,594 bytes in 9 blocks
==3618== suppressed: 0 bytes in 0 blocks
==3618==
==3618== For counts of detected and suppressed errors, rerun with: -v
==3618== ERROR SUMMARY: 20 errors from 14 contexts (suppressed: 4 from 4)

----------------------------------------------------------------------

>Comment By: Stephan Rudlof (rudlof)
Date: 2011-07-26 17:57

Message:
I'm sorry: I don't have the time for building a small stand-alone app out
of quiet specific sources (I'm at work here).
And it's questionable, if a small stand-alone app would easily trigger the
same error, because the system config as a whole is specific: certificates,
https.

But I can give you the sources for handling libcurl communication to give
you an idea, about libcurl settings used (see ECSConnection.*pp,
Constants.hpp).

----------------------------------------------------------------------

Comment By: Daniel Stenberg (bagder)
Date: 2011-07-18 19:43

Message:
Can you please show us the source code for a small stand-alone app that
triggers this memory leak?

----------------------------------------------------------------------

You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=100976&aid=3370249&group_id=976
Received on 2011-07-26

These mail archives are generated by hypermail.

donate! Page updated November 12, 2010.
web site info

File upload with ASP.NET