#!/bin/sh /etc/rc.common

START=99
USE_PROCD=1
PROG=/usr/sbin/otbr-agent

validate_section_otbr_agent() {
	logger -t otbr-agent "validating agent section"
	uci_load_validate openthread otbr "$1" "$2" \
		'auto_attach:bool:0' \
		'enabled:bool:0' \
		'iface_lan:string' \
		'iface_wpan:string' \
		'radio_url:list(string)' \
		'verbose:bool:0'
}

start_otbr_agent() {
	[ "$2" -eq 0 ] || {
		echo "validation failed"
		return 1
	}

	[ "$enabled" -eq 1 ] || return 0


	procd_open_instance

	procd_set_param command $PROG

	procd_append_param command --auto-attach="$auto_attach"
	[ "$iface_lan" ] && procd_append_param command -B "$iface_lan"
	[ "$iface_wpan" ] && procd_append_param command -I "$iface_wpan"
	[ "$verbose" -eq 1 ] && procd_append_param command -v

	for url in $radio_url; do
		procd_append_param command "$url"
	done

	procd_set_param respawn

	procd_close_instance
}

start_service() {
	validate_section_otbr_agent agent start_otbr_agent
}
