diff options
author | Mark H Weaver <mhw@netris.org> | 2016-10-17 16:47:12 -0400 |
---|---|---|
committer | Mark H Weaver <mhw@netris.org> | 2016-10-17 16:47:12 -0400 |
commit | dcaf70897a0bad38a4638a2905aaa3c46b1f1402 (patch) | |
tree | 439c42bf27972a628ebc0fef11a63b9130ca19a5 /gnu/packages/networking.scm | |
parent | bf62b8ff79f9d60136996b8251b6475965cf4994 (diff) | |
parent | 040b6299d505c034b4960c335434a500ae2f8187 (diff) | |
download | guix-dcaf70897a0bad38a4638a2905aaa3c46b1f1402.tar guix-dcaf70897a0bad38a4638a2905aaa3c46b1f1402.tar.gz |
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/packages/networking.scm')
-rw-r--r-- | gnu/packages/networking.scm | 76 |
1 files changed, 73 insertions, 3 deletions
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 1cf6b052b8..cc843c97ff 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -40,6 +40,7 @@ #:use-module (gnu packages audio) #:use-module (gnu packages bison) #:use-module (gnu packages check) + #:use-module (gnu packages code) #:use-module (gnu packages compression) #:use-module (gnu packages databases) #:use-module (gnu packages flex) @@ -54,7 +55,9 @@ #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) - #:use-module (gnu packages tls)) + #:use-module (gnu packages textutils) + #:use-module (gnu packages tls) + #:use-module (gnu packages valgrind)) (define-public macchanger (package @@ -474,7 +477,7 @@ network frames.") (define-public httping (package (name "httping") - (version "2.4") + (version "2.5") (source (origin (method url-fetch) @@ -482,7 +485,7 @@ network frames.") version ".tgz")) (sha256 (base32 - "1110r3gpsj9xmybdw7w4zkhj3zmn5mnv2nq0ijbvrywbn019zdfs")))) + "1y7sbgkhgadmd93x1zafqc4yp26ssiv16ni5bbi9vmvvdl55m29y")))) (build-system gnu-build-system) (native-inputs `(("gettext" ,gettext-minimal))) @@ -857,3 +860,70 @@ other similar tasks that are particularly application specific so that the library remains flexible, portable, and easily embeddable.") (home-page "http://enet.bespin.org") (license license:expat))) + +(define-public sslh + (package + (name "sslh") + (version "1.18") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/yrutschle/sslh/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1vzw7a7s9lhspbn5zn3hw8hir4pkjgbd68yys4hfsnjp1h7bzjpn")))) + (build-system gnu-build-system) + (native-inputs + `(;; Tests dependencies. + ("lcov" ,lcov) + ("perl" ,perl) + ("perl-io-socket-inet6" ,perl-io-socket-inet6) + ("perl-socket6" ,perl-socket6) + ("psmisc" ,psmisc) + ("valgrind" ,valgrind))) + (inputs + `(("libcap" ,libcap) + ("libconfig" ,libconfig) + ("tcp-wrappers" ,tcp-wrappers))) + (arguments + '(#:phases + (modify-phases %standard-phases + (delete 'configure) ; no configure script + (add-before 'check 'fix-tests + (lambda _ + (substitute* "./t" + (("\"/tmp") "$ENV{\"TMPDIR\"} . \"") + ;; The Guix build environment lacks ‘ip6-localhost’. + (("ip6-localhost") "localhost")) + #t)) + ;; Many of these files are mentioned in the man page. Install them. + (add-after 'install 'install-documentation + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (doc (string-append out "/share/doc/sslh"))) + (install-file "README.md" doc) + (for-each + (lambda (file) + (install-file file (string-append doc "/examples"))) + (append (find-files "." "\\.cfg") + (find-files "scripts")))) + #t))) + #:make-flags (list "CC=gcc" + "USELIBCAP=1" + "USELIBWRAP=1" + (string-append "PREFIX=" (assoc-ref %outputs "out"))) + #:test-target "test")) + (home-page "http://www.rutschle.net/tech/sslh.shtml") + (synopsis "Applicative network protocol demultiplexer") + (description + "sslh is a network protocol demultiplexer. It acts like a switchboard, +accepting connections from clients on one port and forwarding them to different +servers based on the contents of the first received data packet. Detection of +common protocols like HTTP(S), SSL, SSH, OpenVPN, tinc, and XMPP is already +implemented, but any other protocol that matches a regular expression can be +added. sslh's name comes from its original application of serving both SSH and +HTTPS on port 443, allowing SSH connections from inside corporate firewalls +that block port 22.") + (license (list license:bsd-2 ; tls.[ch] + license:gpl2+)))) ; everything else |