[source] dnsmasq: Add match section support

LEDE Commits lede-commits at lists.infradead.org
Mon Sep 19 06:31:02 PDT 2016


blogic pushed a commit to source.git, branch master:
https://git.lede-project.org/32f4777530bc814cb878c0436bc26cded53a3a8b

commit 32f4777530bc814cb878c0436bc26cded53a3a8b
Author: Hans Dedecker <dedeckeh at gmail.com>
AuthorDate: Fri Sep 2 13:51:09 2016 +0200

    dnsmasq: Add match section support
    
    Match sections allow to set a tag specified by the option networkid if the client
    sends an option and optionally the option value specified by the match option.
    The force option will convert the dhcp-option to force-dhcp-option if set to 1 in
    the dnsmasq config if options are specified in the dhcp_option option.
    
    config match
        option networkid tag
        option match 12,myhost
        option force 1
        list dhcp_option '3,192.168.1.1'
    
    Signed-off-by: Hans Dedecker <dedeckeh at gmail.com>
---
 package/network/services/dnsmasq/files/dnsmasq.init | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/package/network/services/dnsmasq/files/dnsmasq.init b/package/network/services/dnsmasq/files/dnsmasq.init
index 4cd5f67..69c375c 100644
--- a/package/network/services/dnsmasq/files/dnsmasq.init
+++ b/package/network/services/dnsmasq/files/dnsmasq.init
@@ -351,6 +351,22 @@ dhcp_vendorclass_add() {
 	dhcp_option_add "$cfg" "$networkid" "$force"
 }
 
+dhcp_match_add() {
+	local cfg="$1"
+
+	config_get networkid "$cfg" networkid
+	[ -n "$networkid" ] || return 0
+
+	config_get match "$cfg" match
+	[ -n "$match" ] || return 0
+
+	xappend "--dhcp-match=$networkid,$match"
+
+	config_get_bool force "$cfg" force 0
+
+	dhcp_option_add "$cfg" "$networkid" "$force"
+}
+
 dhcp_host_add() {
 	local cfg="$1"
 
@@ -669,6 +685,7 @@ start_service() {
 	config_foreach dhcp_circuitid_add circuitid
 	config_foreach dhcp_remoteid_add remoteid
 	config_foreach dhcp_subscrid_add subscrid
+	config_foreach dhcp_match_add match
 	config_foreach dhcp_domain_add domain
 	config_foreach dhcp_hostrecord_add hostrecord
 	config_foreach dhcp_relay_add relay



More information about the lede-commits mailing list