Commit Graph

60 Commits

Author SHA1 Message Date
phk
9690ea4717 Use sysctlbyname 2006-05-11 17:25:36 +00:00
andre
74d3ddeb32 Obtain true uptime through clock_gettime(CLOCK_MONOTONIC, struct *timespec)
instead of subtracting 'bootime' from 'now'.

Sponsored by:	TCP/IP Optimization Fundraise 2005
2005-10-17 15:37:22 +00:00
gad
1d64a7af31 Use the ki_udata field that was recently-added to kinfo_proc, instead of
stealing ki_spare[0] to hold a pointer.
2005-06-04 23:40:09 +00:00
charnier
eed88f7461 Do not print the result of strftime() in case of failure, the content is
indeterminate in such a case. The correct value for 2nd argument is
sizeof(buf). Do not NUL-terminate the result string, strftime() will do it
for us.
2003-09-07 16:31:32 +00:00
peter
1dfc9d7d37 utmp.ut_time is not a time_t, do not pass a pointer to it to pr_attime(). 2003-06-28 19:11:42 +00:00
seanc
ad6e764632 Fix warning when calling w(1) when logged in via xdm/kdm. This is
really a problem with utmp/wtmp, but takes the same approach as who(1).

Reviewed by:	knu (mentor), mini, silence on -audit
Approved by:	knu (mentor), mini
2002-08-23 04:31:58 +00:00
jmallett
ecd7ab07f9 ANSI style function declarations. 2002-06-07 01:41:54 +00:00
imp
0b20191705 remove __P 2002-03-22 01:42:45 +00:00
obrien
7639ed0682 Back out part of rev 1.51. The lesser impact fix is to just remove
the unused global var.
2002-03-07 22:36:56 +00:00
markm
a23dd012ce WARNS=2 fix, use __FBSDID() and sort includes.
WARNS=2 not added to Makefile as it is to become default.
2001-12-11 22:18:47 +00:00
bde
229c3ac7c3 Compensate for "Compensate for header dethreading" by backing it out. 2001-10-10 17:48:44 +00:00
cjc
b78a2af2f6 Fixing a bug that causes very short uptimes (less than one minute) to
be 30 seconds off. (Thanks to Vladimir B.Grebenschikov
<vova@express.ru> for the PR and ru for a more elegant fix.)

PR:		bin/30680
Approved by:	ru
2001-09-22 09:33:00 +00:00
brian
d106b78011 When -n is specified, don't attempt to turn hostnames found in utmp
into addresses as we have no idea what address family they belong to.

When -n is not specified, resolve IPv6 as well as IPv4 addresses found
in the host field of utmp.  Use realhostname_sa() to resolve addresses
(the old code was wrong).

Rename ``x'' to ``x_suffix'' to avoid confusion.

Hard code the host column width to 16 (against the imminent increase
of UT_HOSTSIZE in utmp.h).
2001-07-26 19:20:13 +00:00
phk
2595178f4b Call kvm_close() before exit for consistency.
PR:		24654
Submitted by:	Daniel Hemmerich zartik@yahoo.com
2001-05-28 21:30:31 +00:00
tmm
420a2e019f Fix the error buffer passed to kvm_openfiles to have a correct length
of _POSIX2_LINE_MAX.

MFC after:	1 week
2001-05-26 00:02:13 +00:00
markm
9f745ed9e1 Compensate for header dethreading. 2001-05-01 08:46:02 +00:00
ache
4d8aa30314 Preserve comma as separator when it is not equal to radix character 2001-03-03 16:47:07 +00:00
ache
1172de0344 Don't use "," as load avg. separator because it can be precision point in some
locales, so leads to confusion
2001-03-03 01:32:46 +00:00
ache
fe36abf2a2 Use AM/PM time only when available in locale 2001-03-02 23:11:38 +00:00
brian
466c3bf443 Hostnames are case-insensitive 2000-12-22 15:21:06 +00:00
brian
b92a08961b If the utmp login time is greater than the tty atime, use it to calculate
the idle time instead of the atime.

This makes entries for people that have logged in but done nothing
else show up correctly.

Reviewed by: markk@knigma.org
2000-12-21 01:30:47 +00:00
mckusick
cba301121b Change the proc information returned from the kernel so that it
no longer contains kernel specific data structures, but rather
only scalar values and structures that are already part of the
kernel/user interface, specifically rusage and rtprio. It no
longer contains proc, session, pcred, ucred, procsig, vmspace,
pstats, mtx, sigiolst, klist, callout, pasleep, or mdproc. If
any of these changed in size, ps, w, fstat, gcore, systat, and
top would all stop working. The new structure has over 200 bytes
of unassigned space for future values to be added, yet is nearly
100 bytes smaller per entry than the structure that it replaced.
2000-12-12 07:25:57 +00:00
peter
6bdffedcb9 Use the same technique as ps(1) to avoid the need for setgid. (ie: use
/dev/null as the default kernel and /dev/mem filenames, but still allow
the usual overrides)
1999-11-17 15:28:45 +00:00
peter
3b842d34e8 $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
green
e59fc97cc8 New w ability: you can list multiple users on the command line and it will
match with all of them, rather than only supporting a single user.

PR:		11121
Kinda submitted by:	James Howard <howardjp@byzantine.student.umd.edu>
Reviewed by:		DES
1999-07-28 19:29:46 +00:00
billf
4822432874 Clean up some ambiguous nested if/elses. 1999-07-04 17:26:16 +00:00
ache
b7c354e27c fix -n with 16-chars hostnames, modified patch from PR
PR: 11286
Submitted by:  Hans Huebner <hans@chaosradio.berlin.ccc.de>
1999-04-22 23:40:56 +00:00
brian
a67930a4f0 Get things right for tty names of length UT_LINESIZE.
Cosmetic: Don't shadow the `p' variable.
          Remove two unused variables.
PR:	3638
1999-03-31 21:01:39 +00:00
peter
d66a1cb030 Fix the annoying bug introduced in rev 1.18 that caused each line to be
one character shorter than the previous in a stairstep fashion when long
idle times were involved.

A couple of nits:
- spelling/typo fix.
- some of the easier style(9) fixes where it was bothering me.
- Handle 100+ days idle time (ha!).  Probably the right thing to do is
  to do a snprintf into a buffer and strlen the result rather than doing
  hackery on magic numbers.

XXX the wide (and mostly unused) username and tty columns annoy me since
it it could be used for more useful information for the command. We should
actually count the largest username and tty and adjust like 'ls -l' does.
1999-01-10 15:28:37 +00:00
dillon
6a839215a1 No __profname bozoness, no strstr() bozoness... test argv[0] against
"uptime" the right way.  Sheesh.
1998-12-24 23:27:33 +00:00
steve
1c3fec22d8 Since argv is in scope, use argv[0] instead of __progname.
Suggested by:	bde
1998-12-24 18:20:58 +00:00
steve
85139e6fc1 Do a better job of determining if we were called as uptime(1).
PR:		8593
1998-11-09 01:19:30 +00:00
imp
078b9d996a Remove unused strvisx. 1998-06-09 04:35:20 +00:00
jkoshy
25789e916f Cosmetic fix. Compute header field widths from UT_{HOST,LINE,NAME}SIZE
instead of hardcoding header line.

PR: 6325
1998-05-21 08:46:48 +00:00
jkoshy
b964b328b6 Allow `w' to treat a corrupted "utmp" as a non fatal error.
PR: bin/2832
1998-05-14 10:13:24 +00:00
phk
30a62a3f70 Like most Unices FreeBSD should have a larger tty field at least
as large as UT_LINESIZE (/usr/include/utmp.h). If the tty name is logged
with this size why isn't the w command reporting it?

(We should probably report the tty/cua prefix then as well ? /phk)

PR:		4187
Reviewed by:	phk
Submitted by:	Jorge M. Goncalves <ee96199@tom.fe.up.pt>
1998-04-19 18:32:01 +00:00
ache
b5347d93d3 If uptime < 1 min print in in secs otherwise we got confusing message
"up 1 user"
1997-10-13 15:17:03 +00:00
ache
684eb8f09f Document newly added -d option and fix usage string 1997-09-12 02:26:12 +00:00
ache
0357dcdb99 The "-d" option dumps out the entire process list on a per controlling
tty basis, instead of just the top level process.
Submitted by: terry
1997-09-12 02:22:21 +00:00
charnier
0beb621f63 Typo in usage(). Err -> errx when testing allocations. 1997-08-25 06:42:19 +00:00
imp
141381e1cb compare return value from getopt against -1 rather than EOF, per the final
posix standard on the topic.
1997-03-29 04:34:07 +00:00
yokota
479436ac99 Made sure the string formated by strftime() is properly
null-terminated.

Should go to RELENG_2_1 and RELENG_2_2.

Reviewed by guido@freebsd.org.
1997-03-07 10:54:19 +00:00
danny
da4de4acb6 Reduce the command field width by one when idle time is > 9 days, to
eliminate unsightly blank line.

Possibly a 2.2 candidate.
1997-02-11 10:49:25 +00:00
ache
25af7e1053 Increase username field to reflect utmp changes 1996-12-05 17:00:16 +00:00
ache
aa108247fd Do not print herror message, if w -n gethostname failed to be 100%
compatible with any program
Suggested by: peter
1996-06-17 20:07:44 +00:00
ache
6e9cd1d33a Fix xterm/screen/(any program using just :xxx form) compatibility 1996-06-17 19:23:38 +00:00
ache
28e5db0271 Don't try convert "-" to numeric form for -n option 1996-06-17 18:35:16 +00:00
ache
0bf8c3c1df Fix w -n to really show numeric addresses, close PR 402
Partially submitted by: henrich@msu.edu (Charles Henrich)
1996-06-17 15:46:25 +00:00
pst
10d32f7a70 Drop privileges if not using standard namelist or kernel file.
Submitted by:	smpatel (Sujal Patel)
1996-05-30 02:20:10 +00:00
ache
ed337c8386 Change locale to LC_ALL, there is no bitmask 1995-10-26 11:03:08 +00:00