From: Remco van 't Veer <remco@remworks.net>
To: 54352@debbugs.gnu.org
Cc: Remco van 't Veer <remco@remworks.net>
Subject: [bug#54352] [PATCH] services: dnsmasq: Add more options.
Date: Sat, 12 Mar 2022 16:48:13 +0100 [thread overview]
Message-ID: <20220312154813.5538-1-remco@remworks.net> (raw)
* gnu/services/dns.scm (<dnsmasq-configuration>): Add bogus-priv?,
strict-order? and add-cpe-id options.
(dnsmasq-shepherd-service): Pass bogus-priv, strict-order and add-cpe-id
to the service.
* doc/guix.texi (Guix Services): Document options added to dnsmasq.
---
doc/guix.texi | 12 ++++++++++++
gnu/services/dns.scm | 20 +++++++++++++++++---
2 files changed, 29 insertions(+), 3 deletions(-)
diff --git a/doc/guix.texi b/doc/guix.texi
index 4b71fb7010..136c199e58 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -28945,6 +28945,14 @@ The file to read the IP address of the upstream nameservers from.
@item @code{no-resolv?} (default: @code{#f})
When true, don't read @var{resolv-file}.
+@item @code{bogus-priv?} (default: @code{#f})
+When true, all reverse lookups for private IP ranges are answered with
+"no such domain" rather than being forwarded upstream.
+
+@item @code{strict-order?} (default: @code{#f})
+When true, forces dnsmasq to try each query with each server strictly in
+the order they appear in @var{servers}.
+
@item @code{servers} (default: @code{'()})
Specify IP address of upstream servers directly.
@@ -28974,6 +28982,10 @@ disables caching.
@item @code{negative-cache?} (default: @code{#t})
When false, disable negative caching.
+@item @code{add-cpe-id} (default: @code{#f})
+If set, add an arbitrary identifying string to DNS queries which are
+forwarded upstream.
+
@item @code{tftp-enable?} (default: @code{#f})
Whether to enable the built-in TFTP server.
diff --git a/gnu/services/dns.scm b/gnu/services/dns.scm
index 9b8603cc95..9f9b6c1a69 100644
--- a/gnu/services/dns.scm
+++ b/gnu/services/dns.scm
@@ -3,6 +3,7 @@
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2020 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
+;;; Copyright © 2022 Remco van 't Veer <remco@remworks.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -745,6 +746,10 @@ (define-record-type* <dnsmasq-configuration>
(default "/etc/resolv.conf")) ;string
(no-resolv? dnsmasq-configuration-no-resolv?
(default #f)) ;boolean
+ (bogus-priv? dnsmasq-configuration-bogus-priv?
+ (default #f)) ;boolean
+ (strict-order? dnsmasq-configuration-strict-order?
+ (default #f)) ;boolean
(servers dnsmasq-configuration-servers
(default '())) ;list of string
(addresses dnsmasq-configuration-addresses
@@ -752,7 +757,9 @@ (define-record-type* <dnsmasq-configuration>
(cache-size dnsmasq-configuration-cache-size
(default 150)) ;integer
(negative-cache? dnsmasq-configuration-negative-cache?
- (default #t)) ;boolean
+ (default #t)) ;boolean
+ (add-cpe-id dnsmasq-configuration-add-cpe-id
+ (default #t)) ;string
(tftp-enable? dnsmasq-configuration-tftp-enable?
(default #f)) ;boolean
(tftp-no-fail? dnsmasq-configuration-tftp-no-fail?
@@ -781,8 +788,9 @@ (define dnsmasq-shepherd-service
(($ <dnsmasq-configuration> package
no-hosts?
port local-service? listen-addresses
- resolv-file no-resolv? servers
- addresses cache-size negative-cache?
+ resolv-file no-resolv? bogus-priv?
+ strict-order? servers addresses cache-size
+ negative-cache? add-cpe-id
tftp-enable? tftp-no-fail?
tftp-single-port? tftp-secure?
tftp-max tftp-mtu tftp-no-blocksize?
@@ -809,6 +817,9 @@ (define dnsmasq-shepherd-service
#$@(if no-resolv?
'("--no-resolv")
'())
+ #$@(if bogus-priv?
+ '("--bogus-priv")
+ '())
#$@(map (cut format #f "--server=~a" <>)
servers)
#$@(map (cut format #f "--address=~a" <>)
@@ -817,6 +828,9 @@ (define dnsmasq-shepherd-service
#$@(if negative-cache?
'()
'("--no-negcache"))
+ #$@(if add-cpe-id
+ (list (format #f "--add-cpe-id=~a" add-cpe-id))
+ '())
#$@(if tftp-enable?
'("--enable-tftp")
'())
--
2.34.0
next reply other threads:[~2022-03-12 15:49 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-12 15:48 Remco van 't Veer [this message]
2022-03-19 10:54 ` [bug#54352] [PATCH] services: dnsmasq: Add more options Ludovic Courtès
2022-03-20 11:42 ` Remco van 't Veer
2022-03-20 11:44 ` [bug#54352] [PATCH v2] " Remco van 't Veer
2022-03-20 11:56 ` Maxime Devos
2022-03-20 12:22 ` Remco van 't Veer
2022-03-20 12:30 ` Maxime Devos
2022-03-20 13:04 ` Remco van 't Veer
2022-03-21 15:22 ` [bug#54352] [PATCH] " Ludovic Courtès
2022-03-21 18:36 ` Maxime Devos
2022-03-22 7:36 ` Remco van 't Veer
2022-03-22 10:02 ` Ludovic Courtès
2022-03-23 7:09 ` Remco van 't Veer
2022-03-20 12:31 ` [bug#54352] [PATCH v2] " Maxime Devos
2022-03-20 12:58 ` Remco van 't Veer
2022-03-20 12:32 ` Maxime Devos
2022-03-20 12:57 ` Remco van 't Veer
2022-03-20 13:16 ` Maxime Devos
2022-03-22 7:54 ` Remco van 't Veer
2022-03-20 12:36 ` Maxime Devos
2022-03-20 13:15 ` Remco van 't Veer
2022-03-20 13:17 ` Maxime Devos
2022-03-22 7:48 ` Remco van 't Veer
2022-03-20 13:20 ` Maxime Devos
2022-03-22 7:40 ` Remco van 't Veer
2022-03-23 7:07 ` [bug#54352] [PATCH v3] " Remco van 't Veer
2022-03-24 11:22 ` bug#54352: [PATCH] " Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220312154813.5538-1-remco@remworks.net \
--to=remco@remworks.net \
--cc=54352@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.