diff --git a/usr.sbin/setaudit/setaudit.8 b/usr.sbin/setaudit/setaudit.8 --- a/usr.sbin/setaudit/setaudit.8 +++ b/usr.sbin/setaudit/setaudit.8 @@ -45,7 +45,7 @@ .It Fl 6 Use IPv6. .It Fl a Ar auid -Audit user ID. +Audit user ID or user name. .It Fl m Ar mask String representation of an audit mask. .It Fl s Ar source diff --git a/usr.sbin/setaudit/setaudit.c b/usr.sbin/setaudit/setaudit.c --- a/usr.sbin/setaudit/setaudit.c +++ b/usr.sbin/setaudit/setaudit.c @@ -58,7 +58,7 @@ auditinfo_addr_t aia; struct addrinfo *res; struct passwd *pwd; - char *aflag, *mflag, *sflag, *r, *prog; + char *aflag, *mflag, *sflag, *prog; int ch, error; aflag = mflag = sflag = NULL; @@ -99,8 +99,10 @@ if (aflag) { pwd = getpwnam(aflag); if (pwd == NULL) { + char *r; + aia.ai_auid = strtoul(aflag, &r, 10); - if (r != NULL) + if (*r != '\0') errx(1, "%s: invalid user", aflag); } else aia.ai_auid = pwd->pw_uid;