Просмотр исходного кода

uhttpd: don't process ubus_* and lua_* options if corresponding plugin is not installed (#14618)

SVN-Revision: 39057
Jo-Philipp Wich 12 лет назад
Родитель
Сommit
e444eb0bbd
1 измененных файлов с 8 добавлено и 4 удалено
  1. 8 4
      package/network/services/uhttpd/files/uhttpd.init

+ 8 - 4
package/network/services/uhttpd/files/uhttpd.init

@@ -67,10 +67,14 @@ start_instance()
 	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 ] && {
+		append_arg "$cfg" lua_prefix "-l"
+		append_arg "$cfg" lua_handler "-L"
+	}
+	[ -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"