summaryrefslogtreecommitdiffstats
path: root/etc
diff options
context:
space:
mode:
authormtm <mtm@FreeBSD.org>2004-01-22 08:46:03 +0000
committermtm <mtm@FreeBSD.org>2004-01-22 08:46:03 +0000
commit05d90511cf2a70c2b09a0cfa96bfee93c20d838c (patch)
treebc8b493de6d436d36308810329a85b35d030507d /etc
parent69fd34608d7f8232c0209cb1f07f7f773ab587cc (diff)
downloadFreeBSD-src-05d90511cf2a70c2b09a0cfa96bfee93c20d838c.zip
FreeBSD-src-05d90511cf2a70c2b09a0cfa96bfee93c20d838c.tar.gz
Since id(1) is in /usr, it may not be available until after filesystem
mounting. Reminded by: bde
Diffstat (limited to 'etc')
-rw-r--r--etc/rc.subr4
1 files changed, 3 insertions, 1 deletions
diff --git a/etc/rc.subr b/etc/rc.subr
index 5d2c96a..aa78538 100644
--- a/etc/rc.subr
+++ b/etc/rc.subr
@@ -47,6 +47,8 @@ SYSCTL="/sbin/sysctl"
SYSCTL_N="${SYSCTL} -n"
CMD_OSTYPE="${SYSCTL_N} kern.ostype"
OSTYPE=`${CMD_OSTYPE}`
+ID="/usr/bin/id"
+IDCMD="if [ -x $ID ]; then $ID -un; fi"
case ${OSTYPE} in
FreeBSD)
@@ -504,7 +506,7 @@ run_rc_command()
_group=\$${name}_group _groups=\$${name}_groups
if [ -n "$_user" ]; then # unset $_user if running as that user
- if [ "$_user" = "$(id -un)" ]; then
+ if [ "$_user" = "$(eval $IDCMD)" ]; then
unset _user
fi
fi
OpenPOWER on IntegriCloud