X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/blobdiff_plain/9ed1608ebd65a63cb26ff7f61885e1a9a943df51..e1913d35c8928d1e2a780392b9be1d5406b4745f:/usr/src/bin/ps/keyword.c diff --git a/usr/src/bin/ps/keyword.c b/usr/src/bin/ps/keyword.c index fa72529556..8c6fd3e077 100644 --- a/usr/src/bin/ps/keyword.c +++ b/usr/src/bin/ps/keyword.c @@ -6,7 +6,7 @@ */ #ifndef lint -static char sccsid[] = "@(#)keyword.c 5.8 (Berkeley) %G%"; +static char sccsid[] = "@(#)keyword.c 5.14 (Berkeley) %G%"; #endif /* not lint */ #include @@ -29,13 +29,8 @@ static char sccsid[] = "@(#)keyword.c 5.8 (Berkeley) %G%"; #include #endif -int command(), cputime(), evar(), logname(), longtname(), lstarted(), - maxrss(), p_rssize(), pagein(), pcpu(), pmem(), pri(), pvar(), - rssize(), runame(), rvar(), started(), state(), tdev(), tname(), - tsize(), ucomm(), uname(), uvar(), vsize(), wchan(); -#ifndef NEWVM -int trss(); -#endif +static VAR *findvar __P((char *)); +static int vcmp __P((const void *, const void *)); #ifdef NOTINUSE int utime(), stime(), ixrss(), idrss(), isrss(); @@ -62,12 +57,12 @@ VAR var[] = { #ifdef NEWVM {"%cpu", "%CPU", NULL, 0, pcpu, 4}, {"%mem", "%MEM", NULL, 0, pmem, 4}, - {"acflag", "ACFLG", NULL, 0, pvar, 3, POFF(p_acflag), SHORT, "x"}, + {"acflag", "ACFLG", NULL, 0, pvar, 3, POFF(p_acflag), USHORT, "x"}, {"acflg", "", "acflag"}, {"blocked", "", "sigmask"}, {"caught", "", "sigcatch"}, - {"command", "COMMAND", NULL, COMM|LJUST, command, 16}, - {"cpu", "CPU", NULL, 0, pvar, 3, POFF(p_cpu), UCHAR, "d"}, + {"command", "COMMAND", NULL, COMM|LJUST|USER, command, 16}, + {"cpu", "CPU", NULL, 0, pvar, 3, POFF(p_cpu), ULONG, "d"}, {"cputime", "", "time"}, {"f", "F", NULL, 0, pvar, 7, POFF(p_flag), LONG, "x"}, {"flags", "", "f"}, @@ -107,13 +102,13 @@ VAR var[] = { {"pri", "PRI", NULL, 0, pri, 3}, {"re", "RE", NULL, 0, pvar, 3, POFF(p_time), CHAR, "d"}, {"rgid", "RGID", NULL, 0, evar, UIDLEN, EOFF(e_pcred.p_rgid), - USHORT, UIDFMT}, + ULONG, UIDFMT}, {"rlink", "RLINK", NULL, 0, pvar, 8, POFF(p_rlink), KPTR, "x"}, {"rss", "RSS", NULL, 0, p_rssize, 4}, {"rssize", "", "rsz"}, {"rsz", "RSZ", NULL, 0, rssize, 4}, {"ruid", "RUID", NULL, 0, evar, UIDLEN, EOFF(e_pcred.p_ruid), - USHORT, UIDFMT}, + ULONG, UIDFMT}, {"ruser", "RUSER", NULL, LJUST, runame, USERLEN}, {"sess", "SESS", NULL, 0, evar, 6, EOFF(e_sess), KPTR, "x"}, {"sig", "PENDING", NULL, 0, pvar, 8, POFF(p_sig), LONG, "x"}, @@ -126,9 +121,9 @@ VAR var[] = { {"stat", "", "state"}, {"state", "STAT", NULL, 0, state, 4}, {"svgid", "SVGID", - NULL, 0, evar, UIDLEN, EOFF(e_pcred.p_svgid), USHORT, UIDFMT}, + NULL, 0, evar, UIDLEN, EOFF(e_pcred.p_svgid), ULONG, UIDFMT}, {"svuid", "SVUID", - NULL, 0, evar, UIDLEN, EOFF(e_pcred.p_svuid), USHORT, UIDFMT}, + NULL, 0, evar, UIDLEN, EOFF(e_pcred.p_svuid), ULONG, UIDFMT}, {"tdev", "TDEV", NULL, 0, tdev, 4}, {"time", "TIME", NULL, USER, cputime, 9}, {"tpgid", "TPGID", NULL, 0, evar, 4, EOFF(e_tpgid), USHORT, PIDFMT}, @@ -138,7 +133,7 @@ VAR var[] = { {"tty", "TTY", NULL, LJUST, longtname, 8}, {"ucomm", "UCOMM", NULL, LJUST, ucomm, MAXCOMLEN}, {"uid", "UID", NULL, 0, evar, UIDLEN, EOFF(e_ucred.cr_uid), - USHORT, UIDFMT}, + ULONG, UIDFMT}, {"upr", "UPR", NULL, 0, pvar, 3, POFF(p_usrpri), CHAR, "d"}, {"user", "USER", NULL, LJUST, uname, USERLEN}, {"usrpri", "", "upr"}, @@ -154,7 +149,7 @@ VAR var[] = { {"blocked", "", "sigmask"}, {"caught", "", "sigcatch"}, {"command", "COMMAND", NULL, COMM|LJUST|USER, command, 16}, - {"cpu", "CPU", NULL, 0, pvar, 3, POFF(p_cpu), UCHAR, "d"}, + {"cpu", "CPU", NULL, 0, pvar, 3, POFF(p_cpu), ULONG, "d"}, {"cputime", "", "time"}, {"f", "F", NULL, 0, pvar, 7, POFF(p_flag), LONG, "x"}, {"flags", "", "f"}, @@ -236,6 +231,7 @@ VAR var[] = { {""}, }; +void showkey() { extern int termwidth; @@ -257,16 +253,17 @@ showkey() (void) printf("\n"); } +void parsefmt(p) char *p; { + static struct varent *vtail; register VAR *v; register char *cp; register struct varent *vent; - static VAR *findvar(); #define FMTSEP " \t,\n" - while (p) { + while (p && *p) { while ((cp = strsep(&p, FMTSEP)) != NULL && *cp == '\0') /* void */; if (!(v = findvar(cp))) @@ -302,8 +299,7 @@ findvar(p) *hp++ = '\0'; key.name = p; - v = (VAR *)bsearch(&key, var, - sizeof(var)/sizeof(VAR), sizeof(VAR), vcmp); + v = bsearch(&key, var, sizeof(var)/sizeof(VAR) - 1, sizeof(VAR), vcmp); if (v && v->alias) { if (hp) { @@ -323,8 +319,9 @@ findvar(p) return(v); } +static int vcmp(a, b) - VAR *a, *b; + const void *a, *b; { - return(strcmp(a->name, b->name)); + return(strcmp(((VAR *)a)->name, ((VAR *)b)->name)); }