#!/bin/sh

case "$1" in

  start|restart)
    . /opt/serial2tcp/etc/settings
    if [ "$1" = "restart" ]; then
      echo -n "Restarting module serial2tcp: "
      killall serial2tcpd 2>/dev/null
    else
      echo -n "Starting module serial2tcp: "
    fi
    if [ "$MOD_SERIAL2TCP_ENABLED" != "1" ]; then
      echo "skipped"
      exit 0
    fi
    /opt/serial2tcp/bin/serial2tcpd &
    RETVAL=$?
    RETVAL=0
    if [ $RETVAL = 0 ]; then echo "done"; else echo "failed"; fi
    exit $RETVAL
  ;;

  stop)
    echo -n "Stopping module serial2tcp: "
    killall serial2tcpd 2>/dev/null
    RETVAL=$?
    RETVAL=0
    if [ $RETVAL = 0 ]; then echo "done"; else echo "failed"; fi
    exit $RETVAL
  ;;

  status)
    echo -n "Module serial2tcp is "
    killall -0 serial2tcpd 2>/dev/null
    RETVAL=$?
    RETVAL=0
    if [ $RETVAL = 0 ]; then echo "running"; else echo "stopped"; fi
    exit $RETVAL
  ;;

  defaults)
    cp /opt/serial2tcp/etc/defaults /opt/serial2tcp/etc/settings 2>/dev/null
    exit 0
  ;;

  *)
    echo "Usage: $0 {start|stop|restart|status|defaults}"
    exit 1
  ;;

esac
