diff options
author | Marcin Jurkowski <marcin1j@gmail.com> | 2015-09-02 00:12:24 +0200 |
---|---|---|
committer | Marcin Jurkowski <marcin1j@gmail.com> | 2015-09-02 12:48:43 +0200 |
commit | 5ba490239a18ccd483c5462b61f0277d0572ffd0 (patch) | |
tree | b51079f96f55fe691119d5be83a57be3e74d02bb /net/nbd/files | |
parent | 6bb198c646a6ef053fa59668ee3dfe98c743f839 (diff) |
nbd: use procd style init script for nbd-server
Runs nbd-server in foreground.
Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
Diffstat (limited to 'net/nbd/files')
-rw-r--r-- | net/nbd/files/nbd-server.init | 40 |
1 files changed, 22 insertions, 18 deletions
diff --git a/net/nbd/files/nbd-server.init b/net/nbd/files/nbd-server.init index 7759219a8..ae3db2460 100644 --- a/net/nbd/files/nbd-server.init +++ b/net/nbd/files/nbd-server.init @@ -1,9 +1,11 @@ #!/bin/sh /etc/rc.common -# Copyright (C) 2012 OpenWrt.org +# Copyright (C) 2015 OpenWrt.org START=60 -SERVICE_USE_PID=1 +STOP=40 +USE_PROCD=1 +PROG=/usr/bin/nbd-server CONFIGFILE="/var/etc/nbd-server.conf" @@ -81,28 +83,30 @@ config_handle_share() { append_val_str listenaddr "$cfg" oldstyle_listenaddr } -config_read() { +start_instance() { + local cfg="$1" + local enabled - mkdir -p $(dirname $CONFIGFILE) - echo -n > $CONFIGFILE + config_get_bool enabled "$cfg" 'enabled' '0' + [ "$enabled" = 0 ] && return 1 + + procd_open_instance + procd_set_param command $PROG --config-file=$CONFIGFILE + procd_set_param file $CONFIGFILE + procd_close_instance +} +start_service() { config_load nbd-server + + mkdir -p $(dirname $CONFIGFILE) + echo "# auto-generated config file from /etc/config/nbd-server" > $CONFIGFILE config_foreach config_handle_generic nbd-server config_foreach config_handle_share share -} - -start() { - config_read - if [ "$SERVICE_ENABLED" = "1" ]; then - service_start /usr/bin/nbd-server \ - --pid-file /var/run/nbd-server.pid \ - --config-file=$CONFIGFILE - fi + config_foreach start_instance nbd-server } -stop() { - service_stop /usr/bin/nbd-server +service_triggers() { + procd_add_reload_trigger "nbd-server" } - - |