summaryrefslogtreecommitdiff
path: root/sapi/phpdbg/phpdbg.init.d
blob: 1f0b1fdbf92b18a08b10ce3b2658c9f6a743e68c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
################################################################
# File:         /etc/init.d/phpdbg                             #
# Author:       krakjoe                                        #
# Purpose:      Daemonize phpdbg automatically on boot         #
# chkconfig:    2345    07 09                                  #
# description:  Starts, stops and restarts phpdbg daemon       #
################################################################
LOCKFILE=/var/lock/subsys/phpdbg
PIDFILE=/var/run/phpdbg.pid
STDIN=4000
STDOUT=8000
################################################################
# Either set path to phpdbg here or rely on phpdbg in ENV/PATH #
################################################################
if [ "x${PHPDBG}" == "x" ]; then
	PHPDBG=$(which phpdbg 2>/dev/null)
fi
################################################################
# Options to pass to phpdbg upon boot                          #
################################################################
OPTIONS=
LOGFILE=/var/log/phpdbg.log
################################################################
#     STOP EDITING STOP EDITING STOP EDITING STOP EDITING      #
################################################################
. /etc/rc.d/init.d/functions
RETVAL=1
################################################################
insanity()
{
	if [ "x${PHPDBG}" == "x" ]; then
		PHPDBG=$(which phpdbg 2>>/dev/null)
		if [ $? != 0 ]; then
			echo -n $"Fatal: cannot find phpdbg ${PHPDBG}"
			echo_failure
			echo
			return 1
		fi
	else
		if [ ! -x ${PHPDBG} ]; then
			echo -n $"Fatal: cannot execute phpdbg ${PHPDBG}"
			echo_failure
			echo
			return 1
		fi
	fi

	return 0
}

start()
{
	insanity

	if [ $? -eq 1 ]; then
		return $RETVAL
	fi

	echo -n $"Starting: phpdbg ${OPTIONS} on ${STDIN}/${STDOUT} "
	nohup ${PHPDBG} -l${STDIN}/${STDOUT} ${OPTIONS} 2>>${LOGFILE} 1>/dev/null </dev/null &
	PID=$!
	RETVAL=$?
	if [ $RETVAL -eq 0 ]; then
		echo $PID > $PIDFILE
		echo_success
	else
		echo_failure
	fi
	echo
	[ $RETVAL = 0 ] && touch ${LOCKFILE}
	return $RETVAL
}

stop()
{
	insanity

	if [ $? -eq 1 ]; then
		return $RETVAL
	fi

	if [ -f ${LOCKFILE} ] && [ -f ${PIDFILE} ]
	then
		echo -n $"Stopping: phpdbg ${OPTIONS} on ${STDIN}/${STDOUT} "
		kill -s TERM $(cat $PIDFILE)
		RETVAL=$?
		if [ $RETVAL -eq 0 ]; then
			echo_success
		else
			echo_failure
		fi
		echo
		[ $RETVAL = 0 ] && rm -f ${LOCKFILE} ${PIDFILE}
	else
		echo -n $"Error: phpdbg not running"
		echo_failure
		echo
		[ $RETVAL = 1 ]
	fi
	return $RETVAL
}
##################################################################
case "$1" in
	start)
	start
	;;
	stop)
	stop
	;;
	status)
	status $PHPDBG
	;;
	restart)
	$0 stop
	$0 start
	;;
	*)
	echo "usage: $0 start|stop|restart|status"
	;;
esac
###################################################################
exit $RETVAL