diff --git a/pkgs/tools/networking/openssh/default.nix b/pkgs/tools/networking/openssh/default.nix index b91c6a89c03d..8a1d46663423 100644 --- a/pkgs/tools/networking/openssh/default.nix +++ b/pkgs/tools/networking/openssh/default.nix @@ -1,11 +1,12 @@ { stdenv, fetchurl, zlib, openssl, perl , pamSupport ? false, pam ? null , etcDir ? null +, hpnSupport ? false }: assert pamSupport -> pam != null; -stdenv.mkDerivation rec { +stdenv.mkDerivation (rec { name = "openssh-5.2p1"; src = fetchurl { @@ -36,4 +37,16 @@ stdenv.mkDerivation rec { "; installTargets = "install-nosysconf"; +} // +(if hpnSupport then +rec { + hpnSrc = fetchurl { + url = http://www.psc.edu/networking/projects/hpn-ssh/openssh-5.2p1-hpn13v6.diff.gz; + sha256 = "1g91xl1vfg772072qcbcfzyqj7yfvm38xgk8zyy8wsl2g81rb8wh"; + }; + + patchPhase = '' + gunzip -c ${hpnSrc} | patch -p1 + ''; } +else {})) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3ec74b653601..9b26f0444819 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1224,6 +1224,7 @@ let openssh = import ../tools/networking/openssh { inherit fetchurl stdenv zlib openssl pam perl; pamSupport = getPkgConfig "openssh" "pam" true; + hpnSupport = getConfig [ "openssh" "hpn" ] false; etcDir = getConfig [ "openssh" "etcDir" ] "/etc/ssh"; };