diff --git a/pkgs/tools/networking/hping/default.nix b/pkgs/tools/networking/hping/default.nix new file mode 100644 index 000000000000..aa2574fbc1d0 --- /dev/null +++ b/pkgs/tools/networking/hping/default.nix @@ -0,0 +1,48 @@ +{ stdenv, fetchurl, libpcap, tcl }: + +stdenv.mkDerivation rec { + name = "hping-${version}"; + version = "20051105"; + + src = fetchurl { + url = "http://www.hping.org/hping3-${version}.tar.gz"; + sha256 = "1s5f9xd1msx05ibhwaw37jmc7l9fahcxxslqz8a83p0i5ak739pm"; + }; + + buildInputs = [ libpcap tcl ]; + + configurePhase = '' + MANPATH="$out/share/man" ./configure + sed -i -r -e 's|/usr(/s?bin)|'"$out"'\1|g' Makefile + ''; + + TCLSH = "${tcl}/bin/tclsh"; + + prePatch = '' + sed -i -e '/#if.*defined(__i386__)/a \ + || defined(__x86_64__) \\ + ' bytesex.h + + sed -i -e 's|#include.*net/bpf.h|#include |' \ + libpcap_stuff.c script.c + + sed -i -r -e 's|"(/usr/(local/)?)?bin/"|"${tcl}/bin"|g' \ + -e 's!/usr/(local/)?(lib|include)!${tcl}/\2!g' \ + configure + ''; + + preInstall = '' + mkdir -vp "$out/sbin" "$out/share/man/man8" + ''; + + postInstall = '' + ln -vs hping3.8.gz "$out/share/man/man8/hping.8.gz" + ln -vs hping3.8.gz "$out/share/man/man8/hping2.8.gz" + ''; + + meta = { + description = "A command-line oriented TCP/IP packet assembler/analyzer"; + homepage = "http://www.hping.org/"; + license = stdenv.lib.licenses.gpl2; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6b93bd0bd6d5..6f1b9d6a863c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -903,6 +903,8 @@ let host = callPackage ../tools/networking/host { }; + hping = callPackage ../tools/networking/hping { }; + httpfs2 = callPackage ../tools/filesystems/httpfs { }; # FIXME: This Hydra snapshot is outdated and depends on the `nixPerl',