From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <44697968.50607@yandex.ru> Date: Tue, 16 May 2006 10:04:08 +0300 From: Artem User-Agent: Mozilla Thunderbird 1.0.2 (X11/20060222) X-Accept-Language: en-us, en MIME-Version: 1.0 To: ALT Linux Sisyphus discussion list References: <44610C3E.3020405@yandex.ru> <200605160027.31574.mak@cea.ru> <4468F4AE.3050102@yandex.ru> <200605160624.52690.mak@cea.ru> In-Reply-To: <200605160624.52690.mak@cea.ru> Content-Type: text/plain; charset=KOI8-R Content-Transfer-Encoding: 8bit Subject: Re: [sisyphus] coreutils, who ) X-BeenThere: sisyphus@lists.altlinux.org X-Mailman-Version: 2.1.7 Precedence: list Reply-To: ALT Linux Sisyphus discussion list List-Id: ALT Linux Sisyphus discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 May 2006 07:11:20 -0000 Archived-At: List-Archive: List-Post: Michael A. Kangin wrote: > On 16 мая 2006 01:37 Artem wrote: > > >>Да, я уже нашел _одну_ строчку в coreutils-xxx/libs/readutmp.c из-за >>которой эта вещь происходит. > > Эта информация скорее уже к coreutils@ . Описанное поведение who (см. тред) аналогично проявляется и в users. Предпосылки: в coreutils-5.94/lib/readutmp.c , line 107, добавили вызов ф-ции: if (desirable_utmp_entry (u, options)) для отбора записей utmp по определенным критериям Причина: в coreutils-5.94/lib/users.c , line 138, switch (argc - optind) { case 0: /* users */ users (UTMP_FILE, READ_UTMP_CHECK_PIDS); ^^^^^^^^^^^^^^^^^^^^^ вызов users без параметров, параметр READ_UTMP.... == 1 break; case 1: /* users */ users (argv[optind], 0); ^^^^^^^^^^^^^^^^^^^^^^^ а вот здесь при users подставляется "0" и выводится все записи. break; Аналогично в coreutils-5.94/src/who.c, line 815 case 0: /* who */ who (UTMP_FILE, READ_UTMP_CHECK_PIDS); break; case 1: /* who */ who (argv[optind], 0); break; Спрашивается: а) зачем добавлено такое поведение? б) почему не сказано ничего в man ? в) это бага? Или фича? -- Rgds, Artem.