version 1.9, 2005/03/02 21:45:53 |
version 1.10, 2005/03/27 14:50:09 |
|
|
int longfmt; |
int longfmt; |
int matchargs; |
int matchargs; |
int fullmatch; |
int fullmatch; |
|
int cflags = REG_EXTENDED; |
kvm_t *kd; |
kvm_t *kd; |
pid_t mypid; |
pid_t mypid; |
|
|
|
|
|
|
criteria = 0; |
criteria = 0; |
|
|
while ((ch = getopt(argc, argv, "G:P:U:d:fg:lns:t:u:vx")) != -1) |
while ((ch = getopt(argc, argv, "G:P:U:d:fg:ilns:t:u:vx")) != -1) |
switch (ch) { |
switch (ch) { |
case 'G': |
case 'G': |
makelist(&rgidlist, LT_GROUP, optarg); |
makelist(&rgidlist, LT_GROUP, optarg); |
|
|
makelist(&pgrplist, LT_PGRP, optarg); |
makelist(&pgrplist, LT_PGRP, optarg); |
criteria = 1; |
criteria = 1; |
break; |
break; |
|
case 'i': |
|
cflags |= REG_ICASE; |
|
break; |
case 'l': |
case 'l': |
if (!pgrep) |
if (!pgrep) |
usage(); |
usage(); |
|
|
* Refine the selection. |
* Refine the selection. |
*/ |
*/ |
for (; *argv != NULL; argv++) { |
for (; *argv != NULL; argv++) { |
if ((rv = regcomp(®, *argv, REG_EXTENDED)) != 0) { |
if ((rv = regcomp(®, *argv, cflags)) != 0) { |
regerror(rv, ®, buf, sizeof(buf)); |
regerror(rv, ®, buf, sizeof(buf)); |
errx(STATUS_BADUSAGE, "bad expression: %s", buf); |
errx(STATUS_BADUSAGE, "bad expression: %s", buf); |
} |
} |
|
|
const char *ustr; |
const char *ustr; |
|
|
if (pgrep) |
if (pgrep) |
ustr = "[-flnvx] [-d delim]"; |
ustr = "[-filnvx] [-d delim]"; |
else |
else |
ustr = "[-signal] [-fnvx]"; |
ustr = "[-signal] [-finvx]"; |
|
|
fprintf(stderr, "usage: %s %s [-G gid] [-P ppid] [-U uid] [-g pgrp] " |
fprintf(stderr, "usage: %s %s [-G gid] [-P ppid] [-U uid] [-g pgrp] " |
"[-s sid] [-t tty] [-u euid] pattern ...\n", __progname, ustr); |
"[-s sid] [-t tty] [-u euid] pattern ...\n", __progname, ustr); |