getenv (Re: malloc())

Libor Pechacek farco na clnet.cz
Pátek Únor 20 14:28:47 CET 1998


On Fri, 20 Feb 1998, Pavel Kankovsky wrote:

> slo by udelat:
>   strcpy(var, getenv("..."));
> 
> nicmene pozor! pokud ma var fixni velikost, je to kolkovana zadost o
> maler, protoze bude-li promenna delsi, dojde k nechvalne znamemu preteceni
> pole a spadne to na usta (v lepsim pripade)

Preteceni pole je casta pricina security holes (coz by nemej nerek).
Proto jsou na svete i fce char *strncpy(char *dest, char *src, size_t n) a
podobne.  BTW. gets je take nebezpecny - lepsi je 
fgets(v, sizeof(v)-1, stdin);

Jinak, u strcpy, gets a dalsich je napsano v "BUGS", ze to neni vzdy ta
nejlepsi volba.

-- 
Libor Pechacek <farco na clnet.cz>                    
CLNet network administrator




Další informace o konferenci Linux