#! /bin/sh ### BEGIN INIT INFO # Provides: ser2net-client # Required-Start: $local_fs $time $network $named # Required-Stop: $local_fs $time $network $named # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start/stop (socat a multipurpose relay) # # Description: The socat init script will start/stop socat as specified in /etc/default/socat # Then log (FATAL,ERROR,WARN,INFO and Notic) in /var/log/socat.log ### END INIT INFO NAME=ser2net-client DAEMON=/usr/bin/socat # -d -d -d for more logging SOCAT_DEFAULTS='-lf /var/log/ser2net-client.log' . /lib/lsb/init-functions . /etc/default/${NAME} PATH=/bin:/usr/bin:/sbin:/usr/sbin [ -x $DAEMON ] || exit 0 start_socat() { start-stop-daemon --oknodo --quiet --start \ --pidfile /run/ser2net-client.pid \ --background --make-pidfile \ --exec $DAEMON -- $SOCAT_DEFAULTS $OPTIONS < /dev/null } stop_socat() { start-stop-daemon --oknodo --stop --quiet --pidfile /run/ser2net-client.pid --exec $DAEMON rm -f /run/ser2net-client.pid } start () { start_socat return $? } stop () { for PIDFILE in `ls /run/ser2net-client.pid 2> /dev/null`; do NAME=`echo $PIDFILE | cut -c16-` NAME=${NAME%%.pid} stop_socat done } case "$1" in start) log_daemon_msg "Starting multipurpose relay" "ser2net-client" if start ; then log_end_msg $? else log_end_msg $? fi ;; stop) log_daemon_msg "Stopping multipurpose relay" "ser2net-client" if stop ; then log_end_msg $? else log_end_msg $? fi ;; restart) log_daemon_msg "Restarting multipurpose relay" "ser2net-client" stop if start ; then log_end_msg $? else log_end_msg $? fi ;; reload|force-reload) log_daemon_msg "Reloading multipurpose relay" "ser2net-client" stop if start ; then log_end_msg $? else log_end_msg $? fi ;; status) status_of_proc -p /run/ser2net-client.pid /usr/bin/socat socat && exit 0 || exit $? ;; *) echo "Usage: /etc/init.d/$NAME {start|stop|restart|reload|force-reload|status}" exit 3 ;; esac exit 0