Michal Ambroz aea04ba
#! /bin/sh
Michal Ambroz aea04ba
#
Michal Ambroz aea04ba
# Startup script for dionaea
Michal Ambroz aea04ba
#
Michal Ambroz aea04ba
# chkconfig:   - 39 61
Michal Ambroz aea04ba
# description: Starts and stops the dionaea honeypot
Michal Ambroz aea04ba
Michal Ambroz aea04ba
### BEGIN INIT INFO
Michal Ambroz aea04ba
# Provides:       dionaea
Michal Ambroz aea04ba
# Required-Start: $local_fs $network
Michal Ambroz aea04ba
# Required-Stop:  $local_fs $network
Michal Ambroz aea04ba
# Default-Start:
Michal Ambroz aea04ba
# Default-Stop:
Michal Ambroz aea04ba
# Short-Description: Starts and stops the dionaea
Michal Ambroz aea04ba
# Description:       Dionaea is a low-interaction honeypot
Michal Ambroz aea04ba
### END INIT INFO
Michal Ambroz aea04ba
Michal Ambroz aea04ba
[ -f /etc/rc.d/init.d/functions ] && . /etc/rc.d/init.d/functions
Michal Ambroz aea04ba
Michal Ambroz aea04ba
exec=/usr/sbin/dionaea
Michal Ambroz aea04ba
prog=dionaea
Michal Ambroz aea04ba
dionaea_ARGS="--detach"
Michal Ambroz aea04ba
[ -e /etc/sysconfig/dionaea ] && . /etc/sysconfig/dionaea
Michal Ambroz aea04ba
args="${dionaea_ARGS}"
Michal Ambroz aea04ba
Michal Ambroz aea04ba
lockfile=/var/lock/subsys/$prog
Michal Ambroz aea04ba
Michal Ambroz aea04ba
start() {
Michal Ambroz aea04ba
    [ -x $exec ] || exit 5
Michal Ambroz aea04ba
    [ -f $config ] || exit 6
Michal Ambroz aea04ba
    echo -n $"Starting $prog: "
Michal Ambroz aea04ba
    daemon "$exec $args"
Michal Ambroz aea04ba
    retval=$?
Michal Ambroz aea04ba
    echo
Michal Ambroz aea04ba
    [ $retval -eq 0 ] && touch $lockfile
Michal Ambroz aea04ba
    return $retval
Michal Ambroz aea04ba
}
Michal Ambroz aea04ba
Michal Ambroz aea04ba
stop() {
Michal Ambroz aea04ba
    echo -n $"Stopping $prog: "
Michal Ambroz aea04ba
    killproc "$prog"
Michal Ambroz aea04ba
    retval=$?
Michal Ambroz aea04ba
    echo
Michal Ambroz aea04ba
    [ $retval -eq 0 ] && rm -f $lockfile
Michal Ambroz aea04ba
    return $retval
Michal Ambroz aea04ba
}
Michal Ambroz aea04ba
Michal Ambroz aea04ba
restart() {
Michal Ambroz aea04ba
    stop
Michal Ambroz aea04ba
    start
Michal Ambroz aea04ba
}
Michal Ambroz aea04ba
Michal Ambroz aea04ba
reload() {
Michal Ambroz aea04ba
    restart
Michal Ambroz aea04ba
}
Michal Ambroz aea04ba
Michal Ambroz aea04ba
force_reload() {
Michal Ambroz aea04ba
    restart
Michal Ambroz aea04ba
}
Michal Ambroz aea04ba
Michal Ambroz aea04ba
rh_status() {
Michal Ambroz aea04ba
    # run checks to determine if the service is running or use generic status
Michal Ambroz aea04ba
    status $prog
Michal Ambroz aea04ba
}
Michal Ambroz aea04ba
Michal Ambroz aea04ba
rh_status_q() {
Michal Ambroz aea04ba
    rh_status >/dev/null 2>&1
Michal Ambroz aea04ba
}
Michal Ambroz aea04ba
Michal Ambroz aea04ba
Michal Ambroz aea04ba
case "$1" in
Michal Ambroz aea04ba
    start)
Michal Ambroz aea04ba
        rh_status_q && exit 0
Michal Ambroz aea04ba
        $1
Michal Ambroz aea04ba
        ;;
Michal Ambroz aea04ba
    stop)
Michal Ambroz aea04ba
        rh_status_q || exit 0
Michal Ambroz aea04ba
        $1
Michal Ambroz aea04ba
        ;;
Michal Ambroz aea04ba
    restart)
Michal Ambroz aea04ba
        $1
Michal Ambroz aea04ba
        ;;
Michal Ambroz aea04ba
    reload)
Michal Ambroz aea04ba
        rh_status_q || exit 7
Michal Ambroz aea04ba
        $1
Michal Ambroz aea04ba
        ;;
Michal Ambroz aea04ba
    force-reload)
Michal Ambroz aea04ba
        force_reload
Michal Ambroz aea04ba
        ;;
Michal Ambroz aea04ba
    status)
Michal Ambroz aea04ba
        rh_status
Michal Ambroz aea04ba
        ;;
Michal Ambroz aea04ba
    condrestart|try-restart)
Michal Ambroz aea04ba
        rh_status_q || exit 0
Michal Ambroz aea04ba
        restart
Michal Ambroz aea04ba
        ;;
Michal Ambroz aea04ba
    *)
Michal Ambroz aea04ba
        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
Michal Ambroz aea04ba
        exit 2
Michal Ambroz aea04ba
esac
Michal Ambroz aea04ba
exit $?
Michal Ambroz aea04ba