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>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32624 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Jo-Philipp Wich 2012-07-05 17:54:14 +00:00
parent 2660f6d8df
commit cfe8557f62
1 changed files with 5 additions and 0 deletions

View File

@ -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