Mail Archives: cygwin/2002/12/10/11:55:26
On Tue, 10 Dec 2002, Corinna Vinschen wrote:
> On Tue, Dec 10, 2002 at 10:36:04AM -0500, Igor Pechtchanski wrote:
> > On Tue, 10 Dec 2002, Noel Gordon wrote:
> >
> > > Anyone else confirm that the following program compiled under
> > > gcc 3.2, cygwin 1.3.17-1, on Win2k leaks memory?
>
> Confirmed. I found the missing free().
>
> > >From http://www.opengroup.org/onlinepubs/007904975/functions/gethostbyaddr.html :
> >
> > The gethostbyaddr() and gethostbyname() functions *may* return
> > pointers to static data, which may be overwritten by subsequent
> > calls to any of these functions.
> >
> > The "may" above (emphasis is mine) means that the implementation is free
> > to malloc a data structure and require the user to free it. Since you
> > don't free the returned data structure in your program, it's quite
> > possible that there's a leak. Also, Cygwin uses the gethostbyname from
> > wsock32.dll, which may have different implementations on different
> > systems. Thus, your best bet is to look up gethostbyname on MSDN for
> > implementation details.
>
> Ignore MSDN. It's using an internal per-thread buffer which collides with
> the fork/exec mechanism of Cygwin so Cygwin duplicates the buffer to
> another Cygwin-thread specific allocated buffer. The deallocation of
> the buffer is Cygwin internal so hands off please.
>
> Thanks for the report, I've checked in a patch,
> Corinna
Umm, note to self: always browse *all* of the relevant code before
expressing opinions on the cygwin list!
Apologies to all for the misinformation. I've found the gethostbyname
entry in autoload.cc and did not look further. Had I paid more attention,
I would have noticed the cygwin_gethostbyname() in net.cc, which is the
actual implementation and does what Corinna said.
Igor
--
http://cs.nyu.edu/~pechtcha/
|\ _,,,---,,_ pechtcha AT cs DOT nyu DOT edu
ZZZzz /,`.-'`' -. ;-;;,_ igor AT watson DOT ibm DOT com
|,4- ) )-,_. ,\ ( `'-' Igor Pechtchanski
'---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow!
"Water molecules expand as they grow warmer" (C) Popular Science, Oct'02, p.51
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -