Re: Memory leak in Libnet
Frédéric Raynal <[email protected]> Tue, 6 Apr 2004 10:05:53 +0200
| Newsgroups | gmane.comp.security.libnet |
|---|---|
| Message-ID | <[email protected]> |
Hello On Mon, Apr 05, 2004 at 06:08:12PM -0700, [email protected] wrote: > Hi Mike, > > It seems the following "strdup" is a memory leak > > libnet-1.1.2: > > [libnet_if_addr.c] > 238 > 239 if ((al->device = strdup(device)) == NULL) > 240 { > 241 snprintf(errbuf, LIBNET_ERRBUF_SIZE, > 242 "%s(): strdup not enough memory\n", __func__); > 243 return(-1); > 244 } > > > Should we do a "free" before each strdup() except when al->device > is NULL ? > I dont think so : al is a pointer on a static array of structures. It can easily be checked with valgrind for instance ... but as I am on vacation and connected on a Mac OS X through a 56k line, I'll let that to the reader as an exercise ;-) Fred Raynal