diff options
author | Jeroen Roovers <jer@gentoo.org> | 2018-01-17 12:22:56 +0100 |
---|---|---|
committer | Jeroen Roovers <jer@gentoo.org> | 2018-01-17 12:22:56 +0100 |
commit | dc01387f569899d7355515cd0c00a3954781cbbf (patch) | |
tree | 320caa21f3c86c918ebe136bf255d07d28b7f57b /net-analyzer/iftop/files | |
parent | net-analyzer/iftop: Old. (diff) | |
download | gentoo-dc01387f569899d7355515cd0c00a3954781cbbf.tar.gz gentoo-dc01387f569899d7355515cd0c00a3954781cbbf.tar.bz2 gentoo-dc01387f569899d7355515cd0c00a3954781cbbf.zip |
net-analyzer/iftop: Add upstream patch to fix IPv6 DNS resolution suggested by Michael Bazzinotti.
Package-Manager: Portage-2.3.19, Repoman-2.3.6
Diffstat (limited to 'net-analyzer/iftop/files')
-rw-r--r-- | net-analyzer/iftop/files/iftop-1.0_pre4-ip6.arpa.patch | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/net-analyzer/iftop/files/iftop-1.0_pre4-ip6.arpa.patch b/net-analyzer/iftop/files/iftop-1.0_pre4-ip6.arpa.patch new file mode 100644 index 000000000000..706db4546db9 --- /dev/null +++ b/net-analyzer/iftop/files/iftop-1.0_pre4-ip6.arpa.patch @@ -0,0 +1,48 @@ +From 35af3cf65f17961d173b31fd3b00166ec095c226 Mon Sep 17 00:00:00 2001 +From: Paul Warren <pdw@mythic-beasts.com> +Date: Mon, 6 Feb 2017 21:35:37 +0000 +Subject: [PATCH] Fix bug with DNS resolution. https://bugzilla.redhat.com/show_bug.cgi?id=1120254 + +--- + resolver.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/resolver.c b/resolver.c +index adddbc1..a3123bd 100644 +--- a/resolver.c ++++ b/resolver.c +@@ -438,11 +438,11 @@ void resolver_worker(void* ptr) { + char **ch_pp; + void **void_pp; + } u_old = { &old }; +- if(hash_find(ns_hash, &addr, u_old.void_pp) == HASH_STATUS_OK) { ++ if(hash_find(ns_hash, &addr.as_addr6, u_old.void_pp) == HASH_STATUS_OK) { + hash_delete(ns_hash, &addr); + xfree(old); + } +- hash_insert(ns_hash, &addr, (void*)hostname); ++ hash_insert(ns_hash, &addr.as_addr6, (void*)hostname); + } + + } +@@ -488,7 +488,7 @@ void resolve(int af, void* addr, char* result, int buflen) { + + pthread_mutex_lock(&resolver_queue_mutex); + +- if(hash_find(ns_hash, raddr, u_hostname.void_pp) == HASH_STATUS_OK) { ++ if(hash_find(ns_hash, &raddr->as_addr6, u_hostname.void_pp) == HASH_STATUS_OK) { + /* Found => already resolved, or on the queue, no need to keep + * it around */ + free(raddr); +@@ -497,7 +497,7 @@ void resolve(int af, void* addr, char* result, int buflen) { + hostname = xmalloc(INET6_ADDRSTRLEN); + inet_ntop(af, &raddr->addr, hostname, INET6_ADDRSTRLEN); + +- hash_insert(ns_hash, raddr, hostname); ++ hash_insert(ns_hash, &raddr->as_addr6, hostname); + + if(((head + 1) % RESOLVE_QUEUE_LENGTH) == tail) { + /* queue full */ +-- +libgit2 0.26.0 + |