svn commit: r202013 - user/ed/utmpx/usr.bin/w
Ed Schouten
ed at FreeBSD.org
Sun Jan 10 16:30:54 UTC 2010
Author: ed
Date: Sun Jan 10 16:30:54 2010
New Revision: 202013
URL: http://svn.freebsd.org/changeset/base/202013
Log:
Make w(1) behave a little bit better when no TTY is associated.
This allows it to more properly display entries generated by ftpd.
Modified:
user/ed/utmpx/usr.bin/w/w.c
Modified: user/ed/utmpx/usr.bin/w/w.c
==============================================================================
--- user/ed/utmpx/usr.bin/w/w.c Sun Jan 10 16:08:14 2010 (r202012)
+++ user/ed/utmpx/usr.bin/w/w.c Sun Jan 10 16:30:54 2010 (r202013)
@@ -282,7 +282,8 @@ main(int argc, char *argv[])
if ((kp = kvm_getprocs(kd, KERN_PROC_ALL, 0, &nentries)) == NULL)
err(1, "%s", kvm_geterr(kd));
for (i = 0; i < nentries; i++, kp++) {
- if (kp->ki_stat == SIDL || kp->ki_stat == SZOMB)
+ if (kp->ki_stat == SIDL || kp->ki_stat == SZOMB ||
+ kp->ki_tdev == NODEV)
continue;
for (ep = ehead; ep != NULL; ep = ep->next) {
if (ep->tdev == kp->ki_tdev) {
@@ -417,9 +418,10 @@ main(int argc, char *argv[])
(void)printf("%-*.*s %-*.*s %-*.*s ",
W_DISPUSERSIZE, W_DISPUSERSIZE, ep->utmp.ut_user,
W_DISPLINESIZE, W_DISPLINESIZE,
- strncmp(ep->utmp.ut_line, "tty", 3) &&
+ *ep->utmp.ut_line ?
+ (strncmp(ep->utmp.ut_line, "tty", 3) &&
strncmp(ep->utmp.ut_line, "cua", 3) ?
- ep->utmp.ut_line : ep->utmp.ut_line + 3,
+ ep->utmp.ut_line : ep->utmp.ut_line + 3) : "-",
W_DISPHOSTSIZE, W_DISPHOSTSIZE, *p ? p : "-");
t = ep->utmp.ut_tv.tv_sec;
longattime = pr_attime(&t, &now);
More information about the svn-src-user
mailing list