[PATCH v2 1/2] uhttpd: Reload config after uhttpd-mod-ubus was added

Rafał Miłecki zajec5 at gmail.com
Thu Jan 6 13:50:06 PST 2022


Hi Hauke,

On 20.03.2021 20:57, Hauke Mehrtens wrote:
> Without this change the config is only committed, but the uhttpd daemon
> is not reloaded. This reload is needed to apply the config. Without the
> reload of uhttpd, the ubus server is not available over http and returns
> a Error 404.
> 
> This caused problems when installing luci on the snapshots and
> accessing it without reloading uhttpd.
> 
> Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>

this looks wrong to me. Calling init.d scripts from uci-defaults script
may result (and it results here) in starting uhttpd too early. We need
all uci-defaults script to do their updates before we call any init.d.

I hit this incorrect behaviour as I have my own uci-defaults script
switching uhttpd from port 80 to another one.

If you need some changes applied after *installing* a package perhaps
postinst should be used?

On another note it doesn't make sense to ship package with wrong config
and then always update it with uci-defaults script. Those scripts should
be used only for dealing with outdated configs.

If we always set ubus_prefix to "/ubus" then make it also a default
value in the uhttpd.config.



More information about the openwrt-devel mailing list