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
|
#!/bin/sh
# kFreeBSD do not accept scripts as interpreters, using #!/bin/sh and sourcing.
if [ true != "$INIT_D_SCRIPT_SOURCED" ] ; then
set "$0" "$@"; INIT_D_SCRIPT_SOURCED=true . /lib/init/init-d-script
fi
### BEGIN INIT INFO
# Provides: rtsp-server-perl
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: RTSP/RTP server
# Description: Lightweight RTSP/RTP streaming media server
### END INIT INFO
# Author: Adam Cecile <acecile@le-vert.net>
DESC="RTSP/RTP server"
DAEMON=/usr/bin/rtsp-server-perl
CLIENT_PORT=554
CLIENT_BIND=127.0.0.1
SERVER_PORT=5545
SERVER_BIND=127.0.0.1
LOG_LEVEL=3
EXTRA_OPTS=""
[ ! -f /etc/default/rtsp-server-perl ] || . /etc/default/rtsp-server-perl
# This may be overridden in /etc/default/rtsp-server-perl
DAEMON_ARGS="--clientport ${CLIENT_PORT} --serverport ${SERVER_PORT} --client_listen_address ${CLIENT_BIND} --source_listen_address ${SERVER_BIND} --loglevel ${LOG_LEVEL} ${EXTRA_OPTS}"
# start-stop-daemon, via /lib/init/init-d-script
START_ARGS="--background --make-pidfile"
# Override do_start_cmd(), as the name rtsp-server-perl is too long
do_start_cmd_override() {
start-stop-daemon --start --quiet --oknodo \
--pidfile ${PIDFILE} $START_ARGS \
--startas $DAEMON --exec $DAEMON -- $DAEMON_ARGS
}
# Override do_stop_cmd(): during start, the rtsp-server-perl process is replaced
# by /usr/bin/perl, which breaks process matching.
do_stop_cmd_override() {
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 \
$STOP_ARGS \
--pidfile ${PIDFILE} --exec /usr/bin/perl
RETVAL="$?"
[ "$RETVAL" = 2 ] && return 2
# Many daemons don't delete their pidfiles when they exit.
rm -f $PIDFILE
return $RETVAL
}
|