aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2015-10-30 15:32:54 +0000
committerFelix Fietkau <nbd@openwrt.org>2015-10-30 15:32:54 +0000
commit12fca74dbfeccdad62555be2201e93aecb46699d (patch)
tree0bd0ae3b3e2cff1b5f737cc59deb3ed6fe0d7588
parent771b32ba2bc5ce40a60a029157ae2edc42dac000 (diff)
downloadmaster-187ad058-12fca74dbfeccdad62555be2201e93aecb46699d.tar.gz
master-187ad058-12fca74dbfeccdad62555be2201e93aecb46699d.tar.bz2
master-187ad058-12fca74dbfeccdad62555be2201e93aecb46699d.zip
samba: convert init script to procd, add reload support
Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@47292 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rwxr-xr-xpackage/network/services/samba36/files/samba.init30
1 files changed, 24 insertions, 6 deletions
diff --git a/package/network/services/samba36/files/samba.init b/package/network/services/samba36/files/samba.init
index 3146dd9f9b..376ae89988 100755
--- a/package/network/services/samba36/files/samba.init
+++ b/package/network/services/samba36/files/samba.init
@@ -2,6 +2,7 @@
# Copyright (C) 2008-2012 OpenWrt.org
START=60
+USE_PROCD=1
smb_header() {
local interface
@@ -86,15 +87,32 @@ smb_add_share() {
[ -n "$browseable" ] && echo -e "\tbrowseable = $browseable" >> /var/etc/smb.conf
}
-start() {
+init_config() {
config_load samba
config_foreach smb_header samba
config_foreach smb_add_share sambashare
- service_start /usr/sbin/smbd -D
- service_start /usr/sbin/nmbd -D
}
-stop() {
- service_stop /usr/sbin/smbd
- service_stop /usr/sbin/nmbd
+reload_service() {
+ init_config
+
+ killall -HUP smbd
+}
+
+service_triggers() {
+ procd_add_reload_trigger samba
+}
+
+start_service() {
+ init_config
+
+ procd_open_instance
+ procd_set_param command /usr/sbin/smbd -F
+ procd_set_param respawn
+ procd_close_instance
+
+ procd_open_instance
+ procd_set_param command /usr/sbin/nmbd -F
+ procd_set_param respawn
+ procd_close_instance
}