#!/bin/ksh # Add a user or host to an existing netgroup export TOPDIR=/usr/local/lib/ldap . ${TOPDIR}/etc/vars usage () { echo "Usage: $0 netgroup user|host username|hostname" } if [ ! $LDAPDOMAIN ] then LDAPDOMAIN=$DEFAULTLDAPDOMAIN fi DNDOMAIN=`echo $LDAPDOMAIN | sed -e "s/^/dc=/g" -e "s/\./,dc=/g"` if [ $# -lt 3 ] then usage exit 1 else NETGROUP=$1 TYPE=$2 NAME=$3 fi if [ $TYPE = "user" ] then cat ${LDIFTMPLTDIR}/add2netgroup.ldif | sed -e "s/NETGROUP/${NETGROUP}/" -e "s/DNDOMAIN/${DNDOMAIN}/" -e "s/LDAPDOMAIN/${LDAPDOMAIN}/" -e "s/,,/,${NAME},/" > ${WORKDIR}/add2netgroup-${NETGROUP}-${NAME}.ldif elif [ $TYPE = "host" ] then cat ${LDIFTMPLTDIR}/add2netgroup.ldif | sed -e "s/NETGROUP/${NETGROUP}/" -e "s/DNDOMAIN/${DNDOMAIN}/" -e "s/LDAPDOMAIN/${LDAPDOMAIN}/" -e "s/,,/${NAME}.in.snowball.com,,/" > ${WORKDIR}/add2netgroup-${NETGROUP}-${NAME}.ldif else usage fi ldapmodify -a -x -w $DIRMGRPW -D "cn=Directory Manager" -h localhost -f ${WORKDIR}/add2netgroup-${NETGROUP}-${NAME}.ldif if [ $? -eq 0 ] then mv ${WORKDIR}/add2netgroup-${NETGROUP}-${NAME}.ldif ${ADDEDDIR} else echo "Error adding $NAME to netgroup $NETGROUP" exit 1 fi