From: Lukáš Zaoral Date: Mon, 24 Feb 2025 09:36:35 +0000 (+0100) Subject: who: fix -m with guessed tty names X-Git-Tag: v9.7~30 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=24450e5eecf012bc1ea8cab8d677a45fa42c1778;p=thirdparty%2Fcoreutils.git who: fix -m with guessed tty names * who.c (scan_entries): Account for guessed tty names (e.g. 'sshd pts/1') from the readutmp module when using the systemd backend. * bootstrap.conf (gnulib_modules): Add str_endswith. * News: Mention the bug fix. Addresses https://bugzilla.redhat.com/2343998 --- diff --git a/NEWS b/NEWS index 981ffa7b43..e7bc3884cb 100644 --- a/NEWS +++ b/NEWS @@ -14,6 +14,10 @@ GNU coreutils NEWS -*- outline -*- 'ls -Z dir' would crash. [bug introduced in coreutils-9.6] + 'who -m' now outputs entries for remote logins. Previously login + entries prefixed with the service (like "sshd") were not matched. + [bug introduced in coreutils-9.4] + * Noteworthy changes in release 9.6 (2025-01-17) [stable] diff --git a/bootstrap.conf b/bootstrap.conf index 380fa1120e..c99838e95a 100644 --- a/bootstrap.conf +++ b/bootstrap.conf @@ -253,6 +253,7 @@ gnulib_modules=" stdckdint-h stdlib-safer stpcpy + str_endswith strdup-posix strnlen strnumcmp diff --git a/src/who.c b/src/who.c index b56a1ace62..17c1e34acf 100644 --- a/src/who.c +++ b/src/who.c @@ -577,7 +577,7 @@ scan_entries (idx_t n, struct gl_utmp const *utmp_buf) while (n--) { if (!my_line_only - || STREQ (ttyname_b, utmp_buf->ut_line)) + || str_endswith (utmp_buf->ut_line, ttyname_b)) { if (need_users && IS_USER_PROCESS (utmp_buf)) print_user (utmp_buf, boottime);