Subject: [v2 1/1] gnu: Add thc-ipv6.

From: Leo Famulari <[email-masked]>
Date: Sun, 25 Jun 2017 23:05:14 -0400

* gnu/packages/networking.scm (thc-ipv6): New variable.
---
 gnu/packages/networking.scm | 43 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 06a2c8be6..faf94f994 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -1308,3 +1308,46 @@ transparently have a connection established to another address (e.g., a UNIX
 socket on a different system).  This is similar to 'ssh -L' functionality, but
 does not use SSH and requires a pre-shared symmetric key.")
     (license license:bsd-2)))
+
+(define-public thc-ipv6
+  (package
+    (name "thc-ipv6")
+    (version "3.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/vanhauser-thc/thc-ipv6/"
+                                  "archive/" version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0yh2lpsazmm0pgbmh0dx023w6fss1kdfyr4cq7yw0fac8vkw32d3"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
+       #:tests? #f ; No test suite.
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure) ; No ./configure script.
+         (add-before 'build 'patch-paths
+           (lambda _
+             (substitute* "Makefile"
+               (("/bin/echo") "echo"))
+             #t))
+         (add-after 'install 'install-more-docs
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (doc (string-append out "/share/thc-ipv6/doc")))
+               (install-file "README" doc)
+               (install-file "HOWTO-INJECT" doc)
+               #t))))))
+    ;; TODO Add libnetfilter-queue once packaged.
+    (inputs
+     `(("libpcap" ,libpcap)
+       ("openssl" ,openssl)
+       ("perl" ,perl)))
+    (home-page "https://github.com/vanhauser-thc/thc-ipv6")
+    (synopsis "IPv6 security research toolkit")
+    (description "The THC IPv6 Toolkit provides command-line tools and a library
+for researching IPv6 implementations and deployments.  It requires Linux 2.6 or
+newer and only works on Ethernet network interfaces.")
+    (license license:agpl3))) ; TODO
-- 
2.13.1