summaryrefslogtreecommitdiff
path: root/contrib/polipo/addsysuser
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/polipo/addsysuser')
-rw-r--r--contrib/polipo/addsysuser45
1 files changed, 45 insertions, 0 deletions
diff --git a/contrib/polipo/addsysuser b/contrib/polipo/addsysuser
new file mode 100644
index 0000000000..7f1d79a97c
--- /dev/null
+++ b/contrib/polipo/addsysuser
@@ -0,0 +1,45 @@
+#!/bin/sh
+#
+# Original adduser 05 Feb 2002 by Jon L. Gardner
+#
+# Modified for Tor installer by Nick Mathewson
+
+ROOTPROP=/
+
+if [ "`whoami`" != "root" ]; then
+echo "You must be root to execute this script."
+exit
+fi
+if [ "x$3" = "x" ]; then
+echo 'Usage: addsysuser <username> "<full name>" <homedir>'
+exit 0
+fi
+username=$1
+realname=$2
+homedir=$3
+# GID 20 is "staff" which is the default. Change it if you want.
+gid=`niutil -readprop $ROOTPROP /groups/daemon gid`
+if [ "x`niutil -list $ROOTPROP /users|cut -f2 -d' '|grep $username`" != "x" ]; then
+echo The account $username already exists.
+exit 0
+fi
+# home is the local path to the home directory
+home=/Users/$username
+# defhome is what goes into NetInfo
+defhome="/Network/Servers/MyServer/Users"
+#echo "Determining next available system uid (please be patient)..."
+# Uids over 500 are for system users.
+uiddef=`nidump passwd / | cut -d: -f3 | sort -n | grep -v '^[56789]..' |grep -v '^....$' | tail -n 1`
+uiddef=`echo $uiddef + 1 |bc`
+echo Creating account for $username...
+niutil -create $ROOTPROP /users/$username
+niutil -createprop $ROOTPROP /users/$username _writers_tim_passwd $username
+niutil -createprop $ROOTPROP /users/$username realname $realname
+niutil -createprop $ROOTPROP /users/$username _writers_passwd $username
+niutil -createprop $ROOTPROP /users/$username uid $uiddef
+#niutil -createprop $ROOTPROP /users/$username home_loc "<home_dir><url>afp://afp.server.com/Users/</url><path>$username</path></home_dir>"
+niutil -createprop $ROOTPROP /users/$username gid $gid
+niutil -createprop $ROOTPROP /users/$username home $homedir
+niutil -createprop $ROOTPROP /users/$username name $username
+niutil -createprop $ROOTPROP /users/$username passwd '*'
+niutil -createprop $ROOTPROP /users/$username shell /dev/null