[sisyphus] coreutils, who )

Dmitry V. Levin =?iso-8859-1?q?ldv_=CE=C1_altlinux=2Eorg?=
Вт Май 16 18:35:56 MSD 2006


On Tue, May 16, 2006 at 10:04:08AM +0300, Artem wrote:
> Michael A. Kangin wrote:
> > On 16 мая 2006 01:37 Artem <x-console на yandex.ru> wrote:
> > 
> >>Да, я уже нашел _одну_ строчку  в coreutils-xxx/libs/readutmp.c из-за
> >>которой эта вещь происходит. 
> > 
> Эта информация скорее уже к coreutils@ . Описанное поведение who (см.
> тред) аналогично проявляется и в users.
> Предпосылки:
> в coreutils-5.94/lib/readutmp.c , line 107, добавили вызов ф-ции:
> <skip>
> if (desirable_utmp_entry (u, options))
> <skip>
> для отбора записей utmp по определенным критериям
> 
> Причина:
> в coreutils-5.94/lib/users.c , line 138,
> <skip>
>    switch (argc - optind)
>     {
>     case 0:                     /* users */
>       users (UTMP_FILE, READ_UTMP_CHECK_PIDS);
>                         ^^^^^^^^^^^^^^^^^^^^^
>                         вызов users без параметров,
>                         параметр READ_UTMP.... == 1
>       break;
> 
>     case 1:                     /* users <utmp file> */
>       users (argv[optind], 0);
>       ^^^^^^^^^^^^^^^^^^^^^^^
>       а вот здесь при users <utmp file>
>       подставляется "0" и выводится все записи.
> 
>       break;
> <skip>
> 
> Аналогично в coreutils-5.94/src/who.c, line 815
> <skip>
>     case 0:                     /* who */
>       who (UTMP_FILE, READ_UTMP_CHECK_PIDS);
>       break;
> 
>     case 1:                     /* who <utmp file> */
>       who (argv[optind], 0);
>       break;
> 
> <skip>
> 
> Спрашивается:
> а) зачем добавлено такое поведение?
> б) почему не сказано ничего в man ?
> в) это бага? Или фича?

2005-03-30  Paul Eggert  <eggert на cs.ucla.edu>

        * src/pinky.c (short_pinky): Adjust to read_utmp signature change.
        * src/uptime.c (uptime): New arg OPTIONS.  All uses changed.
        * src/users.c (users): Likewise.
        * src/who.c (who): Likewise.
        * src/uptime.c (main): Check PIDs when invoked with zero arguments.
        * src/users.c (main): Likewise.
        * src/who.c (main): Likewise.  Also with two arguments.
        Omit duplicate code in 2-arg case.
        (UT_PID): Moved to ../lib/readutmp.h.


-- 
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 191 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/sisyphus/attachments/20060516/ab7b5977/attachment-0003.bin>


Подробная информация о списке рассылки Sisyphus