zodpovednost za uvolneni pameti po volani gethostbyname, getpwuid...
Jirka Kosina
jikos na jikos.cz
Úterý Prosinec 3 11:07:26 CET 2002
On Tue, 3 Dec 2002, Karel Zak wrote:
> > > Nikde jsem se nedocetl kdo je zodpovedny za uvolneni pameti alokovane za
> > > pomoci volani gethostbyname() a dalsich obdobnych funkci ktere vraci
> > > pointer na strukturu nebo NULL v pripade neuspechu. Koukam do vypisu z
> > > mpatrol a zustava mi tam neco vyset. Musim nebo nesmim tu pamet uvolnit
> > > ja.
> > Kupodivu to myslim v manualove strance fakt neni, ale je to v dokumentaci
> Asi cteme ruzny manual:
> The functions gethostbyname() and gethostbyaddr() may return
> pointers to static data, which may be overwritten by later calls.
> Copying the struct hostent does not suffice, since it contains
> pointers - a deep copy is required.
Ano, evidentne cteme ruzny manual. V manualove strance na RH 7.1 to neni,
kdyz ted koukam na RH 7.3 & 8.0, tak tam je presne ten text, co jste
pastnul.
Kazdopadne v info libc je to za vsech okolnosti, a casto podrobneji, a to
jsem se snazil napsat v predchozich prispevcichc.
> Glibc2 also has reentrant versions gethostbyname_r()
> ^^^^^^^^^^
> Prenositelnost toho reseni je uz jina debata :-)
O tom vim, ale na to se nikdo neptal ;)
--
JiKos.
Další informace o konferenci Linux