-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Marko Rauhamaa wrote: > Martin Gadbois <martin.gadb...@colubris.com>: > >> I've looked at the code (Yeah! Open Source) and could not see any >> lists, or code that accumulates data, apart from gc_*(). > > There's this weird scheme by which you prepare a memory pool with > gc_new(). Memory keeps on accumulating in the pool with alloc_buf_gc() > (in print_sockaddr_ex(), for example). The memory is not freed until the > whole pool is destroyed with gc_free().
Yep. It seems that whenever env_set_add() is called, context->c2.gc is used to allocate stuff using gc*() functions at every key renegotiation. The environement list is kept up-to-date, but all elements from this list is allocated using context->c2.gc, and never freed. Now, I need to fix that without breaking anything... - -- ============== +---------------------------------------------+ Martin Gadbois | You are -- J. Steakley, | Sr. SW Designer | What you do Armor, 1984 | Colubris Networks Inc. | When it counts. | -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFIPsQxMPkSU9icdA0RAmHYAJ4yA+7Vw3SVY7X/Q+pH5icLkwlu/ACcDubu Y6+Q9emSaFl2kbwkOmInPCc= =ZRWI -----END PGP SIGNATURE-----