Wed Feb 28 01:52:03 2018 UTC ()
net-snmp: PR kern/52945: snmpd does not work under current 8.0_BETA

it seems that configure cannot detect IP_PKTINFO correctly
because of using SOL_IP. SOL_IP is not defined on *BSD.
And on netbsd, struct ip_pktinfo has no ipi_spec_dst.

From Ryo Shimizu.

PKGREVISION++


(maya)
diff -r1.122 -r1.123 pkgsrc/net/net-snmp/Makefile
diff -r1.92 -r1.93 pkgsrc/net/net-snmp/distinfo
diff -r0 -r1.1 pkgsrc/net/net-snmp/patches/patch-snmplib_transports_snmpUDPBaseDomain.c

cvs diff -r1.122 -r1.123 pkgsrc/net/net-snmp/Makefile (expand / switch to unified diff)

--- pkgsrc/net/net-snmp/Makefile 2018/02/25 18:35:29 1.122
+++ pkgsrc/net/net-snmp/Makefile 2018/02/28 01:52:02 1.123
@@ -1,18 +1,18 @@ @@ -1,18 +1,18 @@
1# $NetBSD: Makefile,v 1.122 2018/02/25 18:35:29 wiz Exp $ 1# $NetBSD: Makefile,v 1.123 2018/02/28 01:52:02 maya Exp $
2 2
3.include "Makefile.common" 3.include "Makefile.common"
4CATEGORIES= net 4CATEGORIES= net
5PKGREVISION= 9 5PKGREVISION= 10
6 6
7MAINTAINER= adam@NetBSD.org 7MAINTAINER= adam@NetBSD.org
8COMMENT= Extensible SNMP implementation 8COMMENT= Extensible SNMP implementation
9 9
10CONFLICTS= ucd-snmp-[0-9]* 10CONFLICTS= ucd-snmp-[0-9]*
11CONFLICTS+= nocol-[0-9]* # bin/snmpget bin/snmpwalk 11CONFLICTS+= nocol-[0-9]* # bin/snmpget bin/snmpwalk
12 12
13USE_LIBTOOL= yes 13USE_LIBTOOL= yes
14GNU_CONFIGURE= yes 14GNU_CONFIGURE= yes
15 15
16MAKE_ENV+= OPSYS=${OPSYS} 16MAKE_ENV+= OPSYS=${OPSYS}
17MAKE_JOBS_SAFE= no 17MAKE_JOBS_SAFE= no
18 18
@@ -20,26 +20,27 @@ MAKE_JOBS_SAFE= no @@ -20,26 +20,27 @@ MAKE_JOBS_SAFE= no
20 20
21.include "options.mk" 21.include "options.mk"
22 22
23# Don't compress manual pages as they include each other. 23# Don't compress manual pages as they include each other.
24.undef MANZ 24.undef MANZ
25 25
26MAKE_ENV.DragonFly+= MIB_SYSTEM_LIBS=-lkinfo 26MAKE_ENV.DragonFly+= MIB_SYSTEM_LIBS=-lkinfo
27 27
28.if ${OPSYS} == "NetBSD" 28.if ${OPSYS} == "NetBSD"
29OSVERSION_SPECIFIC= YES 29OSVERSION_SPECIFIC= YES
30. if empty(CFLAGS:U:M*-Dnetbsd1*) 30. if empty(CFLAGS:U:M*-Dnetbsd1*)
31CFLAGS+= -Dnetbsd1 31CFLAGS+= -Dnetbsd1
32. endif 32. endif
 33CFLAGS+= -DSOL_IP=IPPROTO_IP
33.endif 34.endif
34 35
35.if (${OPSYS} == "NetBSD") || !exists(/usr/bin/lpstat) 36.if (${OPSYS} == "NetBSD") || !exists(/usr/bin/lpstat)
36CONFIGURE_ENV+= ac_cv_path_LPSTAT_PATH=no 37CONFIGURE_ENV+= ac_cv_path_LPSTAT_PATH=no
37.endif 38.endif
38 39
39NET_SNMP_SYS_CONTACT?= default_user@contact.domain 40NET_SNMP_SYS_CONTACT?= default_user@contact.domain
40NET_SNMP_SYS_LOCATION?= defaultlocation 41NET_SNMP_SYS_LOCATION?= defaultlocation
41NET_SNMP_PERSISTENTDIR?= ${VARBASE}/net-snmp 42NET_SNMP_PERSISTENTDIR?= ${VARBASE}/net-snmp
42NET_SNMP_MIBDIRS?= \$$HOME/.snmp/mibs:${PREFIX}/share/snmp/mibs:${PREFIX}/lib/tcl/tnm2.1.10/mibs:/usr/local/share/snmp/mibs 43NET_SNMP_MIBDIRS?= \$$HOME/.snmp/mibs:${PREFIX}/share/snmp/mibs:${PREFIX}/lib/tcl/tnm2.1.10/mibs:/usr/local/share/snmp/mibs
43 44
44BUILD_DEFS+= NET_SNMP_SYS_CONTACT 45BUILD_DEFS+= NET_SNMP_SYS_CONTACT
45BUILD_DEFS+= NET_SNMP_SYS_LOCATION 46BUILD_DEFS+= NET_SNMP_SYS_LOCATION

cvs diff -r1.92 -r1.93 pkgsrc/net/net-snmp/distinfo (expand / switch to unified diff)

--- pkgsrc/net/net-snmp/distinfo 2018/02/25 18:35:29 1.92
+++ pkgsrc/net/net-snmp/distinfo 2018/02/28 01:52:02 1.93
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1$NetBSD: distinfo,v 1.92 2018/02/25 18:35:29 wiz Exp $ 1$NetBSD: distinfo,v 1.93 2018/02/28 01:52:02 maya Exp $
2 2
3SHA1 (net-snmp-5.7.3.tar.gz) = 97dc25077257680815de44e34128d365c76bd839 3SHA1 (net-snmp-5.7.3.tar.gz) = 97dc25077257680815de44e34128d365c76bd839
4RMD160 (net-snmp-5.7.3.tar.gz) = c5cf54d5723ee417e07f1f9fa3936aef505104a2 4RMD160 (net-snmp-5.7.3.tar.gz) = c5cf54d5723ee417e07f1f9fa3936aef505104a2
5SHA512 (net-snmp-5.7.3.tar.gz) = 0758bba5844cfd6c80959ac16b83906a2f830ba49fd0ab1bf9e191dc6a79d312a2e4760bd53b3e1a1c82759481f0064d088d5a3cf475d84b25679a6bd0f049bb 5SHA512 (net-snmp-5.7.3.tar.gz) = 0758bba5844cfd6c80959ac16b83906a2f830ba49fd0ab1bf9e191dc6a79d312a2e4760bd53b3e1a1c82759481f0064d088d5a3cf475d84b25679a6bd0f049bb
6Size (net-snmp-5.7.3.tar.gz) = 6382428 bytes 6Size (net-snmp-5.7.3.tar.gz) = 6382428 bytes
7SHA1 (patch-ac) = fa5a32e497a7651f4804082d921bb2e91b17d098 7SHA1 (patch-ac) = fa5a32e497a7651f4804082d921bb2e91b17d098
8SHA1 (patch-af) = 4fb96b79f9126dedb8a132d44894ea23c9e8c101 8SHA1 (patch-af) = 4fb96b79f9126dedb8a132d44894ea23c9e8c101
9SHA1 (patch-ag) = d9595eceeb5ee986ab4365f62e3c3ab339e605aa 9SHA1 (patch-ag) = d9595eceeb5ee986ab4365f62e3c3ab339e605aa
10SHA1 (patch-agent_mibgroup_agentx_master.c) = c2b3f145280e3fecc26a431ec914cf89d87a17f4 10SHA1 (patch-agent_mibgroup_agentx_master.c) = c2b3f145280e3fecc26a431ec914cf89d87a17f4
11SHA1 (patch-agent_mibgroup_agentx_master_admin.c) = 3c233c1e3113fbc9c1de34cb4cbacca9ef4a6fe2 11SHA1 (patch-agent_mibgroup_agentx_master_admin.c) = 3c233c1e3113fbc9c1de34cb4cbacca9ef4a6fe2
12SHA1 (patch-agent_mibgroup_at.c) = 50842f54d98b3cf7bf7028ddbb582b84b7ae682f 12SHA1 (patch-agent_mibgroup_at.c) = 50842f54d98b3cf7bf7028ddbb582b84b7ae682f
13SHA1 (patch-agent_mibgroup_hardware_cpu_cpu__sysctl.c) = d36d2490448c2dfda0383c67deb36fdb31ff18a3 13SHA1 (patch-agent_mibgroup_hardware_cpu_cpu__sysctl.c) = d36d2490448c2dfda0383c67deb36fdb31ff18a3
14SHA1 (patch-agent_mibgroup_hardware_fsys_fsys_getfsstats.c) = cee9722d9a3f956726a8760b900ed3a375afde3f 14SHA1 (patch-agent_mibgroup_hardware_fsys_fsys_getfsstats.c) = cee9722d9a3f956726a8760b900ed3a375afde3f
@@ -48,13 +48,14 @@ SHA1 (patch-perl_OID_Makefile.PL) = 8cbc @@ -48,13 +48,14 @@ SHA1 (patch-perl_OID_Makefile.PL) = 8cbc
48SHA1 (patch-perl_SNMP_Makefile.PL) = 252fe35a8d93f38ae2454e962546a7b77967d9c2 48SHA1 (patch-perl_SNMP_Makefile.PL) = 252fe35a8d93f38ae2454e962546a7b77967d9c2
49SHA1 (patch-perl_SNMP_SNMP.xs) = 99860cdfea3170ed3777f61cb8b5abe9d49ce44c 49SHA1 (patch-perl_SNMP_SNMP.xs) = 99860cdfea3170ed3777f61cb8b5abe9d49ce44c
50SHA1 (patch-perl_TrapReceiver_Makefile.PL) = b0e6350d3a4142e6b998ca11131279896abd4eb1 50SHA1 (patch-perl_TrapReceiver_Makefile.PL) = b0e6350d3a4142e6b998ca11131279896abd4eb1
51SHA1 (patch-perl_TrapReceiver_TrapReceiver.xs) = 4a49bc4a767a1ff1ded925876470168baa86359b 51SHA1 (patch-perl_TrapReceiver_TrapReceiver.xs) = 4a49bc4a767a1ff1ded925876470168baa86359b
52SHA1 (patch-perl_agent_Makefile.PL) = 267dbc5c663ca3823e37e8afcc42f19986bc1a9f 52SHA1 (patch-perl_agent_Makefile.PL) = 267dbc5c663ca3823e37e8afcc42f19986bc1a9f
53SHA1 (patch-perl_agent_Support_Makefile.PL) = 7ee55ea96e2eeb275f7eed9d7bbc446c7195af4c 53SHA1 (patch-perl_agent_Support_Makefile.PL) = 7ee55ea96e2eeb275f7eed9d7bbc446c7195af4c
54SHA1 (patch-perl_agent_agent.xs) = de018255afd1790f7cab70591505dabd6cd15047 54SHA1 (patch-perl_agent_agent.xs) = de018255afd1790f7cab70591505dabd6cd15047
55SHA1 (patch-perl_agent_default__store_Makefile.PL) = 0599d99ce5226eaeaab3f1af76c68bfe7e57e1bd 55SHA1 (patch-perl_agent_default__store_Makefile.PL) = 0599d99ce5226eaeaab3f1af76c68bfe7e57e1bd
56SHA1 (patch-perl_default__store_Makefile.PL) = ed5ad7385680632b2153fa572635c5aea83c9114 56SHA1 (patch-perl_default__store_Makefile.PL) = ed5ad7385680632b2153fa572635c5aea83c9114
57SHA1 (patch-perl_manager_Makefile.PL) = bb34b119a2b3887a1af1f9b88e6d4bad6baf60bb 57SHA1 (patch-perl_manager_Makefile.PL) = bb34b119a2b3887a1af1f9b88e6d4bad6baf60bb
58SHA1 (patch-snmplib_keytools.c) = c209a42a2767c8639d8535e02542de119264ebfc 58SHA1 (patch-snmplib_keytools.c) = c209a42a2767c8639d8535e02542de119264ebfc
59SHA1 (patch-snmplib_scapi.c) = 9a49b1a00df8f9ab6bd69057f806377e9164cf1f 59SHA1 (patch-snmplib_scapi.c) = 9a49b1a00df8f9ab6bd69057f806377e9164cf1f
60SHA1 (patch-snmplib_snmp__api.c) = b4f498aa93b61f809e3696df1fc6bf32bd942233 60SHA1 (patch-snmplib_snmp__api.c) = b4f498aa93b61f809e3696df1fc6bf32bd942233
 61SHA1 (patch-snmplib_transports_snmpUDPBaseDomain.c) = a7eec599e1cfb2fbd22d0dd53412727b5ff1825d

File Added: pkgsrc/net/net-snmp/patches/Attic/patch-snmplib_transports_snmpUDPBaseDomain.c
$NetBSD: patch-snmplib_transports_snmpUDPBaseDomain.c,v 1.1 2018/02/28 01:52:02 maya Exp $

it seems that configure cannot detect IP_PKTINFO correctly
because of using SOL_IP. SOL_IP is not defined on *BSD.
And on netbsd, struct ip_pktinfo has no ipi_spec_dst.
(PR pkg/52945)

--- snmplib/transports/snmpUDPBaseDomain.c.orig	2014-12-08 20:23:22.000000000 +0000
+++ snmplib/transports/snmpUDPBaseDomain.c
@@ -277,7 +277,7 @@ int netsnmp_udpbase_sendto(int fd, struc
              * come from.
              */
             ipi.ipi_ifindex = 0;
-#if defined(cygwin)
+#if defined(cygwin) || defined(__NetBSD__)
             ipi.ipi_addr.s_addr = srcip->s_addr;
 #else
             ipi.ipi_spec_dst.s_addr = srcip->s_addr;
@@ -302,7 +302,7 @@ int netsnmp_udpbase_sendto(int fd, struc
 
             memset(&ipi, 0, sizeof(ipi));
             ipi.ipi_ifindex = if_index;
-#if defined(cygwin)
+#if defined(cygwin) || defined(__NetBSD__)
             ipi.ipi_addr.s_addr = INADDR_ANY;
 #else
             ipi.ipi_spec_dst.s_addr = INADDR_ANY;