aboutsummaryrefslogtreecommitdiff
path: root/net/xray-core
diff options
context:
space:
mode:
authorTianling Shen <cnsztl@project-openwrt.eu.org>2021-02-04 06:53:47 +0800
committerTianling Shen <cnsztl@project-openwrt.eu.org>2021-02-04 11:50:40 +0800
commitae044501b3073c4ce8ab570802ee48c0480a0ccf (patch)
treec93773f144cd84d45343813b7dd8b61fff90bf22 /net/xray-core
parent18ce7b437a6ead10f49bf9466f2aed8d5679cb12 (diff)
xray-core: fix service start / reload
Fix starting problem: Starting function should be named 'start_service' instead of 'start_instance'. Fix reloading problem: Register reload tigger for uci config itself. And, xray does not support reload currently, so use legacy restart as reload. Fixes: 6c9b96352fb5e7d6acdf8f14ea4f9251cd09926b ("xray-core: add init script") Signed-off-by: Tianling Shen <cnsztl@project-openwrt.eu.org>
Diffstat (limited to 'net/xray-core')
-rwxr-xr-xnet/xray-core/files/xray.init15
1 files changed, 12 insertions, 3 deletions
diff --git a/net/xray-core/files/xray.init b/net/xray-core/files/xray.init
index f45df1b94..8ee5caa8f 100755
--- a/net/xray-core/files/xray.init
+++ b/net/xray-core/files/xray.init
@@ -7,7 +7,7 @@ CONF="xray"
PROG="/usr/bin/xray"
CAPA_FILE="/etc/capabilities/xray.json"
-start_instance() {
+start_service() {
config_load "$CONF"
local enabled
@@ -24,7 +24,7 @@ start_instance() {
config_get datadir "config" "datadir" "/usr/share/xray"
config_get format "config" "format" "json"
- procd_open_instance
+ procd_open_instance "$CONF"
procd_set_param command "$PROG" run
[ -n "$confdir" ] && procd_append_param command -confdir "$confdir"
[ -n "$conffiles" ] && {
@@ -42,10 +42,19 @@ start_instance() {
procd_set_param respawn
[ -x "/sbin/ujail" -a -e "$CAPA_FILE" ] && {
- procd_add_jail xray
+ procd_add_jail "$CONF"
procd_set_param capabilities "$CAPA_FILE"
procd_set_param user nobody
procd_set_param no_new_privs 1
}
procd_close_instance
}
+
+reload_service() {
+ stop
+ start
+}
+
+service_triggers() {
+ procd_add_reload_trigger "$CONF"
+}