2015-08-03 16:59:33 +02:00
|
|
|
{ stdenv, fetchurl, gmp, pkgconfig, python, autoreconfHook
|
2015-08-05 12:12:09 +02:00
|
|
|
, curl, trousers, sqlite, iptables, libxml2, openresolv
|
2015-09-06 21:05:11 +02:00
|
|
|
, ldns, unbound, pcsclite, openssl
|
2015-08-03 16:59:33 +02:00
|
|
|
, enableTNC ? false }:
|
2014-09-16 20:10:37 +02:00
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
2016-05-23 14:55:05 +02:00
|
|
|
name = "strongswan-${version}";
|
2016-08-25 21:59:41 +02:00
|
|
|
version = "5.5.0";
|
2014-09-16 20:10:37 +02:00
|
|
|
|
|
|
|
src = fetchurl {
|
|
|
|
url = "http://download.strongswan.org/${name}.tar.bz2";
|
2016-08-25 21:59:41 +02:00
|
|
|
sha256 = "0m449i5s51ikqh36s1sp4rvw60wqyv0j12kyd31yl9b7mjc3jijq";
|
2014-09-16 20:10:37 +02:00
|
|
|
};
|
|
|
|
|
2014-11-25 02:50:17 +01:00
|
|
|
dontPatchELF = true;
|
|
|
|
|
2015-08-03 16:59:33 +02:00
|
|
|
buildInputs =
|
2015-09-06 21:05:11 +02:00
|
|
|
[ gmp pkgconfig python autoreconfHook iptables ldns unbound openssl pcsclite ]
|
2015-08-04 19:16:27 +02:00
|
|
|
++ stdenv.lib.optionals enableTNC [ curl trousers sqlite libxml2 ];
|
2014-12-22 18:24:19 +01:00
|
|
|
|
|
|
|
patches = [
|
2014-12-22 20:55:01 +01:00
|
|
|
./ext_auth-path.patch
|
2014-12-22 18:24:19 +01:00
|
|
|
./firewall_defaults.patch
|
2014-12-22 20:55:01 +01:00
|
|
|
./updown-path.patch
|
2014-12-22 18:24:19 +01:00
|
|
|
];
|
2014-09-19 07:09:00 +02:00
|
|
|
|
2015-08-05 12:12:09 +02:00
|
|
|
postPatch = ''
|
|
|
|
substituteInPlace src/libcharon/plugins/resolve/resolve_handler.c --replace "/sbin/resolvconf" "${openresolv}/sbin/resolvconf"
|
|
|
|
'';
|
|
|
|
|
2015-08-03 16:59:33 +02:00
|
|
|
configureFlags =
|
2015-08-04 19:16:27 +02:00
|
|
|
[ "--enable-swanctl" "--enable-cmd"
|
|
|
|
"--enable-farp" "--enable-dhcp"
|
|
|
|
"--enable-eap-sim" "--enable-eap-sim-file" "--enable-eap-simaka-pseudonym"
|
|
|
|
"--enable-eap-simaka-reauth" "--enable-eap-identity" "--enable-eap-md5"
|
|
|
|
"--enable-eap-gtc" "--enable-eap-aka" "--enable-eap-aka-3gpp2"
|
|
|
|
"--enable-eap-mschapv2" "--enable-xauth-eap" "--enable-ext-auth"
|
|
|
|
"--enable-forecast" "--enable-connmark" "--enable-acert"
|
2015-09-06 21:05:11 +02:00
|
|
|
"--enable-pkcs11" "--enable-eap-sim-pcsc" "--enable-dnscert" "--enable-unbound"
|
2015-08-04 19:16:27 +02:00
|
|
|
"--enable-aesni" "--enable-af-alg" "--enable-rdrand" ]
|
|
|
|
++ stdenv.lib.optional (stdenv.system == "i686-linux") "--enable-padlock"
|
2015-08-03 16:59:33 +02:00
|
|
|
++ stdenv.lib.optionals enableTNC [
|
|
|
|
"--disable-gmp" "--disable-aes" "--disable-md5" "--disable-sha1" "--disable-sha2" "--disable-fips-prf"
|
2015-08-04 19:16:27 +02:00
|
|
|
"--enable-curl" "--enable-openssl"
|
2015-08-03 16:59:33 +02:00
|
|
|
"--enable-eap-tnc" "--enable-eap-ttls" "--enable-eap-dynamic" "--enable-tnccs-20"
|
|
|
|
"--enable-tnc-imc" "--enable-imc-os" "--enable-imc-attestation"
|
|
|
|
"--enable-tnc-imv" "--enable-imv-attestation"
|
2015-08-04 19:16:27 +02:00
|
|
|
"--enable-tnc-ifmap" "--enable-tnc-imc" "--enable-tnc-imv"
|
2015-08-03 16:59:33 +02:00
|
|
|
"--with-tss=trousers"
|
|
|
|
"--enable-aikgen"
|
|
|
|
"--enable-sqlite" ];
|
2014-09-16 20:10:37 +02:00
|
|
|
|
2014-11-11 07:40:52 +01:00
|
|
|
NIX_LDFLAGS = "-lgcc_s" ;
|
|
|
|
|
2014-09-16 20:10:37 +02:00
|
|
|
meta = {
|
|
|
|
description = "OpenSource IPsec-based VPN Solution";
|
|
|
|
homepage = https://www.strongswan.org;
|
|
|
|
license = stdenv.lib.licenses.gpl2Plus;
|
2014-11-26 21:04:59 +01:00
|
|
|
platforms = stdenv.lib.platforms.all;
|
2014-09-16 20:10:37 +02:00
|
|
|
};
|
|
|
|
}
|