ref: d0159ed18d062b0cc694ad0b77e94c13d9327cb4
dir: /newuser/
#!/bin/rc run_newuser=t fn usage { echo 'usage: newuser [-n] [-d dept] [-e email] [-i postid] sponsormail user pass' >[1=2] exit 'usage' } while (~ $1 -*) { switch ($1) { case -[dier] x=$1 $2 shift case -n run_newuser=f case -* usage } shift } if (~ $#* 3) { s=$1 u=$2 p=$3 auth/keyfs if(test -w /srv/cwfs.cmd){ echo newuser $u >> /srv/cwfs.cmd wm/chusr $x -s $s -p $p $u if(~ $run_newuser t) { # auth/as $u /sys/lib/newuserb # messes up with namespace if(! test -f /env/authdom) authdom=`{ndb/query sys $sysname authdom} if(! test -f /env/authdom) { echo 'newuser: no authdom variable or entry in ndb' >[1=2] exit 'no authdom' } echo 'key user='$u' proto=p9sk1 dom='$authdom' role=client !password='$p >/mnt/factotum/ctl rcpu -u $u -c /sys/lib/newuser } auth/enable $u } if not { echo 'no cwfs.cmd or access to it'>[2=1] exit 'no cwfs.cmd or access to it' } } if not usage