From ed98b1f41c107cf4a9cdad065a37261ab72904bd Mon Sep 17 00:00:00 2001
From: Jo-Philipp Wich <jow@openwrt.org>
Date: Thu, 5 Jul 2012 17:54:14 +0000
Subject: [PATCH] package/dnsmasq: allow /etc/config/dhcp to specify --address
 arguments

Add a config list to the 'config dnsmasq' section to specify fixed DNS
addresses.

For example:

  config dnsmasq:
	[snip]
	list address '/example.com/192.168.0.1'

will result in the argument '-A /example.com/192.168.0.1' to the dnsmasq
options. This configures dnsmasq to return the specified IP for any
queries to '*.example.com' names.

Useful for overriding lookups to a range of DNS names.

[jow: "append args" -> "xappend", "-A" -> "--address"]

Signed-off-by: Jeremy Kerr <jk@ozlabs.org>

SVN-Revision: 32624
---
 package/dnsmasq/files/dnsmasq.init | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/package/dnsmasq/files/dnsmasq.init b/package/dnsmasq/files/dnsmasq.init
index 15228da99e..85c22c3745 100644
--- a/package/dnsmasq/files/dnsmasq.init
+++ b/package/dnsmasq/files/dnsmasq.init
@@ -55,6 +55,10 @@ append_server() {
 	xappend "--server=$1"
 }
 
+append_address() {
+	xappend "--address=$1"
+}
+
 append_interface() {
 	local ifname=$(uci_get_state network "$1" ifname "$1")
 	xappend "--interface=$ifname"
@@ -103,6 +107,7 @@ dnsmasq() {
 	append_parm "$cfg" "domain" "--domain"
 	append_parm "$cfg" "local" "--server"
 	config_list_foreach "$cfg" "server" append_server
+	config_list_foreach "$cfg" "address" append_address
 	config_list_foreach "$cfg" "interface" append_interface
 	config_list_foreach "$cfg" "notinterface" append_notinterface
 	config_list_foreach "$cfg" "addnhosts" append_addnhosts
-- 
2.34.1