|
|
@ -8,26 +8,29 @@ USE_PROCD=1 |
|
|
|
PROG=/usr/bin/snort |
|
|
|
|
|
|
|
validate_snort_section() { |
|
|
|
uci_validate_section snort snort "${1}" \ |
|
|
|
uci_load_validate snort snort "$1" "$2" \ |
|
|
|
'config_file:string' \ |
|
|
|
'interface:string' |
|
|
|
} |
|
|
|
|
|
|
|
start_service() { |
|
|
|
local config_file interface |
|
|
|
|
|
|
|
validate_snort_section snort || { |
|
|
|
start_snort_instance() { |
|
|
|
[ "$2" = 0 ] || { |
|
|
|
echo "validation failed" |
|
|
|
return 1 |
|
|
|
} |
|
|
|
|
|
|
|
procd_open_instance |
|
|
|
procd_set_param command $PROG "-q" "--daq-dir" "/usr/lib/daq/" "-i" "$interface" "-c" "$config_file" "-s" "-N" |
|
|
|
procd_set_param file $CONFIGFILE |
|
|
|
procd_set_param file $config_file |
|
|
|
procd_set_param respawn |
|
|
|
procd_close_instance |
|
|
|
} |
|
|
|
|
|
|
|
start_service() |
|
|
|
{ |
|
|
|
validate_snort_section snort start_snort_instance |
|
|
|
} |
|
|
|
|
|
|
|
stop_service() |
|
|
|
{ |
|
|
|
service_stop ${PROG} |
|
|
|