FreeBSD Bugzilla – Attachment 77036 Details for
Bug 110969
[patch] net-snmp 5.4
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
PATCH-SNMP-5.4
PATCH-SNMP-5.4 (text/plain), 29.52 KB, created by
Valerio Daelli
on 2007-03-28 14:30:02 UTC
(
hide
)
Description:
PATCH-SNMP-5.4
Filename:
MIME Type:
Creator:
Valerio Daelli
Created:
2007-03-28 14:30:02 UTC
Size:
29.52 KB
patch
obsolete
>diff -ruN /usr/ports/net-mgmt/net-snmp.BAK/Makefile /usr/ports/net-mgmt/net-snmp/Makefile >--- /usr/ports/net-mgmt/net-snmp.BAK/Makefile Sun Mar 25 14:35:45 2007 >+++ /usr/ports/net-mgmt/net-snmp/Makefile Wed Mar 28 14:31:48 2007 >@@ -6,8 +6,8 @@ > # > > PORTNAME= snmp >-PORTVERSION= 5.3.1 >-PORTREVISION= 3 >+PORTVERSION= 5.4 >+PORTREVISION= 0 > CATEGORIES= net-mgmt ipv6 > MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} > MASTER_SITE_SUBDIR= net-snmp >@@ -81,7 +81,7 @@ > PLIST_SUB+= WITH_IPV6="@comment " > .endif > >-SHLIB_VERSION= 10 >+SHLIB_VERSION= 15 > PLIST_SUB+= SHLIB_VERSION=${SHLIB_VERSION} > SCRIPTS_SUB= PREFIX=${PREFIX} PERL=${PERL} > >@@ -206,7 +206,7 @@ > @${ECHO_MSG} " agent" > @${ECHO_MSG} > >-post-patch: patch-autoconf patch-script-files >+post-patch: > > patch-autoconf: > @${AWK} '/@synopsis/,/taken from libtool.m4/' ${WRKSRC}/aclocal.m4 > ${WRKSRC}/aclocal.m4.tmp >diff -ruN /usr/ports/net-mgmt/net-snmp.BAK/distinfo /usr/ports/net-mgmt/net-snmp/distinfo >--- /usr/ports/net-mgmt/net-snmp.BAK/distinfo Wed Feb 28 02:17:15 2007 >+++ /usr/ports/net-mgmt/net-snmp/distinfo Wed Mar 28 14:31:48 2007 >@@ -1,3 +1,3 @@ >-MD5 (net-snmp-5.3.1.tar.gz) = 360a9783dbc853bab6bda90d961daee5 >-SHA256 (net-snmp-5.3.1.tar.gz) = fb6d5113ccdd8c4661fe5d825160e45a7c5035b145e24ec18f71a509ecb0fe43 >-SIZE (net-snmp-5.3.1.tar.gz) = 4210843 >+MD5 (net-snmp-5.4.tar.gz) = 46d893281056ff476e597659cb91574d >+SHA256 (net-snmp-5.4.tar.gz) = 2f43cd6f3c4066f8c17fdc47931a96c1fce808c9d1dd74bcb5a79d9d29d5f947 >+SIZE (net-snmp-5.4.tar.gz) = 5031685 >diff -ruN /usr/ports/net-mgmt/net-snmp.BAK/files/patch-Makefile.in /usr/ports/net-mgmt/net-snmp/files/patch-Makefile.in >--- /usr/ports/net-mgmt/net-snmp.BAK/files/patch-Makefile.in Wed Nov 30 06:22:40 2005 >+++ /usr/ports/net-mgmt/net-snmp/files/patch-Makefile.in Wed Mar 28 14:31:48 2007 >@@ -4,8 +4,8 @@ > INSTALLHEADERS=version.h > INCLUDESUBDIR=system > INCLUDESUBDIRHEADERS= aix.h bsd.h bsdi3.h bsdi4.h bsdi.h cygwin.h \ >-- darwin.h darwin7.h darwin8.h freebsd5.h freebsd6.h \ >-+ darwin.h darwin7.h darwin8.h freebsd5.h freebsd6.h freebsd7.h \ >+- darwin.h darwin7.h darwin8.h darwin9.h freebsd5.h freebsd6.h \ >++ darwin.h darwin7.h darwin8.h darwin9.h freebsd5.h freebsd6.h freebsd7.h \ > dynix.h freebsd2.h freebsd3.h freebsd4.h freebsd.h generic.h hpux.h \ > irix.h linux.h mingw32.h mips.h netbsd.h openbsd.h osf5.h \ > solaris2.6.h solaris2.7.h solaris2.8.h solaris2.9.h solaris2.10.h \ >diff -ruN /usr/ports/net-mgmt/net-snmp.BAK/files/patch-agent.xs /usr/ports/net-mgmt/net-snmp/files/patch-agent.xs >--- /usr/ports/net-mgmt/net-snmp.BAK/files/patch-agent.xs Mon Mar 5 15:42:00 2007 >+++ /usr/ports/net-mgmt/net-snmp/files/patch-agent.xs Wed Mar 28 14:31:48 2007 >@@ -1,19 +1,6 @@ >---- perl/agent/agent.xs.old Fri May 26 15:16:45 2006 >-+++ perl/agent/agent.xs Mon Mar 5 13:42:35 2007 >-@@ -18,9 +18,9 @@ >- } handler_cb_data; >- >- typedef struct netsnmp_oid_s { >-- unsigned int *name; >-- unsigned int len; >-- unsigned int namebuf[ MAX_OID_LEN ]; >-+ oid *name; >-+ size_t len; >-+ oid namebuf[ MAX_OID_LEN ]; >- } netsnmp_oid; >- >- static int have_done_agent = 0; >-@@ -569,7 +569,7 @@ >+--- perl/agent/agent.xs.old Fri May 26 15:16:45 2006 >++++ perl/agent/agent.xs Mon Mar 5 13:42:35 2007 >+@@ -573,7 +573,7 @@ > arg = newSVrv(rarg, "netsnmp_oidPtr"); > sv_setiv(arg, (IV) o); > >@@ -22,7 +9,7 @@ > > PUTBACK; > i = perl_call_pv("NetSNMP::OID::newwithptr", G_SCALAR); >-@@ -608,7 +608,7 @@ >+@@ -612,7 +612,7 @@ > arg = newSVrv(rarg, "netsnmp_oidPtr"); > sv_setiv(arg, (IV) o); > >@@ -31,7 +18,7 @@ > > PUTBACK; > i = perl_call_pv("NetSNMP::OID::newwithptr", G_SCALAR); >-@@ -997,11 +997,13 @@ >+@@ -1001,11 +1001,13 @@ > rarg = newSViv(0); > arg = newSVrv(rarg, "NetSNMP::agent::netsnmp_request_infoPtr"); > sv_setiv(arg, (IV) request); >diff -ruN /usr/ports/net-mgmt/net-snmp.BAK/files/patch-freebsd5.h /usr/ports/net-mgmt/net-snmp/files/patch-freebsd5.h >--- /usr/ports/net-mgmt/net-snmp.BAK/files/patch-freebsd5.h Tue Aug 31 17:52:18 2004 >+++ /usr/ports/net-mgmt/net-snmp/files/patch-freebsd5.h Wed Mar 28 14:31:48 2007 >@@ -3,8 +3,6 @@ > @@ -7,6 +7,7 @@ > #define freebsd3 1 > /* freebsd5 is a superset of freebsd4 */ >- #define freebsd4 1 >+ #define freebsd4 freebsd4 > +#define freebsd5 1 > >- #undef IFADDR_SYMBOL >- #define IFADDR_SYMBOL "in_ifaddrhead" >diff -ruN /usr/ports/net-mgmt/net-snmp.BAK/files/patch-hr_storage.c /usr/ports/net-mgmt/net-snmp/files/patch-hr_storage.c >--- /usr/ports/net-mgmt/net-snmp.BAK/files/patch-hr_storage.c Wed Nov 30 06:22:40 2005 >+++ /usr/ports/net-mgmt/net-snmp/files/patch-hr_storage.c Wed Mar 28 14:31:48 2007 >@@ -1,221 +0,0 @@ >---- agent/mibgroup/host/hr_storage.c.orig Fri Oct 7 07:55:23 2005 >-+++ agent/mibgroup/host/hr_storage.c Wed Nov 30 12:01:05 2005 >-@@ -233,6 +233,10 @@ >- void sol_get_swapinfo(int *, int *); >- #endif >- >-+#if defined(__FreeBSD__) && __FreeBSD_version >= 500102 >-+void collect_mbuf(long *long_mbuf, long *long_mbufc); >-+#endif >-+ >- #define HRSTORE_MEMSIZE 1 >- #define HRSTORE_INDEX 2 >- #define HRSTORE_TYPE 3 >-@@ -472,7 +476,8 @@ >- NULL, >- "Memory Buffers", /* HRS_TYPE_MBUF */ >- "Real Memory", /* HRS_TYPE_MEM */ >-- "Swap Space" /* HRS_TYPE_SWAP */ >-+ "Swap Space", /* HRS_TYPE_SWAP */ >-+ "Memory Buffer Clusters" /* HRS_TYPE_MBUFCLUSTER */ >- }; >- >- >-@@ -611,6 +616,7 @@ >- storage_type_id[storage_type_len - 1] = 3; /* Virtual Mem */ >- break; >- case HRS_TYPE_MBUF: >-+ case HRS_TYPE_MBUFCLUSTER: >- storage_type_id[storage_type_len - 1] = 1; /* Other */ >- break; >- default: >-@@ -704,7 +710,7 @@ >- long_return = memory_totals.t_vm; >- #endif >- break; >--#else /* !linux && !solaris2 && !hpux10 && !hpux11 && ... */ >-+#else >- case HRS_TYPE_MEM: >- long_return = physmem; >- break; >-@@ -726,13 +732,45 @@ >- i++) >- long_return += mbstat.m_mtypes[i]; >- #elif defined(MBSTAT_SYMBOL) && defined(STRUCT_MBSTAT_HAS_M_MBUFS) >-+#if !defined(__FreeBSD__) || __FreeBSD_version < 500021 >- long_return = mbstat.m_mbufs; >-+#elif defined(__FreeBSD__) && __FreeBSD_version < 500024 >-+ /* mbuf stats disabled */ >-+ return NULL; >-+#elif defined(__FreeBSD__) >-+ { >-+ size_t mlen = sizeof(int); >-+ int nmbufs; >-+ if (sysctlbyname("kern.ipc.nmbufs", &nmbufs, &mlen, >-+ NULL, 0) < 0) { >-+ return NULL; >-+ } >-+ long_return = nmbufs; >-+ break; >-+ } >-+#else >-+#error "XXX" >-+ /* XXX TODO: implement new method */ >-+ return NULL; >-+#endif /* __FreeBSD__ */ >- #elif defined(NO_DUMMY_VALUES) >- goto try_next; >- #else >- long_return = 0; >- #endif >- break; >-+#if defined(__FreeBSD__) && __FreeBSD_version >= 500024 >-+ case HRS_TYPE_MBUFCLUSTER: { >-+ size_t mlen = sizeof(int); >-+ int nmbclusters; >-+ if (sysctlbyname("kern.ipc.nmbclusters", &nmbclusters, &mlen, >-+ NULL, 0) < 0) { >-+ return NULL; >-+ } >-+ long_return = nmbclusters; >-+ break; >-+ } >-+#endif >- default: >- #if NO_DUMMY_VALUES >- goto try_next; >-@@ -796,6 +834,12 @@ >- #endif >- #elif defined(MBSTAT_SYMBOL) && defined(STRUCT_MBSTAT_HAS_M_CLUSTERS) >- long_return = mbstat.m_clusters - mbstat.m_clfree; /* unlikely, but... */ >-+#elif defined(__FreeBSD__) && __FreeBSD_version < 500102 >-+ /* mbuf stats disabled */ >-+ return NULL; >-+#elif defined(__FreeBSD__) >-+ collect_mbuf((long*)&long_return, (long*)NULL); >-+ break; >- #elif defined(NO_DUMMY_VALUES) >- goto try_next; >- #else >-@@ -803,6 +847,11 @@ >- #endif >- break; >- #endif /* !linux && !solaris2 && !hpux10 && !hpux11 && ... */ >-+#if defined(__FreeBSD__) && __FreeBSD_version >= 500102 >-+ case HRS_TYPE_MBUFCLUSTER: >-+ collect_mbuf(NULL, &long_return); >-+ break; >-+#endif >- default: >- #if NO_DUMMY_VALUES >- goto try_next; >-@@ -829,7 +878,11 @@ >- break; >- #if !defined(linux) && !defined(solaris2) && !defined(hpux10) && !defined(hpux11) && defined(MBSTAT_SYMBOL) >- case HRS_TYPE_MBUF: >-+#if defined(__FreeBSD__) && __FreeBSD_version >= 502113 >-+ long_return = mbstat.m_mcfail + mbstat.m_mpfail; >-+#else >- long_return = mbstat.m_drops; >-+#endif >- break; >- #endif /* !linux && !solaris2 && !hpux10 && !hpux11 && MBSTAT_SYMBOL */ >- default: >-@@ -955,3 +1008,97 @@ >- *usedP = ainfo.ani_resv; >- } >- #endif /* solaris2 */ >-+ >-+#if defined(__FreeBSD__) && __FreeBSD_version >= 500102 >-+void >-+collect_mbuf(long *long_mbuf, long *long_mbufc) >-+{ >-+#if __FreeBSD_version >= 502113 >-+ size_t mlen; >-+ struct mbstat mbstat; >-+ >-+ mlen = sizeof mbstat; >-+ if (sysctlbyname("kern.ipc.mbstat", &mbstat, &mlen, NULL, 0) < 0) { >-+ warn("sysctl: retrieving mbstat"); >-+ return; >-+ } >-+ if (mbstat.m_mbufs < 0) mbstat.m_mbufs = 0; /* XXX */ >-+ if (mbstat.m_mclusts < 0) mbstat.m_mclusts = 0; /* XXX */ >-+ if (long_mbuf) { >-+ *long_mbuf = mbstat.m_mbufs; >-+ } >-+ if (long_mbufc) { >-+ *long_mbufc = mbstat.m_mclusts; >-+ } >-+#else >-+ int i, j, num_objs; >-+ size_t mlen; >-+ u_long totused[2]; >-+ u_long totnum, totfree; >-+ struct mbstat mbstat; >-+ struct mbpstat **mbpstat = NULL; >-+ >-+ if (sysctlbyname("kern.ipc.mb_statpcpu", NULL, &mlen, NULL, 0) < 0) { >-+ warn("sysctl: retrieving mb_statpcpu len"); >-+ goto err; >-+ } >-+ num_objs = (int)(mlen / sizeof(struct mbpstat)); >-+ if ((mbpstat = calloc(num_objs, sizeof(struct mbpstat *))) == NULL) { >-+ warn("calloc: cannot allocate memory for mbpstats pointers"); >-+ goto err; >-+ } >-+ if ((mbpstat[0] = calloc(num_objs, sizeof(struct mbpstat))) == NULL) { >-+ warn("calloc: cannot allocate memory for mbpstats"); >-+ goto err; >-+ } >-+ >-+ if (sysctlbyname("kern.ipc.mb_statpcpu", mbpstat[0], &mlen, NULL, 0) < 0) { >-+ warn("sysctl: retrieving mb_statpcpu"); >-+ goto err; >-+ } >-+ mlen = sizeof mbstat; >-+ if (sysctlbyname("kern.ipc.mbstat", &mbstat, &mlen, NULL, 0) < 0) { >-+ warn("sysctl: retrieving mbstat"); >-+ goto err; >-+ } >-+ >-+ for (i = 0; i < num_objs; i++) >-+ mbpstat[i] = mbpstat[0] + i; >-+ >-+#define GENLST (num_objs - 1) >-+ >-+ totnum = mbpstat[GENLST]->mb_mbbucks * mbstat.m_mbperbuck; >-+ totfree = mbpstat[GENLST]->mb_mbfree; >-+ for (i = 0; i < (num_objs - 1); i++) { >-+ if (mbpstat[i]->mb_active == 0) >-+ continue; >-+ totnum += mbpstat[i]->mb_mbbucks * mbstat.m_mbperbuck; >-+ totfree += mbpstat[i]->mb_mbfree; >-+ } >-+ totused[0] = totnum - totfree; >-+ totnum = mbpstat[GENLST]->mb_clbucks * mbstat.m_clperbuck; >-+ totfree = mbpstat[GENLST]->mb_clfree; >-+ for (i = 0; i < (num_objs - 1); i++) { >-+ if (mbpstat[i]->mb_active == 0) >-+ continue; >-+ totnum += mbpstat[i]->mb_clbucks * mbstat.m_clperbuck; >-+ totfree += mbpstat[i]->mb_clfree; >-+ } >-+ totused[1] = totnum - totfree; >-+ >-+ if (long_mbuf) { >-+ *long_mbuf = totused[0]; >-+ } >-+ if (long_mbufc) { >-+ *long_mbufc = totused[1]; >-+ } >-+ >-+ err: >-+ if (mbpstat != NULL) { >-+ if (mbpstat[0] != NULL) >-+ free(mbpstat[0]); >-+ free(mbpstat); >-+ } >-+#endif >-+} >-+#endif >diff -ruN /usr/ports/net-mgmt/net-snmp.BAK/files/patch-ipv6.c /usr/ports/net-mgmt/net-snmp/files/patch-ipv6.c >--- /usr/ports/net-mgmt/net-snmp.BAK/files/patch-ipv6.c Mon Nov 29 05:08:29 2004 >+++ /usr/ports/net-mgmt/net-snmp/files/patch-ipv6.c Wed Mar 28 14:31:48 2007 >@@ -1,5 +1,5 @@ >---- agent/mibgroup/mibII/ipv6.c.orig Thu Jul 8 05:31:54 2004 >-+++ agent/mibgroup/mibII/ipv6.c Mon Oct 25 08:32:31 2004 >+--- agent/mibgroup/mibII/ipv6.c.orig Tue Nov 7 00:43:27 2006 >++++ agent/mibgroup/mibII/ipv6.c Tue Mar 20 10:06:33 2007 > @@ -8,10 +8,25 @@ > #define _KERNEL 1 > #define _I_DEFINED_KERNEL >@@ -36,7 +36,7 @@ > # if HAVE_NETINET_IN_PCB_H > # include <netinet/in_pcb.h> > # endif >-@@ -575,7 +590,7 @@ >+@@ -578,7 +593,7 @@ > memcpy(result, &tmp, sizeof(tmp)); > return 0; > } >@@ -45,7 +45,7 @@ > q = (caddr_t) TAILQ_NEXT(&tmp, if_link); > #else > # if defined(__NetBSD__) || defined(__OpenBSD__) >-@@ -806,7 +821,7 @@ >+@@ -809,7 +824,7 @@ > > if (if_getifnet(interface, &ifnet) < 0) > break; >@@ -54,7 +54,16 @@ > ifa = (caddr_t) TAILQ_FIRST(&ifnet.if_addrhead); > #else > # if defined(__NetBSD__) || defined(__OpenBSD__) >-@@ -827,7 +842,7 @@ >+@@ -823,7 +838,7 @@ >+ DEBUGMSGTL(("mibII/ipv6:var_ipv6", "klookup failed\n")); >+ break; >+ } >+- if (!NETSNMP_KLOOKUP(ifaddr.ifa_addr, (char *) &sdl, sizeof(sdl)); >++ if (!NETSNMP_KLOOKUP(ifaddr.ifa_addr, (char *) &sdl, sizeof(sdl))) { >+ DEBUGMSGTL(("mibII/ipv6:var_ipv6", "klookup failed\n")); >+ break; >+ } >+@@ -835,7 +850,7 @@ > *var_len = sdl.sdl_alen; > return (u_char *) (sdl.sdl_data + sdl.sdl_nlen); > } >@@ -63,7 +72,7 @@ > ifa = (caddr_t) TAILQ_NEXT(&ifaddr, ifa_link); > #else > # if defined(__NetBSD__) || defined(__OpenBSD__) >-@@ -1220,32 +1235,33 @@ >+@@ -1228,32 +1243,33 @@ > size_t * length, > int exact, size_t * var_len, WriteMethod ** write_method) > { >@@ -106,7 +115,7 @@ > if (!auto_nlist("udb6", (char *) &udb6, sizeof(udb6))) > return NULL; > p = (caddr_t) udb6.in6p_next; >-@@ -1274,9 +1290,10 @@ >+@@ -1282,9 +1298,10 @@ > (int) vp->namelen * sizeof(oid)); > DEBUGMSGTL(("mibII/ipv6", "start: p=%x\n", p)); > while ( >@@ -119,14 +128,14 @@ > p && (u_long) p != auto_nlist_value("udb6") > #else > xig->xig_len > sizeof(struct xinpgen) >-@@ -1284,31 +1301,32 @@ >+@@ -1292,31 +1309,32 @@ > ) { > DEBUGMSGTL(("mibII/ipv6", "looping: p=%x\n", p)); > > -#if !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(darwin) >-- if (klookup((u_long) p, (char *) &in6pcb, sizeof(in6pcb)) < 0) { >+- if (!NETSNMP_KLOOKUP(p, (char *) &in6pcb, sizeof(in6pcb))) { > +#if OS_NOT_FREEBSD_NOR_DARWIN >-+ if (klookup((u_long) p, (char *) &tstpcb, sizeof(tstpcb)) < 0) { >++ if (!NETSNMP_KLOOKUP((u_long) p, (char *) &tstpcb, sizeof(tstpcb)) < 0) { > DEBUGMSGTL(("mibII/ipv6", "klookup fail for udb6 at %x\n", > p)); > found = 0; >@@ -163,7 +172,7 @@ > else > newname[j++] = 0; > /*XXX*/ >-@@ -1319,7 +1337,7 @@ >+@@ -1327,7 +1345,7 @@ > > result = snmp_oid_compare(name, *length, newname, j); > if (exact && (result == 0)) { >@@ -172,7 +181,7 @@ > savnameLen = j; > memcpy(savname, newname, j * sizeof(oid)); > found++; >-@@ -1330,7 +1348,7 @@ >+@@ -1338,7 +1356,7 @@ > */ > if ((savnameLen == 0) || > (snmp_oid_compare(savname, savnameLen, newname, j) > 0)) { >@@ -181,7 +190,7 @@ > savnameLen = j; > memcpy(savname, newname, j * sizeof(oid)); > found++; >-@@ -1338,15 +1356,15 @@ >+@@ -1346,15 +1364,15 @@ > } > > skip: >@@ -202,7 +211,7 @@ > free(sysctl_buf); > #endif > DEBUGMSGTL(("mibII/ipv6", "found=%d\n", found)); >-@@ -1354,7 +1372,7 @@ >+@@ -1362,7 +1380,7 @@ > return NULL; > *length = savnameLen; > memcpy((char *) name, (char *) savname, *length * sizeof(oid)); >@@ -211,7 +220,7 @@ > *write_method = 0; > *var_len = sizeof(long); /* default to 'long' results */ > >-@@ -1367,14 +1385,14 @@ >+@@ -1375,14 +1393,14 @@ > switch (vp->magic) { > case IPV6UDPLOCALADDRESS: > *var_len = sizeof(struct in6_addr); >@@ -230,7 +239,7 @@ > else > long_return = 0; > /*XXX*/ return (u_char *) & long_return; >-@@ -1392,24 +1410,24 @@ >+@@ -1400,24 +1418,24 @@ > size_t * length, > int exact, size_t * var_len, WriteMethod ** write_method) > { >@@ -262,7 +271,7 @@ > #endif > > if (!initialized) { >-@@ -1431,11 +1449,11 @@ >+@@ -1439,11 +1457,11 @@ > DEBUGMSGOID(("mibII/ipv6", name, *length)); > DEBUGMSG(("mibII/ipv6", " %d\n", exact)); > >@@ -276,7 +285,7 @@ > if (!auto_nlist("tcb6", (char *) &tcb6, sizeof(tcb6))) > return NULL; > p = (caddr_t) tcb6.in6p_next; >-@@ -1464,9 +1482,10 @@ >+@@ -1472,9 +1490,10 @@ > (int) vp->namelen * sizeof(oid)); > DEBUGMSGTL(("mibII/ipv6", "start: p=%x\n", p)); > while ( >@@ -289,14 +298,12 @@ > p && (u_long) p != auto_nlist_value("tcb6") > #else > xig->xig_len > sizeof(struct xinpgen) >-@@ -1474,41 +1493,41 @@ >- ) { >+@@ -1483,38 +1502,38 @@ > DEBUGMSGTL(("mibII/ipv6", "looping: p=%x\n", p)); > >--#if !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(darwin) >-- if (klookup((u_long) p, (char *) &in6pcb, sizeof(in6pcb)) < 0) { >-+#if OS_NOT_FREEBSD_NOR_DARWIN >-+ if (klookup((u_long) p, (char *) &tstpcb, sizeof(tstpcb)) < 0) { >+ #if !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(darwin) >+- if (!NETSNMP_KLOOKUP(p, (char *) &in6pcb, sizeof(in6pcb))) { >++ if (!NETSNMP_KLOOKUP(p, (char *) &tstpcb, sizeof(tstpcb))) { > DEBUGMSGTL(("mibII/ipv6", "klookup fail for tcb6 at %x\n", > p)); > found = 0; >@@ -317,10 +324,8 @@ > + if (0 == (tstpcb.inp_vflag & INP_IPV6PROTO)) > goto skip; > #endif >- if (klookup >-- ((u_long) in6pcb.in6p_ppcb, (char *) &tcp6cb, sizeof(tcp6cb)) >-+ ((u_long) tstpcb.in6p_ppcb, (char *) &tcp6cb, sizeof(tcp6cb)) >- < 0) { >+- if (!NETSNMP_KLOOKUP(in6pcb.in6p_ppcb, (char *) &tcp6cb, sizeof(tcp6cb))) { >++ if (!NETSNMP_KLOOKUP(tstpcb.in6p_ppcb, (char *) &tcp6cb, sizeof(tcp6cb))) { > DEBUGMSGTL(("mibII/ipv6", "klookup fail for tcb6.tcp6cb at %x\n", > - in6pcb.in6p_ppcb)); > + tstpcb.in6p_ppcb)); >@@ -346,7 +351,7 @@ > else > newname[j++] = 0; > /*XXX*/ newname[j++] = tcp6statemap[tcp6cb.t_state]; >-@@ -1519,13 +1538,13 @@ >+@@ -1525,13 +1544,13 @@ > DEBUGMSG(("mibII/ipv6", " %d\n", exact)); > > #if 1 /* this is very odd but sometimes happen, and cause infinite loop */ >@@ -362,7 +367,7 @@ > savnameLen = j; > memcpy(savname, newname, j * sizeof(oid)); > found++; >-@@ -1536,7 +1555,7 @@ >+@@ -1542,7 +1561,7 @@ > */ > if ((savnameLen == 0) || > (snmp_oid_compare(savname, savnameLen, newname, j) > 0)) { >@@ -371,7 +376,7 @@ > savnameLen = j; > memcpy(savname, newname, j * sizeof(oid)); > found++; >-@@ -1544,15 +1563,15 @@ >+@@ -1550,15 +1569,15 @@ > } > > skip: >@@ -392,7 +397,7 @@ > free(sysctl_buf); > #endif > DEBUGMSGTL(("mibII/ipv6", "found=%d\n", found)); >-@@ -1573,20 +1592,20 @@ >+@@ -1579,20 +1598,20 @@ > switch (vp->magic) { > case IPV6TCPLOCALADDR: > *var_len = sizeof(struct in6_addr); >@@ -419,7 +424,7 @@ > else > long_return = 0; > /*XXX*/ return (u_char *) & long_return; >-@@ -1633,22 +1652,23 @@ >+@@ -1639,22 +1658,23 @@ > size_t * length, > int exact, size_t * var_len, WriteMethod ** write_method) > { >@@ -450,7 +455,7 @@ > #endif > > DEBUGMSGTL(("mibII/ipv6", "var_tcp6: ")); >-@@ -1688,9 +1708,9 @@ >+@@ -1694,9 +1714,9 @@ > (int) vp->namelen * sizeof(oid)); > DEBUGMSGTL(("mibII/ipv6", "start: p=%x\n", p)); > while ( >@@ -462,14 +467,12 @@ > p && (u_long) p != auto_nlist_value("tcb6") > #else > xig->xig_len > sizeof(struct xinpgen) >-@@ -1698,41 +1718,41 @@ >- ) { >+@@ -1705,38 +1725,38 @@ > DEBUGMSGTL(("mibII/ipv6", "looping: p=%x\n", p)); > >--#if !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(darwin) >-- if (klookup((u_long) p, (char *) &in6pcb, sizeof(in6pcb)) < 0) { >-+#if OS_NOT_FREEBSD_NOR_DARWIN >-+ if (klookup((u_long) p, (char *) &tstpcb, sizeof(in6pcb)) < 0) { >+ #if !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(darwin) >+- if (!NETSNMP_KLOOKUP(p, (char *) &in6pcb, sizeof(in6pcb))) { >++ if (!NETSNMP_KLOOKUP(p, (char *) &tstpcb, sizeof(in6pcb))) { > DEBUGMSGTL(("mibII/ipv6", "klookup fail for tcb6 at %x\n", > p)); > found = 0; >@@ -490,13 +493,10 @@ > + if (0 == (tstpcb.inp_vflag & INP_IPV6PROTO)) > goto skip; > #endif >- if (klookup >-- ((u_long) in6pcb.in6p_ppcb, (char *) &tcpcb, sizeof(tcpcb)) >-+ ((u_long) tstpcb.in6p_ppcb, (char *) &tcpcb, sizeof(tcpcb)) >- < 0) { >-- DEBUGMSGTL(("mibII/ipv6", "klookup fail for tcb6.tcpcb at %x\n", >+- if (!NETSNMP_KLOOKUP(in6pcb.in6p_ppcb, (char *) &tcpcb, sizeof(tcpcb))) { >++ if (!NETSNMP_KLOOKUP(tstpcb.in6p_ppcb, (char *) &tcpcb, sizeof(tcpcb))) { >+ DEBUGMSGTL(("mibII/ipv6", "klookup fail for tcb6.tcpcb at %x\n", > - in6pcb.in6p_ppcb)); >-+ DEBUGMSGTL(("mibII/ipv6", "klookup fail for tcb6.tcp6cb at %x\n", > + tstpcb.in6p_ppcb)); > found = 0; > break; >@@ -520,7 +520,7 @@ > else > newname[j++] = 0; > /*XXX*/ newname[j++] = mapTcpState((int)tcpcb.t_state); >-@@ -1743,12 +1763,12 @@ >+@@ -1747,12 +1767,12 @@ > DEBUGMSG(("mibII/ipv6", " %d\n", exact)); > > #if 1 /* this is very odd but sometimes happen, and cause infinite loop */ >@@ -535,7 +535,7 @@ > savnameLen = j; > memcpy(savname, newname, j * sizeof(oid)); > found++; >-@@ -1759,7 +1779,7 @@ >+@@ -1763,7 +1783,7 @@ > */ > if ((savnameLen == 0) || > (snmp_oid_compare(savname, savnameLen, newname, j) > 0)) { >@@ -544,7 +544,7 @@ > savnameLen = j; > memcpy(savname, newname, j * sizeof(oid)); > found++; >-@@ -1767,15 +1787,15 @@ >+@@ -1771,15 +1791,15 @@ > } > > skip: >@@ -565,7 +565,7 @@ > free(sysctl_buf); > #endif > DEBUGMSGTL(("mibII/ipv6", "found=%d\n", found)); >-@@ -1783,7 +1803,7 @@ >+@@ -1787,7 +1807,7 @@ > return NULL; > *length = savnameLen; > memcpy((char *) name, (char *) savname, *length * sizeof(oid)); >@@ -574,7 +574,7 @@ > *write_method = 0; > *var_len = sizeof(long); /* default to 'long' results */ > >-@@ -1796,20 +1816,20 @@ >+@@ -1800,20 +1820,20 @@ > switch (vp->magic) { > case IPV6TCPLOCALADDR: > *var_len = sizeof(struct in6_addr); >diff -ruN /usr/ports/net-mgmt/net-snmp.BAK/files/patch-net-snmp-config.h.in /usr/ports/net-mgmt/net-snmp/files/patch-net-snmp-config.h.in >--- /usr/ports/net-mgmt/net-snmp.BAK/files/patch-net-snmp-config.h.in Sun Mar 25 14:35:45 2007 >+++ /usr/ports/net-mgmt/net-snmp/files/patch-net-snmp-config.h.in Wed Mar 28 14:34:19 2007 >@@ -2,10 +2,10 @@ > +++ include/net-snmp/net-snmp-config.h.in Sun Mar 25 21:01:33 2007 > @@ -1334,7 +1334,7 @@ > >- #define EXCACHETIME 30 >- #define CACHEFILE ".snmp-exec-cache" >--#define MAXCACHESIZE (200*80) /* roughly 200 lines max */ >-+#define MAXCACHESIZE (1500*80) /* roughly 1500 lines max */ >+ #define NETSNMP_EXCACHETIME 30 >+ #define NETSNMP_CACHEFILE ".snmp-exec-cache" >+-#define NETSNMP_MAXCACHESIZE (200*80) /* roughly 200 lines max */ >++#define NETSNMP_MAXCACHESIZE (1500*80) /* roughly 1500 lines max */ > > /* misc defaults */ > >diff -ruN /usr/ports/net-mgmt/net-snmp.BAK/files/patch-snmpUCDIPv6Domain.c /usr/ports/net-mgmt/net-snmp/files/patch-snmpUCDIPv6Domain.c >--- /usr/ports/net-mgmt/net-snmp.BAK/files/patch-snmpUCDIPv6Domain.c Mon Nov 29 05:08:29 2004 >+++ /usr/ports/net-mgmt/net-snmp/files/patch-snmpUCDIPv6Domain.c Wed Mar 28 14:31:48 2007 >@@ -1,6 +1,6 @@ >---- snmplib/snmpUDPIPv6Domain.c.orig Sat Oct 16 03:52:29 2004 >-+++ snmplib/snmpUDPIPv6Domain.c Mon Oct 25 09:28:10 2004 >-@@ -104,13 +104,21 @@ >+-- snmplib/snmpUDPIPv6Domain.c.orig Sat Oct 16 03:52:29 2004 >++++ snmplib/snmpUDPIPv6Domain.c Mon Oct 25 09:28:10 2004 >+@@ -109,13 +109,21 @@ > if (to == NULL) { > return strdup("UDP/IPv6: unknown"); > } else { >@@ -8,7 +8,7 @@ > - char tmp[INET6_ADDRSTRLEN + 8]; > + char tmp[NI_MAXHOST]; > >-- sprintf(tmp, "UDP/IPv6: [%s]:%hd", >+- sprintf(tmp, "UDP/IPv6: [%s]:%hu", > - inet_ntop(AF_INET6, (void *) &(to->sin6_addr), addr, > - INET6_ADDRSTRLEN), ntohs(to->sin6_port)); > - return strdup(tmp); >@@ -21,7 +21,7 @@ > +#define NI_WITHSCOPEID 0 > +#endif > + if (getnameinfo(to, sizeof(struct sockaddr_in6), tmp, sizeof(tmp), >-+ NULL, 0, NI_NUMERICHOST | NI_WITHSCOPEID)) { >++ NULL, 0, NI_NUMERICHOST | NI_WITHSCOPEID)) { > + return strdup("UDP/IPv6: unknown"); > + } > + return strdup(tmp); >diff -ruN /usr/ports/net-mgmt/net-snmp.BAK/files/patch-snmp_agent.c /usr/ports/net-mgmt/net-snmp/files/patch-snmp_agent.c >--- /usr/ports/net-mgmt/net-snmp.BAK/files/patch-snmp_agent.c Wed Nov 30 06:22:40 2005 >+++ /usr/ports/net-mgmt/net-snmp/files/patch-snmp_agent.c Wed Mar 28 14:31:48 2007 >@@ -1,10 +1,10 @@ > --- agent/snmp_agent.c.orig Thu Mar 17 17:17:43 2005 > +++ agent/snmp_agent.c Wed Nov 30 12:23:41 2005 >-@@ -839,6 +839,7 @@ >- ; >- else if (hosts_ctl("snmpd", STRING_UNKNOWN, STRING_UNKNOWN, STRING_UNKNOWN)){ >- snmp_log(allow_severity, "Connection from <UNKNOWN> (%s)\n", addr_string); >-+ SNMP_FREE(addr_string); >+@@ -860,6 +860,7 @@ >+ else if (hosts_ctl(name, STRING_UNKNOWN, STRING_UNKNOWN, STRING_UNKNOWN)){ >+ if (!not_log_connection) { >+ snmp_log(allow_severity, "Connection from <UNKNOWN> (%s)\n", addr_string); >++ SNMP_FREE(addr_string); >+ }; > addr_string = strdup("<UNKNOWN>"); > } else { >- snmp_log(deny_severity, "Connection from <UNKNOWN> (%s) REFUSED\n", addr_string); >diff -ruN /usr/ports/net-mgmt/net-snmp.BAK/files/patch-transform_oids.h /usr/ports/net-mgmt/net-snmp/files/patch-transform_oids.h >--- /usr/ports/net-mgmt/net-snmp.BAK/files/patch-transform_oids.h Wed Dec 8 12:11:27 2004 >+++ /usr/ports/net-mgmt/net-snmp/files/patch-transform_oids.h Wed Mar 28 14:31:48 2007 >@@ -2,10 +2,10 @@ > +++ include/net-snmp/library/transform_oids.h Wed Dec 8 19:34:34 2004 > @@ -23,6 +23,8 @@ > /* XXX: OIDs not defined yet */ >- extern oid usmAESPrivProtocol[10]; /* == { 1,3,6,1,6,3,10,1,2,4 }; */ >- extern oid *usmAES128PrivProtocol; /* backwards compat */ >-+extern oid *usmAES192PrivProtocol; /* backwards compat */ >-+extern oid *usmAES256PrivProtocol; /* backwards compat */ >+ NETSNMP_IMPORT oid usmAESPrivProtocol[10]; /* == { 1,3,6,1,6,3,10,1,2,4 }; */ >+ NETSNMP_IMPORT oid *usmAES128PrivProtocol; /* backwards compat */ >++NETSNMP_IMPORT oid *usmAES192PrivProtocol; /* backwards compat */ >++NETSNMP_IMPORT oid *usmAES256PrivProtocol; /* backwards compat */ > > #define USM_AUTH_PROTO_NOAUTH_LEN 10 > #define USM_AUTH_PROTO_MD5_LEN 10 >diff -ruN /usr/ports/net-mgmt/net-snmp.BAK/files/patch-ucd_snmp.h /usr/ports/net-mgmt/net-snmp/files/patch-ucd_snmp.h >--- /usr/ports/net-mgmt/net-snmp.BAK/files/patch-ucd_snmp.h Wed Feb 28 02:17:16 2007 >+++ /usr/ports/net-mgmt/net-snmp/files/patch-ucd_snmp.h Wed Mar 28 14:31:48 2007 >@@ -1,11 +0,0 @@ >---- agent/mibgroup/ucd_snmp.h.orig Tue Feb 27 20:44:04 2007 >-+++ agent/mibgroup/ucd_snmp.h Tue Feb 27 20:44:20 2007 >-@@ -41,6 +41,8 @@ >- config_arch_require(freebsd5, ucd-snmp/memory_freebsd2) >- config_arch_require(freebsd6, ucd-snmp/vmstat_freebsd2) >- config_arch_require(freebsd6, ucd-snmp/memory_freebsd2) >-+config_arch_require(freebsd7, ucd-snmp/vmstat_freebsd2) >-+config_arch_require(freebsd7, ucd-snmp/memory_freebsd2) >- config_arch_require(netbsd1, ucd-snmp/vmstat_netbsd1) >- config_arch_require(netbsd1, ucd-snmp/memory_netbsd1) >- config_arch_require(netbsd, ucd-snmp/vmstat_netbsd1) >diff -ruN /usr/ports/net-mgmt/net-snmp.BAK/pkg-plist /usr/ports/net-mgmt/net-snmp/pkg-plist >--- /usr/ports/net-mgmt/net-snmp.BAK/pkg-plist Wed Feb 28 02:17:15 2007 >+++ /usr/ports/net-mgmt/net-snmp/pkg-plist Wed Mar 28 14:31:48 2007 >@@ -100,6 +100,7 @@ > include/net-snmp/library/snmp.h > include/net-snmp/library/snmpCallbackDomain.h > include/net-snmp/library/snmpTCPDomain.h >+include/net-snmp/library/snmp_service.h > %%WITH_IPV6%%include/net-snmp/library/snmpTCPIPv6Domain.h > include/net-snmp/library/snmpUDPDomain.h > %%WITH_IPV6%%include/net-snmp/library/snmpUDPIPv6Domain.h >@@ -162,10 +163,10 @@ > include/net-snmp/system/osf5.h > include/net-snmp/system/solaris.h > include/net-snmp/system/solaris2.6.h >-include/net-snmp/system/solaris2.7.h >-include/net-snmp/system/solaris2.8.h >-include/net-snmp/system/solaris2.9.h >-include/net-snmp/system/solaris2.10.h >+include/net-snmp/system/darwin9.h >+include/net-snmp/system/solaris2.3.h >+include/net-snmp/system/solaris2.4.h >+include/net-snmp/system/solaris2.5.h > include/net-snmp/system/sunos.h > include/net-snmp/system/svr5.h > include/net-snmp/system/sysv.h >@@ -206,6 +207,7 @@ > %%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/NetSNMP/agent.pm > %%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/NetSNMP/agent/default_store.pm > %%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/NetSNMP/agent/netsnmp_request_infoPtr.pm >+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/NetSNMP/agent/Support.pm > %%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/NetSNMP/default_store.pm > %%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/SNMP.pm > %%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/Bundle/NetSNMP/.packlist
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 110969
: 77036