procd: service_data: Support data within the service itself

Use the same approach than the service_triggers for the service_data.

Signed-off-by: Pierre Lebleu <pme.lebleu@gmail.com>
master
Pierre Lebleu 7 years ago committed by John Crispin
parent ff56bb0dfb
commit 832b6b8305
  1. 4
      package/base-files/files/etc/rc.common
  2. 15
      package/system/procd/files/procd.sh

@ -88,6 +88,10 @@ service_triggers() {
return 0
}
service_data() {
return 0
}
service_running() {
return 0
}

@ -79,6 +79,9 @@ _procd_close_service() {
_procd_open_trigger
service_triggers
_procd_close_trigger
_procd_open_data
service_data
_procd_close_data
_procd_ubus_call ${1:-set}
}
@ -134,6 +137,18 @@ _procd_close_trigger() {
json_close_array
}
_procd_open_data() {
let '_procd_data_open = _procd_data_open + 1'
[ "$_procd_data_open" -gt 1 ] && return
json_add_object "data"
}
_procd_close_data() {
let '_procd_data_open = _procd_data_open - 1'
[ "$_procd_data_open" -lt 1 ] || return
json_close_object
}
_procd_open_validate() {
json_select ..
json_add_array "validate"

Loading…
Cancel
Save