2018-08-08 19:37:03 +01:00
|
|
|
{ stdenv, fetchurl, fetchpatch, openssl, perl, which, dns-root-data }:
|
2011-11-01 22:33:40 +00:00
|
|
|
|
2013-05-27 06:57:08 +01:00
|
|
|
stdenv.mkDerivation rec {
|
2017-01-04 16:43:05 +00:00
|
|
|
pname = "ldns";
|
|
|
|
version = "1.7.0";
|
|
|
|
|
|
|
|
name = "${pname}-${version}";
|
2013-05-27 06:57:08 +01:00
|
|
|
|
2011-11-01 22:33:40 +00:00
|
|
|
src = fetchurl {
|
2017-01-04 16:43:05 +00:00
|
|
|
url = "https://www.nlnetlabs.nl/downloads/ldns/${name}.tar.gz";
|
2017-12-09 09:59:08 +00:00
|
|
|
sha256 = "1k56jw4hz8njspfxcfw0czf1smg0n48ylia89ziwyx5k9wdmp7y1";
|
2011-11-01 22:33:40 +00:00
|
|
|
};
|
|
|
|
|
2017-12-09 09:59:08 +00:00
|
|
|
patches = [
|
|
|
|
(fetchpatch {
|
|
|
|
name = "CVE-2017-1000231.patch";
|
|
|
|
url = "https://git.nlnetlabs.nl/ldns/patch/?id=c8391790";
|
|
|
|
sha256 = "1rprfh0y1c28dqiy3vgwvwdhn7b5rsylfzzblx5xdhwfqgdw8vn0";
|
|
|
|
excludes = [ "Changelog" ];
|
|
|
|
})
|
|
|
|
(fetchpatch {
|
|
|
|
name = "CVE-2017-1000232.patch";
|
|
|
|
url = "https://git.nlnetlabs.nl/ldns/patch/?id=3bdeed02";
|
|
|
|
sha256 = "0bv0s5jjp0sswfg8da47d346iwp9yjhj9w7fa3bxh174br0zj07r";
|
|
|
|
excludes = [ "Changelog" ];
|
|
|
|
})
|
|
|
|
];
|
|
|
|
|
|
|
|
postPatch = ''
|
2015-09-17 05:20:29 +01:00
|
|
|
patchShebangs doc/doxyparse.pl
|
2011-11-01 22:33:40 +00:00
|
|
|
'';
|
|
|
|
|
2017-06-16 04:12:37 +01:00
|
|
|
outputs = [ "out" "dev" "man" "examples" ];
|
2017-01-04 16:43:05 +00:00
|
|
|
|
2015-09-17 05:20:29 +01:00
|
|
|
nativeBuildInputs = [ perl ];
|
|
|
|
buildInputs = [ openssl ];
|
2011-11-01 22:33:40 +00:00
|
|
|
|
2017-06-16 04:11:56 +01:00
|
|
|
configureFlags = [
|
|
|
|
"--with-ssl=${openssl.dev}"
|
|
|
|
"--with-trust-anchor=${dns-root-data}/root.key"
|
|
|
|
"--with-drill"
|
|
|
|
"--disable-gost"
|
2018-02-25 19:42:23 +00:00
|
|
|
] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
|
|
|
"ac_cv_func_malloc_0_nonnull=yes"
|
|
|
|
"ac_cv_func_realloc_0_nonnull=yes"
|
2017-06-16 04:11:56 +01:00
|
|
|
];
|
2011-11-01 22:33:40 +00:00
|
|
|
|
2018-08-08 19:37:03 +01:00
|
|
|
checkInputs = [ which ];
|
|
|
|
doCheck = false; # fails. missing some files
|
|
|
|
|
2016-11-14 15:35:34 +00:00
|
|
|
postInstall = ''
|
|
|
|
moveToOutput "bin/ldns-config" "$dev"
|
2017-06-16 04:12:37 +01:00
|
|
|
|
|
|
|
pushd examples
|
|
|
|
configureFlagsArray+=( "--bindir=$examples/bin" )
|
|
|
|
configurePhase
|
|
|
|
make
|
|
|
|
make install
|
|
|
|
popd
|
2017-08-13 21:43:41 +01:00
|
|
|
|
|
|
|
sed -i "$out/lib/libldns.la" -e "s,-L${openssl.dev},-L${openssl.out},g"
|
2016-11-14 15:35:34 +00:00
|
|
|
'';
|
|
|
|
|
2015-08-03 10:37:15 +01:00
|
|
|
meta = with stdenv.lib; {
|
2011-11-01 22:33:40 +00:00
|
|
|
description = "Library with the aim of simplifying DNS programming in C";
|
2015-08-03 10:37:15 +01:00
|
|
|
license = licenses.bsd3;
|
2017-08-01 21:03:30 +01:00
|
|
|
homepage = http://www.nlnetlabs.nl/projects/ldns/;
|
2015-08-03 10:37:15 +01:00
|
|
|
platforms = platforms.linux;
|
2015-08-03 10:37:40 +01:00
|
|
|
maintainers = with maintainers; [ jgeerds ];
|
2011-11-01 22:33:40 +00:00
|
|
|
};
|
|
|
|
}
|