Commit Graph

79 Commits

Author SHA1 Message Date
Martin Willi 17211b6b9a leak-detective: override malloc functions instead of using deprecated hooks
malloc hooks have become deprecated, and their use has always been problematic,
especially in multi-threaded applications. Replace the functionality by
overriding all malloc functions and query the system allocator functions
using dlsym() with RTLD_NEXT.
2013-05-06 15:15:24 +02:00
Andreas Steffen c9418d4fd3 added getpwuid_r and initgroups to whitelist 2013-03-03 09:04:49 +01:00
Tobias Brunner f05b427265 Moved debug.[ch] to utils folder 2012-10-24 16:00:51 +02:00
Tobias Brunner 12642a6831 Moved data structures to new collections subfolder 2012-10-24 16:00:49 +02:00
Martin Willi 0bac49b0a9 Add getspnam_r() to leak detective whitelist 2012-08-10 10:43:44 +02:00
Martin Willi 549eba30ab Increase leak detective backtrace depth by a frame 2012-07-13 13:23:29 +02:00
Martin Willi 6499354e4a Don't access tail magic when reallocating invalid memory, as it would crash 2012-07-13 13:23:29 +02:00
Martin Willi b46776aea1 Add an external method to disable leak detective temporarly 2012-07-13 13:23:29 +02:00
Martin Willi 7c8b9fcbf6 Add safe_strerror() to leak detective whitelist
While the thread specific strerror buffer gets cleaned up for
worker threads during their termination, the main thread itself,
and so its strerror buffer, is still alive during leak reports.
2012-07-11 08:45:15 +02:00
Sansar Choinyambuu 4002b41b92 Added ctime function to white list 2011-11-28 14:34:21 +01:00
Andreas Steffen b97ca14d35 whitelist glibc instead of TrouSerS functions 2011-09-10 22:39:55 +02:00
Andreas Steffen ddc261bcd3 added leaky TrouSerS functions to whitelist 2011-09-08 18:22:43 +02:00
Martin Willi 35c9347921 Use better packing of leak-detective memory_header to align pointers 2011-05-25 19:56:47 +02:00
Martin Willi eb4f4551a1 Summarize leaks with identical backtraces, as we do it with memusage 2011-05-25 19:56:43 +02:00
Martin Willi fce3b5c3ba Added a leak detective method to report current memory usage with backtraces 2011-05-16 15:22:21 +02:00
Martin Willi f37e8252a3 Make leak detective public 2011-05-16 15:22:21 +02:00
Martin Willi 42e0f26e53 Migrated leak_detective to INIT/METHOD macros 2011-05-16 15:22:21 +02:00
Martin Willi 07bda3feea Whitelisted another tzset variant and dlsym 2011-02-18 16:08:01 +01:00
Martin Willi 7cfa84f540 Whitelist gnutls init function 2011-01-17 18:20:12 +01:00
Martin Willi b94feb4b05 backtrace->contains_function takes multiple names, speeding up whitelist check drastically 2011-01-17 18:19:44 +01:00
Martin Willi ec8426a349 Add some common glib non-leaks to whitelist 2011-01-17 18:19:36 +01:00
Andreas Steffen 1888dd6bd5 implemented IMC/IMV handler 2010-11-09 20:43:50 +01:00
Martin Willi 70789d28a1 Handle PIN: as a magic keyword for prompt, use getpass() to silently read credentials 2010-08-04 09:26:21 +02:00
Martin Willi 50a9e84540 Added NSPR PR_CallOnce to leak detective whitelist 2010-08-04 09:26:20 +02:00
Martin Willi 044e0dd1b1 Added buffer checking variants of syslog functions to leak detective 2010-08-04 09:26:20 +02:00
Martin Willi 40b2be16e3 Whitelist OpenSSLs ERR_put_error() in leak-detective
As we do not invoke ERR_get/clear_error() in all error cases, the
error codes are not removed from the error queue. But it is save
to whitelist the put function, as it uses a circular buffer that
does not grow beyond ERR_NUM_ERRORS errors (16 by default).
2010-05-20 17:37:18 +02:00
Martin Willi 091d178060 Option to skip slow addr2line resolution in leak-detective 2010-05-20 17:37:18 +02:00
Andreas Steffen 0ffedbfb46 added getprotobyname to whitelist 2010-05-02 21:13:10 +02:00
Martin Willi 86813bef12 Whitelist register_printf_specifier in leak detective 2009-11-17 15:51:57 +00:00
Martin Willi 587ebae722 Distinguish invalid free()s between corrupted magic and invalid pointer 2009-10-05 11:02:54 +02:00
Andreas Steffen 727b0f11e2 whitelist Curl_client_write 2009-09-27 23:07:21 +02:00
Martin Willi 323f9f990f replaces four spaces by tabs, where appropriate 2009-09-04 14:50:23 +02:00
Martin Willi 7daf5226b7 removed trailing spaces ([[:space:]]+$) 2009-09-04 13:46:09 +02:00
Martin Willi 85fd609ed6 whitelist openssl ecdsa_check function 2009-08-27 13:59:30 +02:00
Martin Willi 3f9ec06f6f added getnetbyname/gethostbyname2 to leak detective whitelist, used by pluto 2009-08-26 11:23:50 +02:00
Martin Willi a41d0932c2 gcrypt rng implementation 2009-06-09 11:18:57 +02:00
Martin Willi 513a1a2835 initialize gcrypt threadsave, currently for pthread only 2009-06-09 11:18:56 +02:00
Tobias Brunner 8c5d72cd0b removing svn keyword $Id$ from all files 2009-04-30 13:19:35 +00:00
Tobias Brunner d25ce3701e printf hooks refactored to increase portability (i.e. support for platforms without glibc-compatible customizable printf - the Vstr string library is currently required on such platforms). 2009-03-12 18:07:32 +00:00
Martin Willi 7a485e90bd leak detective binds execution to a signle core, avoids corruption on SMP machines 2008-12-12 09:10:52 +00:00
Martin Willi 9eb85cffe1 whitelisted another pthread_setspecific implementation 2008-12-08 15:27:24 +00:00
Martin Willi 0442562516 leak whitelisting of OPENSSL_config() 2008-12-04 09:23:53 +00:00
Martin Willi c198fc5548 whitelisting localtime_r 2008-11-10 16:44:27 +00:00
Martin Willi f7237cf37a separated backtrace functionality from leak_detective, used in
leak_detective
	mutex profiling
	signal handler
2008-11-05 13:58:19 +00:00
Martin Willi e609b1cda2 capability API to allow plugin-controlled capability set 2008-08-28 16:27:48 +00:00
Martin Willi 1caa265c61 a (incomplete) implementation of draft-sheffer-ikev2-gtc-00.txt using PAM 2008-08-21 12:10:07 +00:00
Martin Willi fe5d7c43be whitelisting leaks of ENGINE_load_builtin_engines 2008-07-01 07:53:03 +00:00
Martin Willi 5a22a02156 DNS resolving of ike_cfg hosts dynamically on demand 2008-06-06 15:05:54 +00:00
Martin Willi 915e04b2dd extended leak detective white list for OpenSSL 2008-06-06 08:13:11 +00:00
Martin Willi a3d92a3745 plugin load configuration in strongswan.conf
some components accept a "component.load" option with a space separated list of plugins to load
  libcharon- plugins are now handled the same way as libstrongswan- plugins
2008-05-15 14:01:26 +00:00