1*4882a593Smuzhiyun#!/bin/sh 2*4882a593Smuzhiyun# 3*4882a593Smuzhiyun### BEGIN INIT INFO 4*4882a593Smuzhiyun# Provides: freediameter 5*4882a593Smuzhiyun# Default-Start: 2 3 4 5 6*4882a593Smuzhiyun# Default-Stop: 0 1 6 7*4882a593Smuzhiyun# Required-Start: $remote_fs $syslog 8*4882a593Smuzhiyun# Required-Stop: $remote_fs $syslog 9*4882a593Smuzhiyun# Short-Description: Start freeDiameter daemon at boot time 10*4882a593Smuzhiyun# Description: Start the freeDiameter daemon at boot time. 11*4882a593Smuzhiyun# freeDiameter is an extensible implementation of the Diameter protocol, 12*4882a593Smuzhiyun# designed for Authentication, Authorization and Accounting. Diameter is 13*4882a593Smuzhiyun# an evolution of the RADIUS protocol. 14*4882a593Smuzhiyun### END INIT INFO# 15*4882a593SmuzhiyunDAEMON=/usr/bin/freeDiameterd 16*4882a593SmuzhiyunCONF=/etc/freeDiameter/freeDiameter.conf 17*4882a593SmuzhiyunNAME=freediameter 18*4882a593SmuzhiyunDESC="freeDiameter daemon" 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun. /etc/init.d/functions 21*4882a593Smuzhiyunstart() { 22*4882a593Smuzhiyun [ -x $DAEMON ] || exit 5 23*4882a593Smuzhiyun echo -n $"Starting $DAEMON: " 24*4882a593Smuzhiyun start-stop-daemon -S -b -x ${DAEMON} && success || failure 25*4882a593Smuzhiyun retval=$? 26*4882a593Smuzhiyun echo "" 27*4882a593Smuzhiyun return $retval 28*4882a593Smuzhiyun} 29*4882a593Smuzhiyun 30*4882a593Smuzhiyunstop() { 31*4882a593Smuzhiyun echo -n $"Stopping $prog: " 32*4882a593Smuzhiyun start-stop-daemon -K -x $DAEMON 33*4882a593Smuzhiyun retval=$? 34*4882a593Smuzhiyun echo "" 35*4882a593Smuzhiyun return $retval 36*4882a593Smuzhiyun} 37*4882a593Smuzhiyun 38*4882a593Smuzhiyunrestart() { 39*4882a593Smuzhiyun stop 40*4882a593Smuzhiyun sleep 3 41*4882a593Smuzhiyun start 42*4882a593Smuzhiyun} 43*4882a593Smuzhiyun 44*4882a593Smuzhiyunrh_status() { 45*4882a593Smuzhiyun status $DAEMON 46*4882a593Smuzhiyun} 47*4882a593Smuzhiyun 48*4882a593Smuzhiyunrh_status_q() { 49*4882a593Smuzhiyun rh_status > /dev/null 2>&1 50*4882a593Smuzhiyun} 51*4882a593Smuzhiyun 52*4882a593Smuzhiyuncase "$1" in 53*4882a593Smuzhiyun start) 54*4882a593Smuzhiyun rh_status_q && exit 0 55*4882a593Smuzhiyun start 56*4882a593Smuzhiyun ;; 57*4882a593Smuzhiyun stop) 58*4882a593Smuzhiyun rh_status_q || exit 0 59*4882a593Smuzhiyun stop 60*4882a593Smuzhiyun ;; 61*4882a593Smuzhiyun restart) 62*4882a593Smuzhiyun restart 63*4882a593Smuzhiyun ;; 64*4882a593Smuzhiyun status) 65*4882a593Smuzhiyun rh_status 66*4882a593Smuzhiyun ;; 67*4882a593Smuzhiyun *) 68*4882a593Smuzhiyun echo $"Usage: $prog {start|stop|status|restart}" 69*4882a593Smuzhiyun exit 2 70*4882a593Smuzhiyunesac 71*4882a593Smuzhiyun 72*4882a593Smuzhiyunexit $? 73