local cfg="$1"
local realm="$(uci_get system.@system[0].hostname)"
- local listen http https interpreter indexes path
+ local listen http https interpreter indexes path handler
procd_open_instance
procd_set_param respawn
append_arg "$cfg" realm "-r" "${realm:-OpenWrt}"
append_arg "$cfg" config "-c"
append_arg "$cfg" cgi_prefix "-x"
- append_arg "$cfg" lua_prefix "-l"
- append_arg "$cfg" lua_handler "-L"
- append_arg "$cfg" ubus_prefix "-u"
- append_arg "$cfg" ubus_socket "-U"
+ [ -f /usr/lib/uhttpd_lua.so ] && {
+ config_get handler "$cfg" lua_handler
+ [ -f "$handler" ] && append_arg "$cfg" lua_prefix "-l" && {
+ procd_append_param command "-L" "$handler"
+ }
+ }
+ [ -f /usr/lib/uhttpd_ubus.so ] && {
+ append_arg "$cfg" ubus_prefix "-u"
+ append_arg "$cfg" ubus_socket "-U"
+ }
append_arg "$cfg" script_timeout "-t"
append_arg "$cfg" network_timeout "-T"
append_arg "$cfg" http_keepalive "-k"