minstrel-rcd: add work-in-progress minstrel remote control daemon
[openwrt/staging/nbd.git] / package / utils / minstrel-rcd / files / minstrel-rcd.init
1 #!/bin/sh /etc/rc.common
2 # Copyright (C) 2020 OpenWrt.org
3
4 START=99
5 USE_PROCD=1
6 PROG=/usr/sbin/minstrel-rcd
7
8 service_triggers() {
9 procd_add_reload_trigger "minstrel-rcd"
10 }
11
12 validate_rcd_section() {
13 uci_load_validate minstrel-rcd rcd "$1" "$2" \
14 'listen:list(host)' 'enabled:bool:1'
15 }
16
17 start_rcd_instance() {
18 [ "$enabled" -eq 0 ] && return
19
20 procd_open_instance
21 procd_set_param command "$PROG"
22 for addr in $listen; do
23 procd_append_param command -h $addr
24 done
25 procd_set_param respawn
26 procd_close_instance
27 }
28
29 start_service() {
30 validate_rcd_section rcd start_rcd_instance
31 }