aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bin/ipcclean/ipcclean.sh17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/bin/ipcclean/ipcclean.sh b/src/bin/ipcclean/ipcclean.sh
index 9fc764e8a9a..f55f8c7e3a4 100644
--- a/src/bin/ipcclean/ipcclean.sh
+++ b/src/bin/ipcclean/ipcclean.sh
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# $PostgreSQL: pgsql/src/bin/ipcclean/ipcclean.sh,v 1.17 2006/03/03 16:49:21 momjian Exp $
+# $PostgreSQL: pgsql/src/bin/ipcclean/ipcclean.sh,v 1.18 2006/03/03 21:52:37 momjian Exp $
#
CMDNAME=`basename $0`
@@ -19,8 +19,19 @@ if [ "$1" = '-?' -o "$1" = "--help" ]; then
exit 0
fi
-# only check $LOGNAME if $USER is not set
-if [ "$USER" = 'root' -o \( ! "$USER" -a "$LOGNAME" = 'root' \) ]
+# test for running as root
+
+ISROOT="N"
+if id -u >/dev/null 2>&1
+then if [ `id -u` -eq 0 ]
+ then ISROOT="Y"
+ fi
+elif # only check $LOGNAME if $USER is not set
+ [ "$USER" = 'root' -o \( ! "$USER" -a "$LOGNAME" = 'root' \) ]
+then ISROOT="Y"
+fi
+
+if [ "$ISROOT" = "Y" ]
then
(
echo "$CMDNAME: cannot be run as root" 1>&2