#!/bin/sh #writen by Zane C. Bowers . `which sh-include` include random include lugtools usage(){ echo "lurm: search and change the password of a posix user in a LDAP directory" echo "version 0.1.2" echo "" echo "-c the config file to use... the default is ~/.lugtools" echo "" echo "required:" echo "-u the username of the user" echo "" echo "-h display this" } #create the tmp file tmpfile=/tmp/luadd.$$ touch $tmpfile chmod go-rwx $tmpfile #default config file config=~/.lugtools #get the options while getopts hu:c: OPTION ; do case "$OPTION" in u) username="$OPTARG" ;; c) config="$OPTARG" ;; h) usage=true ;; \?) usage=true ;; esac done #if usage is defined, print the usage info and exit if [ ! -z $usage ]; then usage; exit 1; fi #includes the config file if [ -e $config ]; then . $config else echo $config does not exist exit 1 fi #exit if no username is specified if [ -z $username ]; then echo -u not used to specify a user name exit 1 fi #get the user DN userDN=`LDAPuserDN $username $USERBASE $BIND $PASSWDFILE` #make sure one was found if [ -z $userDN ]; then echo "$username now found in $USERBASE" exit 1 fi #ask for passwd and change it ldappasswd -S -y "$PASSWDFILE" -D "$BIND" $userDN