;;; Copyright © 2016, 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
-;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016 Benz Schenk <benz.schenk@uzh.ch>
;;; Copyright © 2016, 2017 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
+;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2018 Adam Van Ymeren <adam@vany.ca>
;;; Copyright © 2018 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
+;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
#:use-module (gnu packages curl)
- #:use-module (gnu packages databases)
#:use-module (gnu packages dejagnu)
#:use-module (gnu packages documentation)
#:use-module (gnu packages flex)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages kerberos)
#:use-module (gnu packages ncurses)
+ #:use-module (gnu packages nettle)
+ #:use-module (gnu packages password-utils)
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-web)
+ #:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages readline)
+ #:use-module (gnu packages serialization)
+ #:use-module (gnu packages sqlite)
#:use-module (gnu packages ssh)
#:use-module (gnu packages textutils)
#:use-module (gnu packages tls)
'check 'disable-checkconf-test
(lambda _
(substitute* "src/Makefile"
- (("^TESTS = .*") "TESTS = \n")))))))
+ (("^TESTS = .*") "TESTS = \n"))
+ #t)))))
(home-page "http://www.remlab.net/miredo/")
(synopsis "Teredo IPv6 tunneling software")
(description
(substitute* "scaffold.c"
(("extern char .malloc.*;") ""))
;; This, believe it or not, is the recommended way to build!
- (zero? (system* "make" "REAL_DAEMON_DIR=/etc" "linux"))))
+ (invoke "make" "REAL_DAEMON_DIR=/etc" "linux")))
;; There is no make install stage, so we have to do it ourselves.
(replace 'install
(lambda _
(for-each
(lambda (x)
(install-file x (string-append out "/bin/")))
- bins)))))))
+ bins))
+ #t)))))
(home-page "http://www.porcupine.org")
(synopsis "Monitor and filter incoming requests for network services")
(description "With this package you can monitor and filter incoming requests for
;; librdkafka++.so lacks RUNPATH for librdkafka.so
(setenv "LDFLAGS"
(string-append "-Wl,-rpath=" out "/lib"))
- (zero? (system* "./configure"
- (string-append "--prefix=" out)))))))))
+ (invoke "./configure"
+ (string-append "--prefix=" out))))))))
(native-inputs
`(("python" ,python-wrapper)))
(propagated-inputs
(define-public ethtool
(package
(name "ethtool")
- (version "4.16")
+ (version "4.17")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/software/network/"
name "/" name "-" version ".tar.xz"))
(sha256
(base32
- "00ss07jc7p276d83f6jpafgwyc9yiribciyqcgx9j86v49kpm5py"))))
+ "11f5503mgcwjn1q4dvhjiqwnw3zmp2gbhirjvgfr71y72ys1wsy4"))))
(build-system gnu-build-system)
(home-page "https://www.kernel.org/pub/software/network/ethtool/")
(synopsis "Display or change Ethernet device settings")
(bin (string-append out "/bin")))
(mkdir-p bin)
(copy-file "ifstatus"
- (string-append bin "/ifstatus"))))))))
+ (string-append bin "/ifstatus")))
+ #t)))))
(inputs `(("ncurses" ,ncurses)))
(home-page "http://ifstatus.sourceforge.net/graphic/index.html")
(synopsis "Text based network interface status monitor")
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/tun.c"
(("PATH=[^ ]* ")
- (string-append (assoc-ref inputs "net-tools") "/bin/")))))
+ (string-append (assoc-ref inputs "net-tools") "/bin/")))
+ #t))
(add-before 'check 'delete-failing-tests
;; Avoid https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=802105.
(lambda _
(substitute* "tests/common.c"
(("tcase_add_test\\(tc, \
test_parse_format_ipv(4(|_listen_all|_mapped_ipv6)|6)\\);")
- "")))))
+ ""))
+ #t)))
#:make-flags (list "CC=gcc"
(string-append "prefix=" (assoc-ref %outputs "out")))
#:test-target "test"))
(define-public whois
(package
(name "whois")
- (version "5.3.2")
+ (version "5.4.0")
(source
(origin
(method url-fetch)
name "_" version ".tar.xz"))
(sha256
(base32
- "0m3352d5b0ragygbqjbaimghrbx4va2rixa34j5a1g3jj6l4nwbr"))))
+ "0y73b3z1akni620s1hlrijwdrk95ca1c8csjds48vpd6z86awx9p"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no test suite
(define-public wireshark
(package
(name "wireshark")
- (version "2.6.1")
+ (version "2.6.5")
(source
(origin
(method url-fetch)
version ".tar.xz"))
(sha256
(base32
- "126dvd6myjbxjr69dy9vzzdda2lmjy1wwwc6gcs5djb46jy5nvmb"))))
+ "12j3fw0j8qcr86c1vsz4bsb55j9inp0ll3wjjdvg1cj4hmwmn5ck"))))
(build-system gnu-build-system)
(inputs `(("c-ares" ,c-ares)
("glib" ,glib)
(define-public fping
(package
(name "fping")
- (version "4.0")
+ (version "4.1")
(source
(origin
(method url-fetch)
version ".tar.gz"))
(sha256
(base32
- "1kp81wchi79l8z8rrj602fpjrd8bi84y3i7fsaclzlwap5943sv7"))))
+ "0wxbvm480vij8dy4v1pi8f0c7010rx6bidg3qhsvkdf2ijhy4cr7"))))
(build-system gnu-build-system)
- (home-page "http://fping.org/")
+ (home-page "https://fping.org/")
(synopsis "Send ICMP ECHO_REQUEST packets to network hosts")
(description
"fping is a ping like program which uses the Internet Control Message
fashion.")
(license license:expat)))
+(define-public gandi.cli
+ (package
+ (name "gandi.cli")
+ (version "1.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri name version))
+ (sha256
+ (base32 "0vfzkw1avybjkf6fwqpf5m4kjz4c0qkkmj62f3jd0zx00vh5ly1d"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'embed-store-file-names
+ (lambda _
+ (substitute* (list "gandi/cli/modules/cert.py"
+ "gandi/cli/tests/commands/test_certificate.py")
+ (("openssl") (which "openssl")))
+ #t))
+ (add-after 'install 'install-documentation
+ ;; The included man page may be outdated but we install it anyway,
+ ;; since it's mentioned in 'gandi --help' and better than nothing.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (man1 (string-append out "/share/man/man1")))
+ (mkdir-p man1)
+ (with-output-to-file (string-append man1 "/gandi.1")
+ (lambda _
+ (invoke "rst2man.py" "gandicli.man.rst")))
+ #t))))))
+ (native-inputs
+ `(("python-docutils" ,python-docutils) ; for rst2man.py
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-tox" ,python-tox)))
+ (inputs
+ `(("openssl" ,openssl)
+ ("python-click" ,python-click)
+ ("python-ipy" ,python-ipy)
+ ("python-pyyaml" ,python-pyyaml)
+ ("python-requests" ,python-requests)))
+ (home-page "https://cli.gandi.net")
+ (synopsis "Command-line interface to the Gandi.net Web API")
+ (description
+ "This package provides a command-line client (@command{gandi}) to buy,
+manage, and delete Internet resources from Gandi.net such as domain names,
+virtual machines, and certificates.")
+ (license license:gpl3+)))
+
(define-public httping
(package
(name "httping")
(("ENV_CURL_BIN.get\\('curl'\\)")
(string-append "ENV_CURL_BIN.get('"
(assoc-ref inputs "curl")
- "/bin/curl')"))))))))
+ "/bin/curl')")))
+ #t)))))
(home-page "https://github.com/reorx/httpstat")
(synopsis "Visualize curl statistics")
(description
(define-public aircrack-ng
(package
(name "aircrack-ng")
- (version "1.2-rc4")
+ (version "1.3")
(source
(origin
(method url-fetch)
- (uri (string-append "http://download.aircrack-ng.org/aircrack-ng-"
+ (uri (string-append "https://download.aircrack-ng.org/aircrack-ng-"
version ".tar.gz"))
(sha256
(base32
- "0dpzx9kddxpgzmgvdpl3rxn0jdaqhm5wxxndp1xd7d75mmmc2fnr"))))
+ "1jl30d0kibc82447fr3lgw75arik0l9729k94z76l7vl51y8mq4a"))))
(build-system gnu-build-system)
(native-inputs
- `(("pkg-config" ,pkg-config)))
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)
+ ("which" ,which)))
(inputs
`(("libgcrypt" ,libgcrypt)
("libnl" ,libnl)
+ ("libpcap" ,libpcap)
("ethtool" ,ethtool)
("pcre" ,pcre)
("sqlite" ,sqlite)
("zlib" ,zlib)))
(arguments
- `(#:make-flags `("sqlite=true"
- "gcrypt=true"
- "libnl=true"
- "pcre=true"
- "experimental=true" ;build wesside-ng, etc.
- "AVX2FLAG=N" "AVX1FLAG=N"
- ,,@(match (%current-system)
- ((or "x86_64-linux" "i686-linux")
- `("SSEFLAG=Y"))
- (_
- `("NEWSSE=false")))
- ,(string-append "prefix=" %output))
+ `(#:configure-flags
+ (list "--with-experimental=yes" ; build wesside-ng, etc.
+ "--with-gcrypt") ; openssl's the default
#:phases (modify-phases %standard-phases
- (delete 'configure) ;no configure phase
+ (add-before 'bootstrap 'patch-evalrev
+ (lambda _
+ ;; Called by ./autogen.sh below, before the default
+ ;; ‘patch-shebangs’ phase has had a chance to run.
+ (substitute* "evalrev"
+ (("/bin/sh")
+ (which "sh")))
+ #t))
+ (replace 'bootstrap
+ (lambda _
+ ;; Patch shebangs in generated files before running
+ ;; ./configure.
+ (setenv "NOCONFIGURE" "please")
+ (invoke "bash" "./autogen.sh")))
(add-after 'build 'absolutize-tools
(lambda* (#:key inputs #:allow-other-keys)
(let ((ethtool (string-append (assoc-ref inputs "ethtool")
"/sbin/ethtool")))
(substitute* "scripts/airmon-ng"
- (("\\[ ! -x \"\\$\\(command -v ethtool 2>&1)\" \\]")
- (string-append "! " ethtool " --version "
- ">/dev/null 2>&1"))
- (("\\$\\(ethtool")
- (string-append "$(" ethtool)))
+ (("ethtool ")
+ (string-append ethtool " ")))
#t))))))
- (home-page "http://www.aircrack-ng.org")
+ (home-page "https://www.aircrack-ng.org")
(synopsis "Assess WiFi network security")
(description
"Aircrack-ng is a complete suite of tools to assess WiFi network
allows for heavy scripting.")
(license (list license:gpl2+ license:bsd-3))))
+(define-public perl-data-validate-ip
+ (package
+ (name "perl-data-validate-ip")
+ (version "0.27")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/D/DR/DROLSKY/Data-Validate-IP-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "1mmppyzsh1w2z2h86kvzqxy56wxgs62a3kf8nvcnz76bblir5ap1"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-test-requires" ,perl-test-requires)))
+ (propagated-inputs
+ `(("perl-netaddr-ip" ,perl-netaddr-ip)))
+ (home-page "https://metacpan.org/release/Data-Validate-IP")
+ (synopsis "IPv4 and IPv6 validation methods")
+ (description
+ "This module provides several IP address validation subroutines that both
+validate and untaint their input. This includes both basic validation
+(@code{is_ipv4()} and @code{is_ipv6()}) and special cases like checking whether
+an address belongs to a specific network or whether an address is public or
+private (reserved).")
+ (license license:perl-license)))
+
(define-public perl-net-dns
(package
(name "perl-net-dns")
- (version "1.15")
+ (version "1.18")
(source
(origin
(method url-fetch)
- (uri (string-append
- "mirror://cpan/authors/id/N/NL/NLNETLABS/Net-DNS-"
- version
- ".tar.gz"))
+ (uri
+ (list
+ (string-append "https://www.net-dns.org/download/Net-DNS-"
+ version ".tar.gz")
+ (string-append "mirror://cpan/authors/id/N/NL/NLNETLABS/Net-DNS-"
+ version ".tar.gz")))
(sha256
(base32
- "1l31kqrgjzq8zgpr86z12x550px5zpn563gmnja6m14b8fk6pm0s"))))
+ "1lx902cbvlfl63bqfdrnyavmfwbjvrfdnwgdc1dgs1wpzja19kjj"))))
(build-system perl-build-system)
(inputs
`(("perl-digest-hmac" ,perl-digest-hmac)))
- (home-page "http://search.cpan.org/dist/Net-DNS")
+ (home-page "https://www.net-dns.org/")
(synopsis
"Perl Interface to the Domain Name System")
(description "Net::DNS is the Perl Interface to the Domain Name System.")
(define-public perl-socket6
(package
(name "perl-socket6")
- (version "0.28")
+ (version "0.29")
(source
(origin
(method url-fetch)
".tar.gz"))
(sha256
(base32
- "11j5jzqbzmwlws9zals43ry2f1nw9qy6im7yhn9ck5rikywrmm5z"))))
+ "054izici8klfxs8hr5rljib28plijpsfymy99xbzdp047bx1b2a6"))))
(build-system perl-build-system)
(arguments
`(#:phases
,(string-append "PREFIX=" out)
"INSTALLDIRS=site")))
(setenv "CONFIG_SHELL" (which "sh"))
- (zero? (apply system* "perl" args))))))))
- (home-page "http://search.cpan.org/dist/Socket6")
+ (apply invoke "perl" args)))))))
+ (home-page "https://metacpan.org/release/Socket6")
(synopsis
"IPv6 related part of the C socket.h defines and structure manipulators for Perl")
(description "Socket6 binds the IPv6 related part of the C socket header
`(("perl-module-build" ,perl-module-build)))
(inputs `(("perl-net-dns" ,perl-net-dns)))
(home-page
- "http://search.cpan.org/dist/Net-DNS-Resolver-Programmable")
+ "https://metacpan.org/release/Net-DNS-Resolver-Programmable")
(synopsis
"Programmable DNS resolver class for offline emulation of DNS")
(description "Net::DNS::Resolver::Programmable is a programmable DNS resolver for
,(string-append "PREFIX=" out)
"INSTALLDIRS=site")))
(setenv "CONFIG_SHELL" (which "sh"))
- (zero? (apply system* "perl" args))))))))
+ (apply invoke "perl" args)))))))
(home-page
- "http://search.cpan.org/dist/NetAddr-IP")
+ "https://metacpan.org/release/NetAddr-IP")
(synopsis
"Manages IPv4 and IPv6 addresses and subnets")
(description "NetAddr::IP manages IPv4 and IPv6 addresses and subsets.")
`(("perl-net-cidr-lite" ,perl-net-cidr-lite)
("perl-socket6" ,perl-socket6)))
(home-page
- "http://search.cpan.org/dist/Net-Patricia")
+ "https://metacpan.org/release/Net-Patricia")
(synopsis
"Patricia Trie Perl module for fast IP address lookups")
(description
"14shj73zbqmfjbp0qz1fs9j4p2dpvz5hfkm4qfdjbydflbl2b8fg"))))
(build-system perl-build-system)
(home-page
- "http://search.cpan.org/dist/Net-CIDR-Lite")
+ "https://metacpan.org/release/Net-CIDR-Lite")
(synopsis
"Perl extension for merging IPv4 or IPv6 CIDR addresses")
(description "Net::CIDR::Lite merges IPv4 or IPv6 CIDR addresses.")
(base32
"1fka8fr7fw6sh3xa9glhs1zjg3s2gfkhi7n7da1l2m2wblqj0c0n"))))
(build-system perl-build-system)
- (home-page "http://search.cpan.org/dist/Geo-IP")
+ (home-page "https://metacpan.org/release/Geo-IP")
(synopsis
"Look up location and network information by IP Address in Perl")
(description "The Perl module 'Geo::IP'. It looks up location and network
(arguments `(;; Need network socket API
#:tests? #f))
(home-page
- "http://search.cpan.org/dist/IO-Socket-INET6")
+ "https://metacpan.org/release/IO-Socket-INET6")
(synopsis
"Perl object interface for AF_INET/AF_INET6 domain sockets")
(description "IO::Socket::INET6 is an interface for AF_INET/AF_INET6 domain
(modify-phases %standard-phases
(replace 'check
(lambda _
- (zero? (system* "ctest" "-E" "url-test")))))))
+ (invoke "ctest" "-E" "url-test"))))))
(synopsis "Library providing automatic proxy configuration management")
(description "Libproxy handles the details of HTTP/HTTPS proxy
configuration for applications across all scenarios. Applications using
(define-public proxychains-ng
(package
(name "proxychains-ng")
- (version "4.12")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/rofl0r/" name "/releases/"
- "download/v" version "/" name "-" version
- ".tar.xz"))
- (sha256
- (base32
- "0kiss3ih6cwayzvqi5cx4kw4vh7r2kfxlbgk56v1f1066ncm8aj8"))))
+ (version "4.13")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "http://ftp.barfooze.de/pub/sabotage/tarballs/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0418fv8hgf43rzrxxlybg49jz2h6w8inndhb6v1184k4cwzjnl3p"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; there are no tests
- #:make-flags '("CC=gcc")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-configure-script
(("\\*\\) break ;;" line)
(string-append "[A-Z]*) shift ;;\n"
line)))
+ #t))
+ (add-before 'configure 'set-up-environment
+ (lambda _
+ (setenv "CC" "gcc")
#t)))))
(synopsis "Redirect any TCP connection through a proxy or proxy chain")
(description "Proxychains-ng is a preloader which hooks calls to sockets
(modify-phases %standard-phases
(replace 'install
(lambda _
- (zero? (system* "make"
- ;; Don't try to create directories under /var.
- "RUNDIR=/tmp"
- "PKIDIR=/tmp"
- "LOGDIR=/tmp"
- "DBDIR=/tmp"
- "install")))))))
+ (invoke "make"
+ ;; Don't try to create directories under /var.
+ "RUNDIR=/tmp"
+ "PKIDIR=/tmp"
+ "LOGDIR=/tmp"
+ "DBDIR=/tmp"
+ "install"))))))
(native-inputs
`(("perl" ,perl)
("pkg-config" ,pkg-config)
(define-public libnet
(package
(name "libnet")
- (version "1.1.6")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/sam-github/libnet/"
- "archive/libnet-" version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0l4gbzzvr199fzczzricjz7b825i7dlk6sgl5p5alnkcagmq0xys"))))
+ (version "1.2-rc3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sam-github/libnet")
+ (commit (string-append "libnet-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0cy8w4g5rv963v4p6iq3333kxgdddx2lywp70xf62553a25xhhs4"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(lambda _ (chdir "libnet") #t))
(add-before 'build 'build-doc
(lambda* (#:key make-flags #:allow-other-keys)
- (zero? (apply system* "make" "-C" "doc" "doc"
- make-flags)))))))
+ (apply invoke "make" "-C" "doc" "doc"
+ make-flags))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
(define-public strongswan
(package
(name "strongswan")
- (version "5.6.2")
+ (version "5.6.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.strongswan.org/strongswan-"
version ".tar.bz2"))
(sha256
- (base32 "14ifqay54brw2b2hbmm517bxw8bs9631d7jm4g139igkxcq0m9p0"))))
+ (base32 "095zg7h7qwsc456sqgwb1lhhk29ac3mk5z9gm6xja1pl061driy3"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(name "amule")
(version "2.3.2")
(source (origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/amule-project/amule/archive/"
- version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/amule-project/amule")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1wvcj0n9xz03xz5c2xwp6dwfp7sqjhhwbki3m0lwikskpn9lkzk2"))
+ "010wxm6g9f92x6fympj501zbnjka32rzbx0sk3a2y4zpih5d2nsn"))
;; Patch for adopting crypto++ >= 6.0.
(patches (search-patches "amule-crypto-6.patch"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
+ (delete 'bootstrap) ; bootstrap phase runs too early.
(add-after 'patch-source-shebangs 'autogen
(lambda _
(invoke "sh" "autogen.sh")
(define-public asio
(package
(name "asio")
- (version "1.12.0")
+ (version "1.12.1")
(source
(origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/chriskohlhoff/asio.git")
- (commit (string-join (cons name (string-split version #\.))
- "-"))))
- (file-name (git-file-name name version))
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/asio/asio/"
+ version " (Stable)/" name "-" version ".tar.bz2"))
(sha256
(base32
- "04dg8kpgriay7q62mqcq2gl439k5y4mf761zghsd6wfl0farh3mx"))))
+ "0nln45662kg799ykvqx5m9z9qcsmadmgg6r5najryls7x16in2d9"))))
(build-system gnu-build-system)
- (native-inputs
- `(("autoconf" ,autoconf)
- ("automake" ,automake)
- ("libtool" ,libtool)))
(inputs
`(("boost" ,boost)
("openssl" ,openssl)))
`(#:configure-flags
(list
(string-append "--with-boost=" (assoc-ref %build-inputs "boost"))
- (string-append "--with-openssl=" (assoc-ref %build-inputs "openssl")))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'chdir-to-asio
- (lambda _
- (chdir "asio")))
- (add-before 'configure 'bootstrap
- (lambda _
- (invoke "sh" "autogen.sh"))))))
+ (string-append "--with-openssl=" (assoc-ref %build-inputs "openssl")))))
(home-page "https://think-async.com/Asio")
(synopsis "C++ library for ASynchronous network I/O")
(description "Asio is a cross-platform C++ library for network and
(list (string-append "LDFLAGS=-Wl,-rpath="
(assoc-ref %outputs "out")
"/lib")
- "--with-logfile=/var/log/snmpd.log")
+ "--with-logfile=/var/log/snmpd.log"
+ (string-append "--with-openssl="
+ (assoc-ref %build-inputs "openssl")))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-tests
(license:non-copyleft
"http://www.net-snmp.org/about/license.html"
"CMU/UCD copyright notice")))))
+
+(define-public ubridge
+ (package
+ (name "ubridge")
+ (version "0.9.14")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/GNS3/ubridge/archive/v"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1hivb8wqkk5047bdl2vbsbcvkmam1107hx1ahy4virq2bkqki1fj"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ;no tests
+ #:make-flags '("CC=gcc")
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'install 'set-bindir
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((bin (string-append (assoc-ref outputs "out")
+ "/bin")))
+ (mkdir-p bin)
+ (substitute* "Makefile"
+ (("\\$\\(BINDIR\\)") bin)
+ (("\tsetcap cap_net.*$") "")))
+ #t)))))
+ (inputs
+ `(("libpcap" ,libpcap)))
+ (home-page "https://github.com/GNS3/ubridge/")
+ (synopsis "Bridge for UDP tunnels, Ethernet, TAP and VMnet interfaces")
+ (description "uBridge is a simple program to create user-land bridges
+between various technologies. Currently, bridging between UDP tunnels,
+Ethernet and TAP interfaces is supported. Packet capture is also supported.")
+ (license license:gpl3+)))
+
+(define-public hcxtools
+ (let* ((commit "2ecfc9a06c2028c47522ea566ccd82b2c1f94647"))
+ (package
+ (name "hcxtools")
+ (version (git-version "0.0.0" "1" commit))
+ (home-page "https://github.com/ZerBea/hcxtools")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit commit)))
+ (sha256
+ (base32
+ "1hzwrpmxjxl674if0pp5iq06mdi24k7ni7bh1h20isp4s40201n3"))
+ (file-name (git-file-name name version))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("curl" ,curl)
+ ("libpcap" ,libpcap)
+ ("openssl" ,openssl)
+ ("zlib" ,zlib)))
+ (arguments
+ `(#:make-flags (list "CC=gcc"
+ (string-append "INSTALLDIR=" (assoc-ref %outputs "out") "/bin"))
+ #:tests? #f ;no tests
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-after 'unpack 'set-environment
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "C_INCLUDE_PATH"
+ (string-append (assoc-ref inputs "curl")
+ "/include:"
+ (assoc-ref inputs "libpcap")
+ "/include:"
+ (assoc-ref inputs "openssl")
+ "/include:"
+ (assoc-ref inputs "zlib")
+ "/include:"
+ (getenv "C_INCLUDE_PATH")))
+ #t)))))
+ (synopsis "Capture wlan traffic to hashcat and John the Ripper")
+ (description
+ "This package contains a small set of tools to capture and convert
+packets from wireless devices for use with hashcat or John the Ripper.")
+ (license license:expat))))
+
+(define-public hcxdumptool
+ (let* ((commit "f4799b5da82c5b030a6d99b02d1c1b9dc838ad36"))
+ (package
+ (name "hcxdumptool")
+ (version (git-version "0.0.0" "1" commit))
+ (home-page "https://github.com/ZerBea/hcxdumptool")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit commit)))
+ (sha256
+ (base32
+ "0qlsin0rws9sshn12faq4spmd0ffzssal36s71vhv6gkhhga7abl"))
+ (file-name (git-file-name name version))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:make-flags (list "CC=gcc"
+ (string-append "INSTALLDIR=" (assoc-ref %outputs "out") "/bin"))
+ #:tests? #f ;no tests
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure))))
+ (synopsis "Small tool to capture packets from wlan devices")
+ (description
+ "Small tool to capture packets from WLAN devices. After capturing,
+upload the \"uncleaned\" cap to @url{https://wpa-sec.stanev.org/?submit} to
+see if the access point or the client is vulnerable to a dictionary attack.
+Convert the cap file to hccapx format and/or to WPA-PMKID-PBKDF2
+hashline (16800) with @command{hcxpcaptool} from the @code{hcxtools} package
+and check if the WLAN key or the master key was transmitted unencrypted.")
+ (license license:expat))))
+
+(define-public dante
+ (package
+ (name "dante")
+ (version "1.4.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://www.inet.no/dante/files/dante-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "19rqzj167q73ag20zxpvswhkk0bj56r5maf83v5016sw7vrcz5sc"))))
+ (build-system gnu-build-system)
+ (arguments
+ ;; XXX: The dynamic socks library doesn't work with 'libc.so' (GNU ld
+ ;; script). When preloading is enabled, 'sockd' failed with:
+ ;; … Failed to open library "libc.so": …: invalid ELF header
+ '(#:configure-flags '("--disable-preload")))
+ (home-page "https://www.inet.no/dante/")
+ (synopsis "SOCKS server and client")
+ (description "Dante is a SOCKS client and server implementation. It can
+be installed on a machine with access to an external TCP/IP network and will
+allow all other machines, without direct access to that network, to be relayed
+through the machine the Dante server is running on. The external network will
+never see any machines other than the one Dante is running on.")
+ (license (license:non-copyleft "file://LICENSE"))))
+
+(define-public restbed
+ (let ((commit "6eb385fa9051203f28bf96cc1844bbb5a9a6481f"))
+ (package
+ (name "restbed")
+ (version (git-version "4.6" "1" commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Corvusoft/restbed/")
+ (commit commit)))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0k60i5drklqqrb4khb25fzkgz9y0sncxf1sp6lh2bm1m0gh0661n"))))
+ (build-system cmake-build-system)
+ (inputs
+ `(("asio" ,asio)
+ ("catch" ,catch-framework)
+ ("openssl" ,openssl)))
+ (arguments
+ `(#:tests? #f
+ #:configure-flags
+ '("-DBUILD_TESTS=NO"
+ "-DBUILD_EXAMPLES=NO"
+ "-DBUILD_SSL=NO"
+ "-DBUILD_SHARED=NO")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'apply-patches-and-fix-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((asio (assoc-ref inputs "asio"))
+ (catch (assoc-ref inputs "catch"))
+ (openssl (assoc-ref inputs "openssl")))
+ (substitute* "cmake/Findasio.cmake"
+ (("(find_path\\( asio_INCLUDE asio\\.hpp HINTS ).*$" all begin)
+ (string-append begin " \"" asio "/include\" )")))
+ (substitute* "cmake/Findcatch.cmake"
+ (("(find_path\\( catch_INCLUDE catch\\.hpp HINTS ).*$" all begin)
+ (string-append begin " \"" catch "/include\" )")))
+ (substitute* "cmake/Findopenssl.cmake"
+ (("(find_library\\( ssl_LIBRARY ssl ssleay32 HINTS ).*$" all begin)
+ (string-append begin " \"" openssl "/lib\" )"))
+ (("(find_library\\( crypto_LIBRARY crypto libeay32 HINTS ).*$" all begin)
+ (string-append begin " \"" openssl "/lib\" )"))
+ (("(find_path\\( ssl_INCLUDE openssl/ssl\\.h HINTS ).*$" all begin)
+ (string-append begin " \"" openssl "/include\" )")))))))))
+ (synopsis "Asynchronous RESTful functionality to C++11 applications")
+ (description "Restbed is a comprehensive and consistent programming
+model for building applications that require seamless and secure
+communication over HTTP.")
+ (home-page "https://github.com/Corvusoft/restbed")
+ (license license:agpl3+))))
+
+(define-public opendht
+ (package
+ (name "opendht")
+ (version "1.8.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/savoirfairelinux/opendht.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0vninb5mak27wigajslyvr05vq7wbrwqhbr4wzl2nmqcb20wmlq2"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("gnutls" ,gnutls)
+ ("nettle" ,nettle)
+ ("readline" ,readline)
+ ("jsoncpp" ,jsoncpp)
+ ("restbed" ,restbed)))
+ (propagated-inputs
+ `(("argon2" ,argon2) ; TODO: Needed for the pkg-config .pc file to work?
+ ("msgpack" ,msgpack))) ;included in several installed headers
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("pkg-config" ,pkg-config)
+ ("automake" ,automake)
+ ("libtool" ,libtool)))
+ (arguments
+ `(#:configure-flags '("--disable-tools"
+ "--disable-python"
+ "--with-argon2")))
+ (home-page "https://github.com/savoirfairelinux/opendht/")
+ (synopsis "Distributed Hash Table (DHT) library")
+ (description "OpenDHT is a Distributed Hash Table (DHT) library. It may
+be used to manage peer-to-peer network connections as needed for real time
+communication.")
+ (license license:gpl3+)))