summaryrefslogtreecommitdiff
path: root/net/net-snmp/files/patch-snmpTCPIPv6Domain.c
diff options
context:
space:
mode:
authorJun Kuriyama <kuriyama@FreeBSD.org>2002-07-25 11:03:01 +0000
committerJun Kuriyama <kuriyama@FreeBSD.org>2002-07-25 11:03:01 +0000
commit3aae3284ba867e45d14b11524b9b8dcb062fdb49 (patch)
tree77689b93656ba6b1078f3c8f40a00ed1f9fb6737 /net/net-snmp/files/patch-snmpTCPIPv6Domain.c
parent- Update to version 2.0.6 (diff)
o Fix string representation of IPv6 address for libwrap's address
matching. o Add a note that numeric address is required for snmpd in /etc/hosts.allow. Guided by: ume
Notes
Notes: svn path=/head/; revision=63522
Diffstat (limited to 'net/net-snmp/files/patch-snmpTCPIPv6Domain.c')
-rw-r--r--net/net-snmp/files/patch-snmpTCPIPv6Domain.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/net/net-snmp/files/patch-snmpTCPIPv6Domain.c b/net/net-snmp/files/patch-snmpTCPIPv6Domain.c
new file mode 100644
index 000000000000..fcfc1e672d9d
--- /dev/null
+++ b/net/net-snmp/files/patch-snmpTCPIPv6Domain.c
@@ -0,0 +1,30 @@
+--- snmplib/snmpTCPIPv6Domain.c.orig Wed Jul 17 03:20:43 2002
++++ snmplib/snmpTCPIPv6Domain.c Thu Jul 25 19:55:47 2002
+@@ -62,13 +62,21 @@
+ if (to == NULL) {
+ return strdup("TCP/IPv6: unknown");
+ } else {
+- char addr[INET6_ADDRSTRLEN];
+- char tmp[INET6_ADDRSTRLEN + 8];
++ char tmp[NI_MAXHOST];
+
+- sprintf(tmp, "[%s]:%hd",
+- inet_ntop(AF_INET6, (void *) &(to->sin6_addr), addr,
+- INET6_ADDRSTRLEN), ntohs(to->sin6_port));
+- return strdup(tmp);
++/*
++ * NI_WITHSCOPEID will be obsoleted. But some implementations require
++ * this flag to retrieve scoped name.
++ * (2002-07-25: kuriyama@FreeBSD.org)
++ */
++#ifndef NI_WITHSCOPEID
++#define NI_WITHSCOPEID 0
++#endif
++ if (getnameinfo(to, sizeof(struct sockaddr_in6), tmp, sizeof(tmp),
++ NULL, 0, NI_NUMERICHOST | NI_WITHSCOPEID)) {
++ return strdup("UDP/IPv6: unknown");
++ }
++ return strdup(tmp);
+ }
+ }
+