diff options
Diffstat (limited to 'debian/is-configured')
-rwxr-xr-x | debian/is-configured | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/debian/is-configured b/debian/is-configured new file mode 100755 index 0000000..0ba6c22 --- /dev/null +++ b/debian/is-configured @@ -0,0 +1,32 @@ +#! /bin/sh +# Check if the given service (smb|nmb|winbind|samba) +# should be run according to the settings in smb.conf + +[ -f /etc/samba/smb.conf ] || exit 1 + +server_role=$(testparm -s --parameter-name="server role" 2>/dev/null) +[ "active directory domain controller" = "$server_role" ] \ + && addc=1 || addc=0 + +case "$1" in + ( smb | smbd ) + exit $addc + ;; + ( winbind | winbindd ) + exit $addc + ;; + ( nmb | nmbd ) + [ "$addc" = 1 ] && exit 1 + disable_netbios=$(testparm -s --parameter-name="disable netbios" 2>/dev/null) + [ Yes = "$disable_netbios" ] && exit 1 || exit 0 + ;; + ( samba | samba-ad-dc ) + # source4/samba/server.c checks for other parameters too, even if !AD-DC + # Should we support these? + exit $((!$addc)) + ;; + ( * ) + echo "Wrong usage: should be smb|nmb|winbind|samba" >&2 + exit 255 + ;; +esac |