summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeroen Roovers <jer@gentoo.org>2018-02-07 19:23:41 +0100
committerJeroen Roovers <jer@gentoo.org>2018-02-07 22:13:56 +0100
commit30fa4bb1eed4fb6dd85bb64e40d5c5b724c383b6 (patch)
treeb6c58e26da7768d453bacb346c15c21fb62dd727 /net-analyzer/dnstracer
parentapp-crypt/gnupg: Add fix for missing IPv6 stack (diff)
downloadgentoo-30fa4bb1eed4fb6dd85bb64e40d5c5b724c383b6.tar.gz
gentoo-30fa4bb1eed4fb6dd85bb64e40d5c5b724c383b6.tar.bz2
gentoo-30fa4bb1eed4fb6dd85bb64e40d5c5b724c383b6.zip
net-analyzer/dnstracer: Fix buffer overflow in host argument (bug #620928).
Package-Manager: Portage-2.3.24, Repoman-2.3.6
Diffstat (limited to 'net-analyzer/dnstracer')
-rw-r--r--net-analyzer/dnstracer/dnstracer-1.9-r2.ebuild22
-rw-r--r--net-analyzer/dnstracer/files/dnstracer-1.9-argv0.patch11
2 files changed, 33 insertions, 0 deletions
diff --git a/net-analyzer/dnstracer/dnstracer-1.9-r2.ebuild b/net-analyzer/dnstracer/dnstracer-1.9-r2.ebuild
new file mode 100644
index 000000000000..b5c49114d51a
--- /dev/null
+++ b/net-analyzer/dnstracer/dnstracer-1.9-r2.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DESCRIPTION="Determines where a given nameserver gets its information from"
+HOMEPAGE="http://www.mavetju.org/unix/general.php"
+SRC_URI="http://www.mavetju.org/download/${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux"
+IUSE="ipv6"
+
+DOCS=( CHANGES README )
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.9-argv0.patch
+)
+
+src_configure() {
+ econf $(use_enable ipv6)
+}
diff --git a/net-analyzer/dnstracer/files/dnstracer-1.9-argv0.patch b/net-analyzer/dnstracer/files/dnstracer-1.9-argv0.patch
new file mode 100644
index 000000000000..c83c38ea7d74
--- /dev/null
+++ b/net-analyzer/dnstracer/files/dnstracer-1.9-argv0.patch
@@ -0,0 +1,11 @@
+--- a/dnstracer.c
++++ b/dnstracer.c
+@@ -1619,7 +1619,7 @@
+ if (argv[0] == NULL) usage();
+
+ // check for a trailing dot
+- strcpy(argv0, argv[0]);
++ strncpy(argv0, argv[0], NS_MAXDNAME);
+ if (argv0[strlen(argv[0]) - 1] == '.') argv0[strlen(argv[0]) - 1] = 0;
+
+ printf("Tracing to %s[%s] via %s, maximum of %d retries\n",