json_close_array
}
-_procd_add_network_trigger() {
+_procd_add_reload_interface_trigger() {
local script=$(readlink "$initscript")
local name=$(basename ${script:-$initscript})
_procd_add_reload_trigger() {
local script=$(readlink "$initscript")
local name=$(basename ${script:-$initscript})
+ local file
_procd_open_trigger
- _procd_add_config_trigger "config.change" $1 /etc/init.d/$name reload
+ for file in "$@"; do
+ _procd_add_config_trigger "config.change" "$file" /etc/init.d/$name reload
+ done
_procd_close_trigger
}
_procd_ubus_call delete
}
+procd_open_data() {
+ local name="$1"
+ json_set_namespace procd __procd_old_cb
+ json_add_object data
+}
+
+procd_close_data() {
+ json_close_object
+ json_set_namespace $__procd_old_cb
+}
+
+_procd_set_config_changed() {
+ local package="$1"
+
+ json_init
+ json_add_string type config.change
+ json_add_object data
+ json_add_string package "$package"
+ json_close_object
+
+ ubus call service event "$(json_dump)"
+}
+
uci_validate_section()
{
local _package="$1"
local _type="$2"
local _name="$3"
+ local _result
local _error
shift; shift; shift
- local _result=`/sbin/validate_data "$_package" "$_type" "$_name" "$@" 2> /dev/null`
+ _result=`/sbin/validate_data "$_package" "$_type" "$_name" "$@" 2> /dev/null`
_error=$?
eval "$_result"
[ "$_error" = "0" ] || `/sbin/validate_data "$_package" "$_type" "$_name" "$@" 1> /dev/null`
procd_close_service \
procd_add_instance \
procd_add_config_trigger \
- procd_add_reload_trigger \
procd_add_interface_trigger \
- procd_add_network_trigger \
+ procd_add_reload_trigger \
+ procd_add_reload_interface_trigger \
+ procd_add_interface_reload \
procd_open_trigger \
procd_close_trigger \
procd_open_instance \
procd_set_param \
procd_append_param \
procd_add_validation \
+ procd_set_config_changed \
procd_kill