From faab751760e9648a19e26bc8b938ffc06440b4a7 Mon Sep 17 00:00:00 2001
From: Jo-Philipp Wich <jow@openwrt.org>
Date: Sun, 1 Jul 2012 11:32:46 +0000
Subject: [PATCH] dnsmasq: introduce "add_local_hostname" and
 "add_local_domain" options - add_local_domain defaults to 1 and controls
 whether the local domain is written as search directive to the local
 resolv.conf - add_local_hostname defaults to 1 and controls whether A and PTR
 records are created automatically for the local hostname These change
 supersedes http://patchwork.openwrt.org/patch/2207/ and
 http://patchwork.openwrt.org/patch/2208/

SVN-Revision: 32570
---
 package/dnsmasq/files/dnsmasq.init | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/package/dnsmasq/files/dnsmasq.init b/package/dnsmasq/files/dnsmasq.init
index e90d79336830..485a2f7b70d7 100644
--- a/package/dnsmasq/files/dnsmasq.init
+++ b/package/dnsmasq/files/dnsmasq.init
@@ -1,5 +1,5 @@
 #!/bin/sh /etc/rc.common
-# Copyright (C) 2007 OpenWrt.org
+# Copyright (C) 2007-2012 OpenWrt.org
 
 START=60
 
@@ -8,6 +8,9 @@ SERVICE_USE_PID=1
 DNS_SERVERS=""
 DOMAIN=""
 
+ADD_LOCAL_DOMAIN=1
+ADD_LOCAL_HOSTNAME=1
+
 CONFIGFILE="/var/etc/dnsmasq.conf"
 
 xappend() {
@@ -111,6 +114,9 @@ dnsmasq() {
 
 	config_get DOMAIN "$cfg" domain
 
+	config_get_bool ADD_LOCAL_DOMAIN "$cfg" add_local_domain 1
+	config_get_bool ADD_LOCAL_HOSTNAME "$cfg" add_local_hostname 1
+
 	config_get_bool readethers "$cfg" readethers
 	[ "$readethers" = "1" -a \! -e "/etc/ethers" ] && touch /etc/ethers
 
@@ -490,14 +496,16 @@ start() {
 	echo >> $CONFIGFILE
 
 	# add own hostname
-	[ -z "$lanaddr" ] || {
+	[ $ADD_LOCAL_HOSTNAME -eq 1 ] && [ -n "$lanaddr" ] && {
 		local hostname="$(uci_get system.@system[0].hostname)"
 		dhcp_domain_add "" "${hostname:-OpenWrt}" "$lanaddr"
 	}
 
 	service_start /usr/sbin/dnsmasq -C $CONFIGFILE && {
 		rm -f /tmp/resolv.conf
-		[ -n "$DOMAIN" ] && echo "search $DOMAIN" >> /tmp/resolv.conf
+		[ $ADD_LOCAL_DOMAIN -eq 1 ] && [ -n "$DOMAIN" ] && {
+			echo "search $DOMAIN" >> /tmp/resolv.conf
+		}
 		DNS_SERVERS="$DNS_SERVERS 127.0.0.1"
 		for DNS_SERVER in $DNS_SERVERS ; do
 			echo "nameserver $DNS_SERVER" >> /tmp/resolv.conf
-- 
2.30.2