cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: Help tracking down libcurl + nss memory leak

From: Toshio Kuratomi <a.badger_at_gmail.com>
Date: Wed, 08 Apr 2009 14:27:20 -0700

Daniel Stenberg wrote:
> On Wed, 8 Apr 2009, Toshio Kuratomi wrote:
>> I'm guessing this is a bug in the libcurl+nss or nss library but I'd
>> like to know my test case is fine before launching into that code.
>
> Did you try to build debug versions of the libs and run valgrind on the
> test app to see where the memory is allocated? I'll try to give it shot
> myself...
>
I ran valgrind --leak-check=full --show-reachable=yes ./break

ControlC'd after 100 iterations.

Attaching the output.

-Toshio

==27925==
==27925== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 68 from 1)
==27925== malloc/free: in use at exit: 110,345,897 bytes in 266,688 blocks.
==27925== malloc/free: 374,931 allocs, 108,243 frees, 222,771,869 bytes allocated.
==27925== For counts of detected errors, rerun with: -v
==27925== searching for pointers to 266,688 not-freed blocks.
==27925== checked 110,295,236 bytes.
==27925==
==27925== 6 bytes in 1 blocks are still reachable in loss record 1 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x75FB959: (within /lib/libnspr4.so)
==27925== by 0x76020D4: (within /lib/libnspr4.so)
==27925== by 0x6DBA3A3: Curl_nss_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DB03CB: Curl_ssl_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA597C: curl_global_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x80486DD: main (in /var/tmp/break)
==27925==
==27925==
==27925== 9 bytes in 1 blocks are still reachable in loss record 2 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x7588BFC: (within /lib/libselinux.so.1)
==27925== by 0x759189C: (within /lib/libselinux.so.1)
==27925== by 0x75806EF: (within /lib/libselinux.so.1)
==27925== by 0x3721EC: _dl_init (in /lib/ld-2.9.so)
==27925== by 0x36288E: (within /lib/ld-2.9.so)
==27925==
==27925==
==27925== 12 bytes in 1 blocks are still reachable in loss record 3 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x6DA898E: Curl_llist_insert_next (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA9014: Curl_hash_add (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D862D7: Curl_cache_addr (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D8652C: Curl_resolv (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D866D4: Curl_resolv_timeout (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B7D1: create_conn (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B9EE: Curl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA4A78: Curl_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57A2: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 12 bytes in 1 blocks are still reachable in loss record 4 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x6DA8FC6: Curl_hash_add (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D862D7: Curl_cache_addr (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D8652C: Curl_resolv (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D866D4: Curl_resolv_timeout (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B7D1: create_conn (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B9EE: Curl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA4A78: Curl_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57A2: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 12 bytes in 1 blocks are still reachable in loss record 5 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x6D862A6: Curl_cache_addr (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D8652C: Curl_resolv (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D866D4: Curl_resolv_timeout (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B7D1: create_conn (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B9EE: Curl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA4A78: Curl_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57A2: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 12 bytes in 1 blocks are still reachable in loss record 6 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x6D963D5: Curl_mk_connc (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA5813: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 20 bytes in 1 blocks are still reachable in loss record 7 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x6D963F8: Curl_mk_connc (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA5813: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 20 bytes in 1 blocks are still reachable in loss record 8 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x5290C5: _dlerror_run (in /lib/libdl-2.9.so)
==27925== by 0x528B60: dlopen@@GLIBC_2.1 (in /lib/libdl-2.9.so)
==27925== by 0x75FC247: (within /lib/libnspr4.so)
==27925== by 0x7601F5E: (within /lib/libnspr4.so)
==27925== by 0x6DBA3A3: Curl_nss_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DB03CB: Curl_ssl_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA597C: curl_global_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x80486DD: main (in /var/tmp/break)
==27925==
==27925==
==27925== 24 bytes in 1 blocks are still reachable in loss record 9 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x6DA91E4: Curl_hash_alloc (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D860AB: Curl_mk_dnscache (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57EC: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 28 bytes in 1 blocks are still reachable in loss record 10 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x6DA8FD4: Curl_hash_add (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D862D7: Curl_cache_addr (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D8652C: Curl_resolv (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D866D4: Curl_resolv_timeout (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B7D1: create_conn (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B9EE: Curl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA4A78: Curl_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57A2: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 28 bytes in 1 blocks are still reachable in loss record 11 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x6DA90E1: Curl_hash_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA920B: Curl_hash_alloc (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D860AB: Curl_mk_dnscache (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57EC: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 32 bytes in 1 blocks are still reachable in loss record 12 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x6D9D7E6: alloc_addbyter (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9DE17: dprintf_formatf (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9F378: curl_maprintf (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DB8874: nss_load_cert (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DB944B: Curl_nss_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DB033E: Curl_ssl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D8F869: Curl_http_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D969C0: Curl_protocol_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9BDA9: Curl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA4A78: Curl_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57A2: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925==
==27925==
==27925== 36 bytes in 1 blocks are still reachable in loss record 13 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x3705F1: _dl_map_object_deps (in /lib/ld-2.9.so)
==27925== by 0x3766DC: dl_open_worker (in /lib/ld-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x375F5D: _dl_open (in /lib/ld-2.9.so)
==27925== by 0x528C2B: dlopen_doit (in /lib/libdl-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x52905B: _dlerror_run (in /lib/libdl-2.9.so)
==27925== by 0x528B60: dlopen@@GLIBC_2.1 (in /lib/libdl-2.9.so)
==27925== by 0x75FB564: PR_LoadLibraryWithFlags (in /lib/libnspr4.so)
==27925== by 0x6C681AA: (within /lib/libnss3.so)
==27925== by 0x6C68204: (within /lib/libnss3.so)
==27925==
==27925==
==27925== 43 bytes in 2 blocks are still reachable in loss record 14 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x367B0E: local_strdup (in /lib/ld-2.9.so)
==27925== by 0x36B5F3: _dl_map_object (in /lib/ld-2.9.so)
==27925== by 0x36FF45: openaux (in /lib/ld-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x370584: _dl_map_object_deps (in /lib/ld-2.9.so)
==27925== by 0x3766DC: dl_open_worker (in /lib/ld-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x375F5D: _dl_open (in /lib/ld-2.9.so)
==27925== by 0x528C2B: dlopen_doit (in /lib/libdl-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x52905B: _dlerror_run (in /lib/libdl-2.9.so)
==27925==
==27925==
==27925== 58 bytes in 3 blocks are still reachable in loss record 15 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x368F94: expand_dynamic_string_token (in /lib/ld-2.9.so)
==27925== by 0x36B2A1: _dl_map_object (in /lib/ld-2.9.so)
==27925== by 0x37667C: dl_open_worker (in /lib/ld-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x375F5D: _dl_open (in /lib/ld-2.9.so)
==27925== by 0x528C2B: dlopen_doit (in /lib/libdl-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x52905B: _dlerror_run (in /lib/libdl-2.9.so)
==27925== by 0x528B60: dlopen@@GLIBC_2.1 (in /lib/libdl-2.9.so)
==27925== by 0x75FB564: PR_LoadLibraryWithFlags (in /lib/libnspr4.so)
==27925== by 0x6C681AA: (within /lib/libnss3.so)
==27925==
==27925==
==27925== 64 bytes in 4 blocks are still reachable in loss record 16 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x6DBAB69: Curl_getaddrinfo_ex (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DAEE66: Curl_getaddrinfo (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D864E9: Curl_resolv (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D866D4: Curl_resolv_timeout (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B7D1: create_conn (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B9EE: Curl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA4A78: Curl_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57A2: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 72 bytes in 3 blocks are still reachable in loss record 17 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x4584743: __get_buf (hash_buf.c:209)
==27925== by 0x458340F: hash_access (hash.c:784)
==27925== by 0x45838E5: hash_get (hash.c:673)
==27925== by 0x45696F3: dbs_get (dbmshim.c:423)
==27925== by 0x45762B3: certdb_Get (pcertdb.c:267)
==27925== by 0x4576320: ReadDBEntry (pcertdb.c:508)
==27925== by 0x4577C69: nsslowcert_GetVersionNumber (pcertdb.c:2884)
==27925== by 0x457A7D2: nsslowcert_OpenCertDB (pcertdb.c:4114)
==27925== by 0x45730CB: legacy_Open (lginit.c:384)
==27925== by 0x45367E2: (within /lib/libsoftokn3.so)
==27925== by 0x4551B4A: (within /lib/libsoftokn3.so)
==27925==
==27925==
==27925== 72 bytes in 2 blocks are still reachable in loss record 18 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x4583F25: __hash_open (hash.c:259)
==27925== by 0x458272B: dbopen (db.c:111)
==27925== by 0x45691FB: dbsopen (dbmshim.c:621)
==27925== by 0x457AADE: nsslowcert_OpenCertDB (pcertdb.c:4109)
==27925== by 0x45730CB: legacy_Open (lginit.c:384)
==27925== by 0x45367E2: (within /lib/libsoftokn3.so)
==27925== by 0x4551B4A: (within /lib/libsoftokn3.so)
==27925== by 0x453BFDE: (within /lib/libsoftokn3.so)
==27925== by 0x453C2BF: (within /lib/libsoftokn3.so)
==27925== by 0x453C66F: (within /lib/libsoftokn3.so)
==27925== by 0x453C752: (within /lib/libsoftokn3.so)
==27925==
==27925==
==27925== 88 bytes in 1 blocks are definitely lost in loss record 19 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x75FC039: PR_Calloc (in /lib/libnspr4.so)
==27925== by 0x760B976: PR_NewLock (in /lib/libnspr4.so)
==27925== by 0x45F7B5C: (within /lib/libnsspem.so)
==27925== by 0x45F76C7: (within /lib/libnsspem.so)
==27925== by 0x4603153: (within /lib/libnsspem.so)
==27925== by 0x45F0970: (within /lib/libnsspem.so)
==27925== by 0x6C68572: (within /lib/libnss3.so)
==27925== by 0x6C68B97: (within /lib/libnss3.so)
==27925== by 0x6C7BFDA: SECMOD_LoadModule (in /lib/libnss3.so)
==27925== by 0x6C7C222: SECMOD_LoadUserModule (in /lib/libnss3.so)
==27925== by 0x6DB9062: Curl_nss_connect (in /usr/lib/libcurl.so.4.1.1)
==27925==
==27925==
==27925== 101 bytes in 5 blocks are still reachable in loss record 20 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x36DB7C: _dl_new_object (in /lib/ld-2.9.so)
==27925== by 0x369EAA: _dl_map_object_from_fd (in /lib/ld-2.9.so)
==27925== by 0x36B362: _dl_map_object (in /lib/ld-2.9.so)
==27925== by 0x37667C: dl_open_worker (in /lib/ld-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x375F5D: _dl_open (in /lib/ld-2.9.so)
==27925== by 0x528C2B: dlopen_doit (in /lib/libdl-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x52905B: _dlerror_run (in /lib/libdl-2.9.so)
==27925== by 0x528B60: dlopen@@GLIBC_2.1 (in /lib/libdl-2.9.so)
==27925== by 0x75FB564: PR_LoadLibraryWithFlags (in /lib/libnspr4.so)
==27925==
==27925==
==27925== 128 bytes in 4 blocks are still reachable in loss record 21 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x6DBAB11: Curl_getaddrinfo_ex (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DAEE66: Curl_getaddrinfo (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D864E9: Curl_resolv (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D866D4: Curl_resolv_timeout (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B7D1: create_conn (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B9EE: Curl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA4A78: Curl_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57A2: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 160 bytes in 10 blocks are still reachable in loss record 22 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x6DA8935: Curl_llist_alloc (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA9126: Curl_hash_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA920B: Curl_hash_alloc (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D860AB: Curl_mk_dnscache (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57EC: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 256 bytes in 1 blocks are still reachable in loss record 23 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x6D96814: Curl_open (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA59D6: curl_easy_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804870E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 258 bytes in 1 blocks are still reachable in loss record 24 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x6D99E2A: create_conn (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B9EE: Curl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA4A78: Curl_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57A2: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 258 bytes in 1 blocks are still reachable in loss record 25 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x6D99E49: create_conn (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B9EE: Curl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA4A78: Curl_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57A2: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 304 bytes in 4 blocks are still reachable in loss record 26 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x3706C7: _dl_map_object_deps (in /lib/ld-2.9.so)
==27925== by 0x3766DC: dl_open_worker (in /lib/ld-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x375F5D: _dl_open (in /lib/ld-2.9.so)
==27925== by 0x528C2B: dlopen_doit (in /lib/libdl-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x52905B: _dlerror_run (in /lib/libdl-2.9.so)
==27925== by 0x528B60: dlopen@@GLIBC_2.1 (in /lib/libdl-2.9.so)
==27925== by 0x75FB564: PR_LoadLibraryWithFlags (in /lib/libnspr4.so)
==27925== by 0x6C681AA: (within /lib/libnss3.so)
==27925== by 0x6C68204: (within /lib/libnss3.so)
==27925==
==27925==
==27925== 320 bytes in 25 blocks are still reachable in loss record 27 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x3FE0EF: strdup (in /lib/libc-2.9.so)
==27925== by 0x758F1B3: (within /lib/libselinux.so.1)
==27925== by 0x759189C: (within /lib/libselinux.so.1)
==27925== by 0x75806EF: (within /lib/libselinux.so.1)
==27925== by 0x3721EC: _dl_init (in /lib/ld-2.9.so)
==27925== by 0x36288E: (within /lib/ld-2.9.so)
==27925==
==27925==
==27925== 400 bytes in 1 blocks are still reachable in loss record 28 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x6DAFC35: Curl_ssl_initsessions (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA23AC: Curl_pretransfer (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA4A16: Curl_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57A2: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 429 bytes in 8 blocks are still reachable in loss record 29 of 44
==27925== at 0x4006C0C: realloc (vg_replace_malloc.c:429)
==27925== by 0x484524: __vasprintf_chk (in /lib/libc-2.9.so)
==27925== by 0x484415: __asprintf_chk (in /lib/libc-2.9.so)
==27925== by 0x758F341: (within /lib/libselinux.so.1)
==27925== by 0x759189C: (within /lib/libselinux.so.1)
==27925== by 0x75806EF: (within /lib/libselinux.so.1)
==27925== by 0x3721EC: _dl_init (in /lib/ld-2.9.so)
==27925== by 0x36288E: (within /lib/ld-2.9.so)
==27925==
==27925==
==27925== 536 bytes in 15 blocks are possibly lost in loss record 30 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x75FBDC7: PR_Malloc (in /lib/libnspr4.so)
==27925== by 0x6D1CEF7: (within /lib/libnss3.so)
==27925== by 0x6D1FC30: (within /lib/libnss3.so)
==27925== by 0x6D1C04E: (within /lib/libnss3.so)
==27925== by 0x6CD85A6: (within /lib/libnss3.so)
==27925== by 0x6C48D08: (within /lib/libnss3.so)
==27925== by 0x6C491BC: NSS_Initialize (in /lib/libnss3.so)
==27925== by 0x6DB8FBF: Curl_nss_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DB033E: Curl_ssl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D8F869: Curl_http_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D969C0: Curl_protocol_connect (in /usr/lib/libcurl.so.4.1.1)
==27925==
==27925==
==27925== 608 bytes in 16 blocks are still reachable in loss record 31 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x484547: __vasprintf_chk (in /lib/libc-2.9.so)
==27925== by 0x484415: __asprintf_chk (in /lib/libc-2.9.so)
==27925== by 0x758F2DB: (within /lib/libselinux.so.1)
==27925== by 0x759189C: (within /lib/libselinux.so.1)
==27925== by 0x75806EF: (within /lib/libselinux.so.1)
==27925== by 0x3721EC: _dl_init (in /lib/ld-2.9.so)
==27925== by 0x36288E: (within /lib/ld-2.9.so)
==27925==
==27925==
==27925== 896 bytes in 5 blocks are still reachable in loss record 32 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x373898: _dl_check_map_versions (in /lib/ld-2.9.so)
==27925== by 0x376998: dl_open_worker (in /lib/ld-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x375F5D: _dl_open (in /lib/ld-2.9.so)
==27925== by 0x528C2B: dlopen_doit (in /lib/libdl-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x52905B: _dlerror_run (in /lib/libdl-2.9.so)
==27925== by 0x528B60: dlopen@@GLIBC_2.1 (in /lib/libdl-2.9.so)
==27925== by 0x75FB564: PR_LoadLibraryWithFlags (in /lib/libnspr4.so)
==27925== by 0x6C681AA: (within /lib/libnss3.so)
==27925== by 0x6C68204: (within /lib/libnss3.so)
==27925==
==27925==
==27925== 976 bytes in 2 blocks are still reachable in loss record 33 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x4583A57: __hash_open (hash.c:154)
==27925== by 0x458272B: dbopen (db.c:111)
==27925== by 0x45691FB: dbsopen (dbmshim.c:621)
==27925== by 0x457AADE: nsslowcert_OpenCertDB (pcertdb.c:4109)
==27925== by 0x45730CB: legacy_Open (lginit.c:384)
==27925== by 0x45367E2: (within /lib/libsoftokn3.so)
==27925== by 0x4551B4A: (within /lib/libsoftokn3.so)
==27925== by 0x453BFDE: (within /lib/libsoftokn3.so)
==27925== by 0x453C2BF: (within /lib/libsoftokn3.so)
==27925== by 0x453C66F: (within /lib/libsoftokn3.so)
==27925== by 0x453C752: (within /lib/libsoftokn3.so)
==27925==
==27925==
==27925== 980 bytes in 1 blocks are still reachable in loss record 34 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x6D99C53: create_conn (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9B9EE: Curl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA4A78: Curl_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57A2: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804875E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 1,080 bytes in 90 blocks are still reachable in loss record 35 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x45F6878: (within /lib/libnsspem.so)
==27925== by 0x45F366A: (within /lib/libnsspem.so)
==27925== by 0x45F53CD: (within /lib/libnsspem.so)
==27925== by 0x45F97F3: (within /lib/libnsspem.so)
==27925== by 0x46012C8: (within /lib/libnsspem.so)
==27925== by 0x45F04AB: (within /lib/libnsspem.so)
==27925== by 0x6C77ECD: (within /lib/libnss3.so)
==27925== by 0x6C7814F: PK11_CreateGenericObject (in /lib/libnss3.so)
==27925== by 0x6DB8948: nss_load_cert (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DB944B: Curl_nss_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DB033E: Curl_ssl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925==
==27925==
==27925== 1,600 bytes in 100 blocks are definitely lost in loss record 36 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x75FBDC7: PR_Malloc (in /lib/libnspr4.so)
==27925== by 0x6C29677: PORT_Alloc_Util (secport.c:113)
==27925== by 0x6C7818B: PK11_CreateGenericObject (in /lib/libnss3.so)
==27925== by 0x6DB8948: nss_load_cert (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DB944B: Curl_nss_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DB033E: Curl_ssl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D8F869: Curl_http_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D969C0: Curl_protocol_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6D9BDA9: Curl_connect (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA4A78: Curl_perform (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA57A2: curl_easy_perform (in /usr/lib/libcurl.so.4.1.1)
==27925==
==27925==
==27925== 2,048 bytes in 2 blocks are still reachable in loss record 37 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x458292D: alloc_segs (hash.c:1104)
==27925== by 0x458434C: __hash_open (hash.c:234)
==27925== by 0x458272B: dbopen (db.c:111)
==27925== by 0x45691FB: dbsopen (dbmshim.c:621)
==27925== by 0x457AADE: nsslowcert_OpenCertDB (pcertdb.c:4109)
==27925== by 0x45730CB: legacy_Open (lginit.c:384)
==27925== by 0x45367E2: (within /lib/libsoftokn3.so)
==27925== by 0x4551B4A: (within /lib/libsoftokn3.so)
==27925== by 0x453BFDE: (within /lib/libsoftokn3.so)
==27925== by 0x453C2BF: (within /lib/libsoftokn3.so)
==27925== by 0x453C66F: (within /lib/libsoftokn3.so)
==27925==
==27925==
==27925== 2,048 bytes in 2 blocks are still reachable in loss record 38 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x458290B: alloc_segs (hash.c:1098)
==27925== by 0x458434C: __hash_open (hash.c:234)
==27925== by 0x458272B: dbopen (db.c:111)
==27925== by 0x45691FB: dbsopen (dbmshim.c:621)
==27925== by 0x457AADE: nsslowcert_OpenCertDB (pcertdb.c:4109)
==27925== by 0x45730CB: legacy_Open (lginit.c:384)
==27925== by 0x45367E2: (within /lib/libsoftokn3.so)
==27925== by 0x4551B4A: (within /lib/libsoftokn3.so)
==27925== by 0x453BFDE: (within /lib/libsoftokn3.so)
==27925== by 0x453C2BF: (within /lib/libsoftokn3.so)
==27925== by 0x453C66F: (within /lib/libsoftokn3.so)
==27925==
==27925==
==27925== 3,147 bytes in 5 blocks are still reachable in loss record 39 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x36D8FA: _dl_new_object (in /lib/ld-2.9.so)
==27925== by 0x369EAA: _dl_map_object_from_fd (in /lib/ld-2.9.so)
==27925== by 0x36B362: _dl_map_object (in /lib/ld-2.9.so)
==27925== by 0x37667C: dl_open_worker (in /lib/ld-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x375F5D: _dl_open (in /lib/ld-2.9.so)
==27925== by 0x528C2B: dlopen_doit (in /lib/libdl-2.9.so)
==27925== by 0x371DB5: _dl_catch_error (in /lib/ld-2.9.so)
==27925== by 0x52905B: _dlerror_run (in /lib/libdl-2.9.so)
==27925== by 0x528B60: dlopen@@GLIBC_2.1 (in /lib/libdl-2.9.so)
==27925== by 0x75FB564: PR_LoadLibraryWithFlags (in /lib/libnspr4.so)
==27925==
==27925==
==27925== 34,356 bytes in 1 blocks are still reachable in loss record 40 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x6D967F5: Curl_open (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA59D6: curl_easy_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x804870E: main (in /var/tmp/break)
==27925==
==27925==
==27925== 36,864 bytes in 3 blocks are still reachable in loss record 41 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x4584781: __get_buf (hash_buf.c:217)
==27925== by 0x458340F: hash_access (hash.c:784)
==27925== by 0x45838E5: hash_get (hash.c:673)
==27925== by 0x45696F3: dbs_get (dbmshim.c:423)
==27925== by 0x45762B3: certdb_Get (pcertdb.c:267)
==27925== by 0x4576320: ReadDBEntry (pcertdb.c:508)
==27925== by 0x4577C69: nsslowcert_GetVersionNumber (pcertdb.c:2884)
==27925== by 0x457A7D2: nsslowcert_OpenCertDB (pcertdb.c:4114)
==27925== by 0x45730CB: legacy_Open (lginit.c:384)
==27925== by 0x45367E2: (within /lib/libsoftokn3.so)
==27925== by 0x4551B4A: (within /lib/libsoftokn3.so)
==27925==
==27925==
==27925== 186,815 bytes in 1,349 blocks are still reachable in loss record 42 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x75FC039: PR_Calloc (in /lib/libnspr4.so)
==27925== by 0x75F6A38: PR_NewLogModule (in /lib/libnspr4.so)
==27925== by 0x7601F71: (within /lib/libnspr4.so)
==27925== by 0x6DBA3A3: Curl_nss_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DB03CB: Curl_ssl_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA597C: curl_global_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x80486DD: main (in /var/tmp/break)
==27925==
==27925==
==27925== 51,934,942 bytes in 5,666 blocks are still reachable in loss record 43 of 44
==27925== at 0x4006AEE: malloc (vg_replace_malloc.c:207)
==27925== by 0x75FBDC7: PR_Malloc (in /lib/libnspr4.so)
==27925== by 0x760B0B2: PR_NewCondVar (in /lib/libnspr4.so)
==27925== by 0x7611E3D: (within /lib/libnspr4.so)
==27925== by 0x76020A6: (within /lib/libnspr4.so)
==27925== by 0x6DBA3A3: Curl_nss_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DB03CB: Curl_ssl_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x6DA597C: curl_global_init (in /usr/lib/libcurl.so.4.1.1)
==27925== by 0x80486DD: main (in /var/tmp/break)
==27925==
==27925==
==27925== 58,135,739 bytes in 259,343 blocks are possibly lost in loss record 44 of 44
==27925== at 0x4004BA2: calloc (vg_replace_malloc.c:397)
==27925== by 0x75FC039: PR_Calloc (in /lib/libnspr4.so)
==27925== by 0x46054AF: (within /lib/libnsspem.so)
==27925== by 0x45F1F6B: (within /lib/libnsspem.so)
==27925== by 0x45F394D: (within /lib/libnsspem.so)
==27925== by 0x45F53CD: (within /lib/libnsspem.so)
==27925== by 0x45F97F3: (within /lib/libnsspem.so)
==27925== by 0x46012C8: (within /lib/libnsspem.so)
==27925== by 0x45F04AB: (within /lib/libnsspem.so)
==27925== by 0x6C77ECD: (within /lib/libnss3.so)
==27925== by 0x6C7814F: PK11_CreateGenericObject (in /lib/libnss3.so)
==27925== by 0x6DB8948: nss_load_cert (in /usr/lib/libcurl.so.4.1.1)
==27925==
==27925== LEAK SUMMARY:
==27925== definitely lost: 1,688 bytes in 101 blocks.
==27925== possibly lost: 58,136,275 bytes in 259,358 blocks.
==27925== still reachable: 52,207,934 bytes in 7,229 blocks.
==27925== suppressed: 0 bytes in 0 blocks.

Received on 2009-04-08