Subject: [PATCH v2] gnu: Add atftp.

From: Felix Lechner <[email-masked]>
Date: Sun, 19 Mar 2023 16:03:51 -0700

* gnu/packages/networking.scm (atftp): New variable.

The new URL still produces a lint warning. A user on IRC surmised that
sf.net may filter by user agent:

    [email-masked]: URI https://git.code.sf.net/p/atftp/code not reachable:
        404 ("Not Found")

The same user states that Git makes this request:

    GET /p/atftp/code/info/refs?service=git-upload-pack HTTP/1.1

Thanks to Josselin Poiret and Bruno Victal for their generous and detailed
reviews of this item!
---
 gnu/packages/networking.scm | 43 +++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 3fac05c411..7f843214fb 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -2916,6 +2916,49 @@ (define-public speedtest-cli
 speedtest.net.")
     (license license:asl2.0)))
 
+(define-public atftp
+  (package
+    (name "atftp")
+    (version "0.8.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://git.code.sf.net/p/atftp/code")
+             (commit (string-append "v" version))))
+       (sha256
+        (base32 "019qrh2wpvr577ksvs3s82q6kiqm5i6869aj7qba326b59lhkxrc"))
+       (file-name (git-file-name name version))))
+    (build-system gnu-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'autoreconf
+            (lambda _
+              (invoke "autoreconf" "-vif"))))))
+    (native-inputs
+     (list autoconf
+           automake
+           perl
+           pkg-config))
+    (inputs
+     (list pcre2
+           procps
+           readline
+           tcp-wrappers))
+    (home-page "https://sourceforge.net/projects/atftp/")
+    (synopsis "Advanced TFTP server and client")
+    (description
+     "Multi-threaded TFTP server that implements all options, including all
+extensions, as specified in RFC 1350, RFC 2090, RFC 2347, RFC 2348, RFC 2349
+and RFC7440.  Atftpd also supports a multicast protocol known as mtftp, which
+was defined in the PXE specification.
+
+The server is socket activated by default but supports being started from
+inetd(8) as well as in daemon mode.")
+    (license license:gpl2+)))
+
 (define-public tftp-hpa
   (package
     (name "tftp-hpa")

base-commit: f9702aa9fdfded5c62da43197f8cea5eeba30803
-- 
2.39.1