#!/usr/local/bin/cbsd
#v10.1.1
globalconf="${distdir}/cbsd.conf";
CBSDMODULE="bsdconf"
MYARG="mode"
MYOPTARG="jname"
MYDESC="OpenSSH jail helper"
ADDHELP="mode can be: on, off, status\n"

. ${subrdir}/nc.subr
. ${cbsdinit}

#defines
_MYDIR=$( dirname `realpath $0` )
SERVICE="ssh"

# $1 - "stop" or "start" or "reload|restart" or "status" ...
service_cmd()
{
	local _exec_cmd

	[ -z "${1}" ] && return 1

	if [ -z "${jname}" ]; then
		_exec_cmd="/usr/sbin/service sshd one${1}"
	else
		_exec_cmd="/usr/local/bin/cbsd service jname=${jname} sshd one${1}"
	fi

	${_exec_cmd}
}

# $1 - "NO" or "YES"
service_enable()
{
	local _exec_cmd
	[ -z "${1}" ] && return 1

	if [ -z "${jname}" ]; then
		_exec_cmd="/usr/local/cbsd/misc/cbsdsysrc"
	else
		_exec_cmd="/usr/local/bin/cbsd sysrc jname=${jname} -q sshd_enable=${1}"
	fi

	${_exec_cmd}
}

case "${mode}" in
	"off")
		service_enable "NO"
		service_cmd "stop"
		;;
	"on")
		service_enable "YES"
		service_cmd "start"
		;;
	"reload")
		service_cmd "reload"
		;;
	"status")
		service_cmd "status"
		;;
esac
