diff options
Diffstat (limited to 'net-mgmt/net-snmp-devel/files/patch-snmpTCPIPv6Domain.c')
-rw-r--r-- | net-mgmt/net-snmp-devel/files/patch-snmpTCPIPv6Domain.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/net-mgmt/net-snmp-devel/files/patch-snmpTCPIPv6Domain.c b/net-mgmt/net-snmp-devel/files/patch-snmpTCPIPv6Domain.c index 365b6f398ebe..570f9bb9347f 100644 --- a/net-mgmt/net-snmp-devel/files/patch-snmpTCPIPv6Domain.c +++ b/net-mgmt/net-snmp-devel/files/patch-snmpTCPIPv6Domain.c @@ -1,12 +1,14 @@ ---- snmplib/snmpTCPIPv6Domain.c.orig Sat Oct 16 03:52:29 2004 -+++ snmplib/snmpTCPIPv6Domain.c Mon Oct 25 09:22:06 2004 -@@ -95,13 +95,21 @@ +Index: snmplib/snmpTCPIPv6Domain.c +diff -u -p snmplib/snmpTCPIPv6Domain.c.orig snmplib/snmpTCPIPv6Domain.c +--- snmplib/snmpTCPIPv6Domain.c.orig Fri Sep 16 19:30:49 2005 ++++ snmplib/snmpTCPIPv6Domain.c Fri Jan 11 13:40:09 2008 +@@ -96,13 +96,24 @@ netsnmp_tcp6_fmtaddr(netsnmp_transport * if (to == NULL) { return strdup("TCP/IPv6: unknown"); } else { - char addr[INET6_ADDRSTRLEN]; - char tmp[INET6_ADDRSTRLEN + 8]; -+ char tmp[NI_MAXHOST]; ++ char addr[NI_MAXHOST], tmp[NI_MAXHOST + NI_MAXSERV + 12]; - sprintf(tmp, "TCP/IPv6: [%s]:%hd", - inet_ntop(AF_INET6, (void *) &(to->sin6_addr), addr, @@ -20,10 +22,13 @@ +#ifndef NI_WITHSCOPEID +#define NI_WITHSCOPEID 0 +#endif -+ if (getnameinfo(to, sizeof(struct sockaddr_in6), tmp, sizeof(tmp), -+ NULL, 0, NI_NUMERICHOST | NI_WITHSCOPEID)) { ++ if (getnameinfo((struct sockaddr *)to, sizeof(struct sockaddr_in6), ++ addr, sizeof(addr), NULL, 0, ++ NI_NUMERICHOST | NI_WITHSCOPEID)) { + return strdup("UDP/IPv6: unknown"); + } ++ snprintf(tmp, sizeof(tmp), "TCP/IPv6: [%s]:%hd", addr, ++ ntohs(to->sin6_port)); + return strdup(tmp); } } |