• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt/router/samba-3.0.25b/packaging/Debian/debian-sarge/
1#!/bin/sh
2
3SAMBA_DHCP_CONF=/etc/samba/dhcp.conf
4
5netbios_setup() {
6	# No need to continue if we're called with an unsupported option
7
8	if [ "$reason" != BOUND ] && [ "$reason" != RENEW ] \
9	   && [ "$reason" != REBIND ] && [ "$reason" != REBOOT ] \
10	   && [ "$reason" != EXPIRE ] && [ "$reason" != FAIL ]
11	then
12		return
13	fi
14
15	# Nor should we continue if no settings have changed
16	if [ "$new_netbios_name_servers" = "$old_netbios_name_servers" ] \
17	   && [ "$new_netbios_scope" = "$old_netbios_scope" ]
18	then
19		return
20	fi
21
22	# reparse our own file
23	local other_servers=`sed -n -e"s/[[:space:]]$interface:[^[:space:]]*//g; \
24		s/^[[:space:]]*wins server[[:space:]]*=[[:space:]]*//pi" \
25		$SAMBA_DHCP_CONF`
26
27	umask 022
28
29	local serverlist="$other_servers"
30	for server in $new_netbios_name_servers
31	do
32		serverlist="$serverlist $interface:$server"
33	done
34
35	echo -n > $SAMBA_DHCP_CONF
36
37	# If we're updating on failure/expire, AND there are no WINS
38	# servers for other interfaces, leave the file empty.
39	if [ -z "$other_servers" ]
40	then
41		if [ "$reason" = FAIL ] || [ "$reason" = EXPIRE ]
42		then
43			return
44		fi
45	fi
46
47	if [ -n "$serverlist" ]
48	then
49		echo "   wins server =$serverlist" >> $SAMBA_DHCP_CONF
50	fi
51	if [ -n "$new_netbios_scope" ]
52	then
53		echo "   netbios scope = $new_netbios_scope" >> $SAMBA_DHCP_CONF
54	fi
55}
56
57netbios_setup
58