unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#43653] [PATCH] services: dnsmasq: Add TFTP configuration.
@ 2020-09-27 19:06 Danny Milosavljevic
  2020-09-27 19:26 ` Jonathan Brielmaier
  0 siblings, 1 reply; 3+ messages in thread
From: Danny Milosavljevic @ 2020-09-27 19:06 UTC (permalink / raw)
  To: 43653; +Cc: Danny Milosavljevic

* gnu/services/dns.scm (<dnsmasq-configuration>): Add TFTP configuration
fields.
(dnsmasq-shepherd-service): Use them.
---
 gnu/services/dns.scm | 70 ++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 67 insertions(+), 3 deletions(-)

diff --git a/gnu/services/dns.scm b/gnu/services/dns.scm
index 9caa3611be..572880561c 100644
--- a/gnu/services/dns.scm
+++ b/gnu/services/dns.scm
@@ -757,7 +757,29 @@ cache.size = 100 * MB
   (cache-size       dnsmasq-configuration-cache-size
                     (default 150))      ;integer
   (negative-cache?  dnsmasq-configuration-negative-cache?
-                    (default #t)))      ;boolean
+                    (default #t))      ;boolean
+  (tftp-enable?     dnsmasq-configuration-tftp-enable?
+                    (default #f))       ;boolean
+  (tftp-no-fail?    dnsmasq-configuration-tftp-no-fail?
+                    (default #f))       ;boolean
+  (tftp-single-port? dnsmasq-configuration-tftp-single-port?
+                    (default #f))       ;boolean
+  (tftp-secure?     dnsmasq-tftp-secure?
+                    (default #f))       ;boolean
+  (tftp-max         dnsmasq-tftp-max
+                    (default #f))       ;integer
+  (tftp-mtu         dnsmasq-tftp-mtu
+                    (default #f))       ;integer
+  (tftp-no-blocksize? dnsmasq-tftp-no-blocksize?
+                      (default #f))     ;boolean
+  (tftp-lowercase?  dnsmasq-tftp-lowercase?
+                    (default #f))       ;boolean
+  (tftp-port-range  dnsmasq-tftp-port-range
+                    (default #f))       ;string
+  (tftp-root        dnsmasq-tftp-root
+                    (default "/var/empty,lo")) ;string
+  (tftp-unique-root dnsmasq-tftp-unique-root
+                    (default #f)))      ;"" or "ip" or "mac"
 
 (define dnsmasq-shepherd-service
   (match-lambda
@@ -765,7 +787,12 @@ cache.size = 100 * MB
                                 no-hosts?
                                 port local-service? listen-addresses
                                 resolv-file no-resolv? servers
-                                addresses cache-size negative-cache?)
+                                addresses cache-size negative-cache?
+                                tftp-enable? tftp-no-fail?
+                                tftp-single-port? tftp-secure?
+                                tftp-max tftp-mtu tftp-no-blocksize?
+                                tftp-lowercase? tftp-port-range
+                                tftp-root tftp-unique-root)
      (shepherd-service
       (provision '(dnsmasq))
       (requirement '(networking))
@@ -794,7 +821,44 @@ cache.size = 100 * MB
                   #$(format #f "--cache-size=~a" cache-size)
                   #$@(if negative-cache?
                          '()
-                         '("--no-negcache")))
+                         '("--no-negcache"))
+                  #$@(if tftp-enable?
+                         '("--enable-tftp")
+                         '())
+                  #$@(if tftp-no-fail?
+                         '("--tftp-no-fail")
+                         '())
+                  #$@(if tftp-single-port?
+                         '("--tftp-single-port")
+                         '())
+                  #$@(if tftp-secure?
+                         '("--tftp-secure?")
+                         '())
+                  #$@(if tftp-max
+                         (list (format #f "--tftp-max=~a" tftp-max))
+                         '())
+                  #$@(if tftp-mtu
+                         (list (format #f "--tftp-mtu=~a" tftp-mtu))
+                         '())
+                  #$@(if tftp-no-blocksize?
+                         '("--tftp-no-blocksize")
+                         '())
+                  #$@(if tftp-lowercase?
+                         '("--tftp-lowercase")
+                         '())
+                  #$@(if tftp-port-range
+                         (list (format #f "--tftp-port-range=~a"
+                                          tftp-port-range))
+                         '())
+                  #$@(if tftp-root
+                         (list (format #f "--tftp-root=~a" tftp-root))
+                         '())
+                  #$@(if tftp-unique-root
+                         (list
+                          (if (> (length tftp-unique-root) 0)
+                              (format #f "--tftp-unique-root=~a" tftp-unique-root)
+                              (format #f "--tftp-unique-root")))
+                         '()))
                 #:pid-file "/run/dnsmasq.pid"))
       (stop #~(make-kill-destructor))))))
 




^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [bug#43653] [PATCH] services: dnsmasq: Add TFTP configuration.
  2020-09-27 19:06 [bug#43653] [PATCH] services: dnsmasq: Add TFTP configuration Danny Milosavljevic
@ 2020-09-27 19:26 ` Jonathan Brielmaier
  2020-10-06  6:15   ` bug#43653: " Danny Milosavljevic
  0 siblings, 1 reply; 3+ messages in thread
From: Jonathan Brielmaier @ 2020-09-27 19:26 UTC (permalink / raw)
  To: Danny Milosavljevic, 43653

On 27.09.20 21:06, Danny Milosavljevic wrote:
> * gnu/services/dns.scm (<dnsmasq-configuration>): Add TFTP configuration
> fields.
> (dnsmasq-shepherd-service): Use them.
> ---
>   gnu/services/dns.scm | 70 ++++++++++++++++++++++++++++++++++++++++++--
>   1 file changed, 67 insertions(+), 3 deletions(-)

I think some documentation couldn't hurt, so that user can have a chance
to learn about the TFTP possiblilities of our dnsmasq service :)




^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#43653: [PATCH] services: dnsmasq: Add TFTP configuration.
  2020-09-27 19:26 ` Jonathan Brielmaier
@ 2020-10-06  6:15   ` Danny Milosavljevic
  0 siblings, 0 replies; 3+ messages in thread
From: Danny Milosavljevic @ 2020-10-06  6:15 UTC (permalink / raw)
  To: Jonathan Brielmaier; +Cc: 43653-done

[-- Attachment #1: Type: text/plain, Size: 670 bytes --]

Hi,

On Sun, 27 Sep 2020 21:26:32 +0200
Jonathan Brielmaier <jonathan.brielmaier@web.de> wrote:

> On 27.09.20 21:06, Danny Milosavljevic wrote:
> > * gnu/services/dns.scm (<dnsmasq-configuration>): Add TFTP configuration
> > fields.
> > (dnsmasq-shepherd-service): Use them.
> > ---
> >   gnu/services/dns.scm | 70 ++++++++++++++++++++++++++++++++++++++++++--
> >   1 file changed, 67 insertions(+), 3 deletions(-)  
> 
> I think some documentation couldn't hurt, so that user can have a chance
> to learn about the TFTP possiblilities of our dnsmasq service :)

Added docs and pushed to guix master as commit 34d1c0a03b51fdaef26a3bc630ab096da740e1d6.

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-10-06  6:16 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-27 19:06 [bug#43653] [PATCH] services: dnsmasq: Add TFTP configuration Danny Milosavljevic
2020-09-27 19:26 ` Jonathan Brielmaier
2020-10-06  6:15   ` bug#43653: " Danny Milosavljevic

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).