Yang Tse
a0b207164c
setup_once.h: refactor inclusion of <unistd.h> and <sys/socket.h>
...
Inclusion of top two most included header files now done in setup_once.h
2012-12-14 17:38:18 +01:00
Yang Tse
6b75d2c2df
fix a bunch of MSVC compiler warnings
2011-09-03 16:07:09 +02:00
Yang Tse
aaab5fa299
MemoryTracking: adjust initialization calling
...
Calling of curl_memdebug() was still done with a pending free()
2011-08-20 17:26:42 +02:00
Yang Tse
31a1af5ebb
MemoryTracking: adjust curl_domalloc() and curl_dofree() memory filling
...
Until 2011-08-17 libcurl's Memory Tracking feature also performed
automatic malloc and free filling operations using 0xA5 and 0x13
values. Our own preinitialization of dynamically allocated memory
might be useful when not using third party memory debuggers, but
on the other hand this would fool memory debuggers into thinking
that all dynamically allocated memory is properly initialized.
As a default setting, libcurl's Memory Tracking feature no longer
performs preinitialization of dynamically allocated memory on its
own. If you know what you are doing, and really want to retain old
behavior, you can achieve this compiling with preprocessor symbols
CURL_MT_MALLOC_FILL and CURL_MT_FREE_FILL defined with appropriate
values.
2011-08-17 19:02:42 +02:00
Yang Tse
9710f387c4
MemoryTracking: make curl_docalloc() call calloc() avoiding our zero fill
2011-08-16 22:24:23 +02:00
Yang Tse
bcbac913d6
socketpair() usage tracking to allow fd leak detection
2011-07-29 13:27:10 +02:00
Yang Tse
f1586cb477
stdio.h, stdlib.h, string.h, stdarg.h and ctype.h inclusion done in setup_once.h
2011-07-26 17:23:27 +02:00
Daniel Stenberg
2309b4e330
remove the CVSish $Id$ lines
2010-03-24 11:02:54 +01:00
Yang Tse
5b778a7ca4
fix socket data type and logging format in debug tracking socket functions
2010-02-22 23:28:56 +00:00
Yang Tse
10affed097
fix compiler warning
2010-02-21 19:59:09 +00:00
Yang Tse
a6fb6b70c7
fix compiler warning
2010-02-20 11:58:26 +00:00
Yang Tse
ccfe279117
Constantine Sapuntzakis enhancements to make memory tracking log file writing
...
of messages atomic, on systems where an fwrite of a memory buffer is atomic.
2010-01-18 20:22:04 +00:00
Yang Tse
e8fd5d8062
Fix compiler warning: ISO C90 forbids mixed declarations and code
2009-11-18 11:53:31 +00:00
Yang Tse
2f6dcaa644
Make memory tracking system intolerant with zero sized malloc(),
...
calloc() and realloc() function calls.
2009-11-18 11:21:58 +00:00
Yang Tse
308497ffc6
Fix compiler warning: control reaches end of non-void function
2009-10-29 04:02:21 +00:00
Daniel Stenberg
6a79b0e859
Since the NSS lib closes the socket the memory tracking system wrongly gets a
...
false positive on a leaked socket, so this introduces a way to tell the system
that the socket is indeed closed without explicitly closing it!
2009-10-28 20:30:23 +00:00
Yang Tse
9137e717b0
Use build-time configured curl_socklen_t instead of socklen_t
2009-05-02 02:37:32 +00:00
Yang Tse
33a3753c3f
libcurl's memory.h renamed to curl_memory.h
2009-04-21 11:46:16 +00:00
Yang Tse
fe8eeb5641
remove unnecessary typecast
2009-04-21 09:03:15 +00:00
Dan Fandrich
976963cd21
Really old gcc doesn't like parenthesis around the names of functions that
...
don't have prototypes. They didn't serve any useful purpose here, anyway.
2008-10-23 08:05:40 +00:00
Yang Tse
89367d47a8
Disable tracking of fdopen() calls in the low-level memory leak tracking
...
code when fdopen() is not available, to avoid compiler error.
2008-09-13 03:45:03 +00:00
Yang Tse
7fdfd938e0
remove dead code portion inoperative long time ago
2008-09-13 01:54:45 +00:00
Yang Tse
3dcd2b82c4
fix print formatting string directives
2008-09-04 18:59:05 +00:00
Dan Fandrich
08aab6a620
Move the CURLDEBUG check after setup.h so it can be set there if necessary.
2008-05-14 23:36:26 +00:00
Daniel Stenberg
cbd1a77ec2
if () => if()
...
while () => while()
and some other minor re-indentings
2007-11-07 09:21:35 +00:00
Patrick Monnerat
259f27b09f
Fix getsockname argument type
...
Improve "universal" alignment type in struct memdebug
2007-08-08 10:37:07 +00:00
James Housley
aed0cc6f2a
Using fdopen() is a more correct way to implement the CURLOPT_NEW_FILE_PREMS
...
file.c, but the debug interface was missing. This adds the routines needed
to make the memory debuging work for fdopen().
2007-06-28 11:11:29 +00:00
Dan Fandrich
3fef839f75
Added call to setvbuf (disabled by default for speed) to flush the
...
memdebug log file after every line and avoid losing the last few log
entries if curl crashes.
2007-05-15 00:36:56 +00:00
Yang Tse
3a634a273a
curlassert macro replaced with DEBUGASSERT macro defined in setup_once.h
2007-02-21 19:03:20 +00:00
Yang Tse
a1d5983991
use macros ERRNO, SET_ERRNO(), SOCKERRNO and SET_SOCKERRNO() for errno handling
2007-02-16 18:19:35 +00:00
Yang Tse
1bcbe89802
Prevent multiple initialization of memdebug configuration variables.
...
This was possible on debug c-ares enabled builds when both CURL_MEMDEBUG
and CARES_MEMDEBUG environment variables were set. Leading to a file handle
leak even when both variables had the same value, and wierd test suite
results when different.
2006-11-05 12:42:50 +00:00
Daniel Stenberg
701de67b79
use %p to printf pointers since %x doesn't work properly on tru64 for this
...
(and besides, we should be using the same %-code for all pointers)
2005-06-30 13:30:23 +00:00
Daniel Stenberg
ab4086bc24
Updated the copyright year since changes have been this year.
2005-03-31 07:02:02 +00:00
Gisle Vanem
9deb76ce3e
Set errno = ENOMEM on faild countcheck().
2004-10-13 19:11:46 +00:00
Daniel Stenberg
c39858aac0
Source cleanups. The major one being that we now _always_ use a Curl_addrinfo
...
linked list for name resolved data, even on hosts/systems with only IPv4
stacks as this simplifies a lot of code.
2004-06-24 07:43:48 +00:00
Daniel Stenberg
bbafb2eb27
curl_global_init_mem() allows the memory functions to be replaced.
...
memory.h is included everywhere for this.
2004-05-11 11:30:23 +00:00
Daniel Stenberg
32a9554c92
Gisle fixed: don't reference 'mem' if it's NULL.
2004-05-05 13:41:54 +00:00
Daniel Stenberg
a331aa0221
make the memlimit final NULL return get written to stderr as wella
2004-05-05 06:57:04 +00:00
Daniel Stenberg
c52c592f4c
store size as size_t
...
use %zd when outputting size_t
2004-03-08 11:33:49 +00:00
Daniel Stenberg
07de0ff0ff
Gisle Vanem's added support calloc()-debugging and outputting mode for
...
fopen() as well.
2004-02-26 14:52:51 +00:00
Daniel Stenberg
44995d6877
Some compilers warn on completely empty source files, we provide a blank
...
one to prevent that.
2004-02-20 16:22:47 +00:00
Daniel Stenberg
de681d3b8f
Made curl_accept() take a 'void *' instead of 'socklen_t *' in the 3rd
...
argument to also not force the casual includer to know about the socklen_t
type.
2004-02-18 12:22:56 +00:00
Daniel Stenberg
f33be3c313
Modified curl_accept() to take a 'void *' in the 2nd argument instead of
...
sockaddr *. This has the added benefit that source files that include
memdebug.h doesn't have to know about "sockaddr".
2004-02-18 12:18:33 +00:00
Daniel Stenberg
f2fbb5f3d5
Make realloc() support NULL as pointer. Made to allow us to use these routines
...
to memdebug the ares stuff as well.
2004-02-16 16:23:19 +00:00
Daniel Stenberg
4d17d6876e
Dan Fandrich's cleanup patch to make pedantic compiler options cause less
...
warnings. Minor edits by me.
2004-01-29 13:56:45 +00:00
Daniel Stenberg
053f6c85ef
updated year in the copyright string
2004-01-07 09:19:33 +00:00
Daniel Stenberg
23a6041698
use the curlassert() instead of custom checks
2003-12-16 14:08:53 +00:00
Daniel Stenberg
776f0bd95e
don't log failed socket() calls
2003-11-13 07:33:51 +00:00
Daniel Stenberg
749f5387c1
Gisle Vanem's IPv6-on-Windows patch applied!
2003-10-14 12:00:45 +00:00
Daniel Stenberg
02c78ecf81
allow out-of-memory testing by setting a limit. That number of memory
...
allocation calls will succeed, the following will return NULL!
2003-08-14 14:19:36 +00:00