#!/bin/sh

# Copyright (C) 2026 GuardSarm, Inc.
# GuardSarm         Controls GuardSarm on Redhat-based systems
# Author:       Kayvan A. Sylvan <kayvan@sylvan.com>
# Author:       Daniel B. Cid <dcid@ossec.net>
#
# chkconfig: 2345 99 15
# description: Starts and stops GuardSarm (Host Intrusion Detection System)
#
# This will work on Redhat systems (maybe others too)

# Source function library.
export LANG=C

. /etc/init.d/functions

GUARDSARM_HOME=/var/gsmsec
GUARDSARM_CONTROL="$GUARDSARM_HOME/bin/guardsarm-control"

start() {
    echo -n "Starting GuardSarm: "
    ${GUARDSARM_CONTROL} start > /dev/null
    RETVAL=$?
    if [ $RETVAL -eq 0 ]; then
        success
    else
        failure
    fi
    echo
    return $RETVAL
}

stop() {
    echo -n "Stopping GuardSarm: "
    ${GUARDSARM_CONTROL} stop > /dev/null
    RETVAL=$?
    if [ $RETVAL -eq 0 ]; then
        success
    else
        failure
    fi
    echo
    return $RETVAL
}

status() {
    ${GUARDSARM_CONTROL} status
    RETVAL=$?
    return $RETVAL
}

case "$1" in
start)
    start
    ;;
stop)
    stop
    ;;
restart)
    stop
    start
    ;;
status)
    status
    ;;
*)
    echo "*** Usage: guardsarm {start|stop|restart|status}"
    exit 1
esac

exit $?
