remove wlconf
[openwrt.git] / target / default / target_skeleton / etc / init.d / S50dnsmasq
index 995c1b6..6a5af0f 100755 (executable)
@@ -1,2 +1,27 @@
 #!/bin/sh
-/usr/sbin/dnsmasq
+. /etc/functions.sh
+
+# interface to use for DHCP
+iface=lan
+
+ifname=$(nvram get ${iface}_ifname)
+ipaddr=$(nvram get ${iface}_ipaddr)
+netmask=$(nvram get ${iface}_netmask)
+
+(
+       # check for existing DHCP server
+       udhcpc -n -q -R -s /dev/zero -i $ifname >&- || {
+
+         ipaddr=$(ip2int $ipaddr)
+         netmask=$(ip2int ${netmask:-255.255.255.0})
+         network=$((ipaddr&netmask))
+         
+         start=$(nvram get dhcp_start)
+         start=$((network+${start:-100}))
+         end=$(nvram get dhcp_num)
+         end=$((start+${end:-150}))
+         
+         args="-l /tmp/dhcp.leases -K -F $(int2ip $start),$(int2ip $end),$(int2ip $netmask),12h"
+       }
+       dnsmasq ${args}
+) &
This page took 0.018816 seconds and 4 git commands to generate.