samba4: fix netbios_name

* fixes: error 0x80070035
* add triggers to catch hostname changes

Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
This commit is contained in:
Andy Walsh 2018-09-27 16:54:06 +02:00
parent 4b309aefd6
commit 32328835df
3 changed files with 12 additions and 20 deletions

View file

@ -3,7 +3,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=samba PKG_NAME:=samba
PKG_VERSION:=4.9.1 PKG_VERSION:=4.9.1
PKG_RELEASE:=1 PKG_RELEASE:=2
PKG_MAINTAINER:=Andy Walsh <andy.walsh44+github@gmail.com> PKG_MAINTAINER:=Andy Walsh <andy.walsh44+github@gmail.com>
PKG_LICENSE:=GPL-3.0-only PKG_LICENSE:=GPL-3.0-only

View file

@ -1,5 +1,4 @@
config samba config samba
option 'name' 'OpenWrt-SMB'
option 'workgroup' 'WORKGROUP' option 'workgroup' 'WORKGROUP'
option 'description' 'Samba on OpenWrt' option 'description' 'Samba on OpenWrt'
option 'charset' 'UTF-8' option 'charset' 'UTF-8'

View file

@ -1,6 +1,6 @@
#!/bin/sh /etc/rc.common #!/bin/sh /etc/rc.common
START=99 START=98
USE_PROCD=1 USE_PROCD=1
smb_header() { smb_header() {
@ -19,12 +19,12 @@ smb_header() {
done done
) )
local name workgroup description charset local workgroup description charset
local hostname="$(uci_get system.@system[0].hostname)" # we dont use netbios anymore as default and wsd/avahi is dns based
local hostname="$(hostname -f)"
config_get name $1 name "${hostname:-OpenWrt}" config_get workgroup $1 workgroup "WORKGROUP"
config_get workgroup $1 workgroup "${hostname:-WORKGROUP}" config_get description $1 description "Samba on OpenWrt"
config_get description $1 description "Samba on ${hostname:-OpenWrt}"
config_get charset $1 charset "UTF-8" config_get charset $1 charset "UTF-8"
config_get_bool MACOS $1 macos 0 config_get_bool MACOS $1 macos 0
@ -33,7 +33,7 @@ smb_header() {
config_get_bool DISABLE_WINBIND $1 disable_winbind 0 config_get_bool DISABLE_WINBIND $1 disable_winbind 0
mkdir -p /var/etc mkdir -p /var/etc
sed -e "s#|NAME|#$name#g" \ sed -e "s#|NAME|#$hostname#g" \
-e "s#|WORKGROUP|#$workgroup#g" \ -e "s#|WORKGROUP|#$workgroup#g" \
-e "s#|DESCRIPTION|#$description#g" \ -e "s#|DESCRIPTION|#$description#g" \
-e "s#|INTERFACES|#$interfaces#g" \ -e "s#|INTERFACES|#$interfaces#g" \
@ -144,18 +144,11 @@ init_config() {
config_foreach smb_add_share sambashare config_foreach smb_add_share sambashare
} }
reload_service() {
init_config
killall -HUP samba
killall -HUP smbd
killall -HUP nmbd
killall -HUP winbindd
}
service_triggers() { service_triggers() {
procd_add_reload_trigger samba4 PROCD_RELOAD_DELAY=2000
procd_add_reload_trigger "dhcp" "system" "samba4"
local i local i
for i in $samba_iface; do for i in $samba_iface; do
procd_add_reload_interface_trigger $i procd_add_reload_interface_trigger $i