pytanko
Arkadiusz Miśkiewicz
misiek at zsz2.starachowice.pl
Mon Nov 9 10:15:56 CET 1998
Mam pewien problem z poprawieniem util-linux'a.
W funkcji setproctitle() jest:
(void) strcpy (argv0[0], buf);
I IMHO argv0 ma zbyt mało zaalokowane w pamięci co powoduje nadpisanie
innych danych (akurat tymi danymi sa komunikaty przesylane do sysloga)
w wyniku czego mam:
Nov 7 23:40:14 admin -- root
[3568]: ROOT LOGIN ON tty6
(to jedna długaśna linijka). Sprawdzałem to różnymi metodami i mam 99,9%
pewności, że to właśnie to strcpy bruździ.
Niech teraz mi ktoś powie jak zaalokować więcej tej pamięci ?
Aha - argv0 jest zdefiniowane jako static char** argv0;
PS> próby ograniczenia np. (void) strncpy (argv0[0], buf, 5); powodują, że
logi są ok ale nazwa procesu (pokazywana via ps) jest pokaszaniona. Trzeba
tu nadmienić, że setproctitle() służy właśnie do zmiany nazwy procesu.
PS1> argv0[0]=malloc(sizeof(buf)); to raczej nie to.
--
-< Arkadiusz Miśkiewicz >------------------------< Cron on IRC >-
http://www.misiek.eu.org mailto:misiek at zsz2.starachowice.pl
SysAdm ZSZ2 http://www.zsz2.starachowice.pl
More information about the pld-devel-pl
mailing list