# Copyright (C) 2007 OpenWrt.org
START=60
+
+SERVICE_USE_PID=1
+
DNS_SERVERS=""
DOMAIN=""
append args "-W $service"
}
+dhcp_cname_add() {
+ local cfg="$1"
+ local cname target
+
+ config_get cname "$cfg" cname
+ [ -n "$cname" ] || return 0
+
+ config_get target "$cfg" target
+ [ -n "$target" ] || return 0
+
+ append args "--cname=${cname},${target}"
+}
+
start() {
include /lib/network
scan_interfaces
config_foreach dhcp_domain_add domain
config_foreach dhcp_srv_add srvhost
config_foreach dhcp_add dhcp
+ config_foreach dhcp_cname_add cname
- /usr/sbin/dnsmasq $args && {
+ service_start /usr/sbin/dnsmasq $args && {
rm -f /tmp/resolv.conf
[ -n "$DOMAIN" ] && echo "search $DOMAIN" >> /tmp/resolv.conf
DNS_SERVERS="$DNS_SERVERS 127.0.0.1"
}
stop() {
- [ -f /tmp/resolv.conf ] && {
- rm -f /tmp/resolv.conf
- ln -s /tmp/resolv.conf.auto /tmp/resolv.conf
+ service_stop /usr/sbin/dnsmasq && {
+ [ -f /tmp/resolv.conf ] && {
+ rm -f /tmp/resolv.conf
+ ln -s /tmp/resolv.conf.auto /tmp/resolv.conf
+ }
}
- service_kill dnsmasq /var/run/dnsmasq.pid
- return 0
}