Masato Taruishi
taru****@sourc*****
2004年 6月 18日 (金) 11:51:54 JST
=================================================================== RCS file: ultrapossum/module/server/2.0,v retrieving revision 1.16 retrieving revision 1.17 diff -u -r1.16 -r1.17 --- ultrapossum/module/server/2.0 2004/06/16 10:08:47 1.16 +++ ultrapossum/module/server/2.0 2004/06/18 02:51:53 1.17 @@ -30,7 +30,7 @@ echo "E: $SLAPD abnormally exits. Probably you can see the error by syslog" 1>&2 return 1 fi - wait_pid $CHROOTDIRECTORY/$SLAPD_PIDFILE + $MODULEDIR/server/pid wait $CHROOTDIRECTORY/$SLAPD_PIDFILE echo -n "`basename $SLAPD`" create_environ @@ -57,14 +57,14 @@ } ldapmaster_stop() { - stop_pid $CHROOTDIRECTORY/$SLAPD_PIDFILE + $MODULEDIR/server/pid stop $CHROOTDIRECTORY/$SLAPD_PIDFILE echo -n "`basename $SLAPD`" if test "`ldapslurp_status`" = "running"; then ldapslurp_stop /bin/rm -f $slurpdlog fi - if test "`status_pid $slurpdlogpid`" = "running"; then - stop_pid $slurpdlogpid + if test "`$MODULEDIR/server/pid status $slurpdlogpid`" = "running"; then + $MODULEDIR/server/pid stop $slurpdlogpid fi } @@ -75,7 +75,7 @@ } ldapmaster_status() { - status_pid $CHROOTDIRECTORY/$SLAPD_PIDFILE + $MODULEDIR/server/pid status $CHROOTDIRECTORY/$SLAPD_PIDFILE } ldapslurp_start() { @@ -83,102 +83,31 @@ install -d $rpldir $SLURPD -d $SLURPD_DEBUGLEVEL -f $ULTRAPOSSUM_MASTER_SLAPD_CONF -t $rpldir $SLURPD_EXTRA_ARGS & echo $! > $SLURPD_PIDFILE - wait_pid $SLURPD_PIDFILE + $MODULEDIR/server/pid wait $SLURPD_PIDFILE echo -n " `basename $SLURPD`" } ldapslurp_stop() { - stop_pid $SLURPD_PIDFILE + $MODULEDIR/server/pid stop $SLURPD_PIDFILE echo -n " `basename $SLURPD`" } ldapslurp_status() { - status_pid $SLURPD_PIDFILE + $MODULEDIR/server/pid status $SLURPD_PIDFILE } ldapslave_stop() { - stop_pid $CHROOTDIRECTORY$SLAPD_SLAVE_PIDFILE + $MODULEDIR/server/pid stop $CHROOTDIRECTORY$SLAPD_SLAVE_PIDFILE echo -n "`basename $SLAPD`" } ldapslave_start() { $SLAPD -h "$SLAPDURILIST" - wait_pid $CHROOTDIRECTORY/$SLAPD_SLAVE_PIDFILE + $MODULEDIR/server/pid wait $CHROOTDIRECTORY/$SLAPD_SLAVE_PIDFILE echo -n "`basename $SLAPD`" } ldapslave_status() { - status_pid $CHROOTDIRECTORY/$SLAPD_SLAVE_PIDFILE -} - -# status <pidfile> -status_pid() { - if test -f $1; then - if test -d /proc/`head -1 $1`; then - echo "running" - else - echo "stopped" - echo "W: $1 exist even if pid `head -1 $1` doesn't exist" 1>&2 - rm -f $1 - fi - else - echo "stopped" - fi -} - -wait_pid() { - - if test "`status_pid $1`" = "running"; then - return 0 - fi - - sleep 1 - - if test "`status_pid $1`" = "running"; then - return 0 - fi - - (for i in 1 2 3 4 5 6 7 8 9 10 - do - sleep $i - if test "`status_pid $1`" = "running"; then - exit 0 - fi - echo -n "." - done - echo "timeout" 1>&2 - exit 1) || exit 1 - echo -n " " - -} - -stop_pid() { - if [ -f $1 ]; then - PID=`head -1 $1` - if test -d /proc/$PID; then - kill -TERM $PID 2> /dev/null || true - sleep 1 - if ! test -d /proc/$PID; then - if test -f $1; then /bin/rm -f $1; fi - return 0 - fi - (for i in 1 2 3 4 5 6 7 8 9 10 - do - echo -n "." 1>&2 - if ! test -d /proc/$PID; then - if test -f $1; then /bin/rm -f $1; fi - exit 0 - fi - sleep $i - done - echo -n " sending KILL signal ($PID)" 1>&2 - kill -KILL $PID 2> /dev/null || true - sleep 1 - /bin/rm -f $1) - echo -n " " 1>&2 - else - /bin/rm -f $1 - fi - fi + $MODULEDIR/server/pid status $CHROOTDIRECTORY/$SLAPD_SLAVE_PIDFILE }