diff -ruN net-snmp-5.8-orig/Makefile.in net-snmp-5.8/Makefile.in --- net-snmp-5.8-orig/Makefile.in 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/Makefile.in 2019-11-25 04:50:38.000000000 -0600 @@ -19,6 +19,7 @@ INCLUDESUBDIRHEADERS= aix.h bsd.h bsdi3.h bsdi4.h bsdi.h cygwin.h \ darwin.h darwin7.h darwin8.h darwin9.h darwin10.h darwin11.h darwin12.h \ darwin13.h darwin14.h darwin15.h darwin16.h darwin17.h \ + darwin18.h darwin19.h \ dragonfly.h dynix.h \ freebsd2.h freebsd3.h freebsd4.h freebsd5.h freebsd6.h \ freebsd7.h freebsd8.h freebsd9.h freebsd10.h freebsd11.h \ diff -ruN net-snmp-5.8-orig/agent/mibgroup/host/hr_swrun.c net-snmp-5.8/agent/mibgroup/host/hr_swrun.c --- net-snmp-5.8-orig/agent/mibgroup/host/hr_swrun.c 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/agent/mibgroup/host/hr_swrun.c 2019-11-25 04:50:38.000000000 -0600 @@ -39,9 +39,6 @@ #if HAVE_SYS_PROC_H #include #endif -#if HAVE_KVM_H -#include -#endif #if HAVE_SYS_SYSCTL_H #include #endif diff -ruN net-snmp-5.8-orig/agent/mibgroup/ip-mib/ipv4InterfaceTable/ipv4InterfaceTable_data_access.c net-snmp-5.8/agent/mibgroup/ip-mib/ipv4InterfaceTable/ipv4InterfaceTable_data_access.c --- net-snmp-5.8-orig/agent/mibgroup/ip-mib/ipv4InterfaceTable/ipv4InterfaceTable_data_access.c 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/agent/mibgroup/ip-mib/ipv4InterfaceTable/ipv4InterfaceTable_data_access.c 2019-11-25 04:50:38.000000000 -0600 @@ -127,7 +127,7 @@ /* * do we have a corresponding row? */ - ip4if_rrc = CONTAINER_FIND(c, ift_rrc); + ip4if_rrc = (ifTable_rowreq_ctx*)CONTAINER_FIND(c, ift_rrc); if (NULL == ip4if_rrc) { /* * no corresponding row. should we have one? diff -ruN net-snmp-5.8-orig/agent/mibgroup/ip-mib/ipv4InterfaceTable/ipv4InterfaceTable_interface.c net-snmp-5.8/agent/mibgroup/ip-mib/ipv4InterfaceTable/ipv4InterfaceTable_interface.c --- net-snmp-5.8-orig/agent/mibgroup/ip-mib/ipv4InterfaceTable/ipv4InterfaceTable_interface.c 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/agent/mibgroup/ip-mib/ipv4InterfaceTable/ipv4InterfaceTable_interface.c 2019-11-25 04:50:38.000000000 -0600 @@ -505,7 +505,7 @@ { int rc = SNMP_ERR_NOERROR; ipv4InterfaceTable_rowreq_ctx *rowreq_ctx = - netsnmp_container_table_row_extract(requests); + (ipv4InterfaceTable_rowreq_ctx*)netsnmp_container_table_row_extract(requests); DEBUGMSGTL(("internal:ipv4InterfaceTable:_mfd_ipv4InterfaceTable_object_lookup", "called\n")); @@ -596,7 +596,7 @@ netsnmp_request_info *requests) { ipv4InterfaceTable_rowreq_ctx *rowreq_ctx = - netsnmp_container_table_row_extract(requests); + (ipv4InterfaceTable_rowreq_ctx*)netsnmp_container_table_row_extract(requests); netsnmp_table_request_info *tri; u_char *old_string; void (*dataFreeHook) (void *); @@ -762,7 +762,7 @@ netsnmp_request_info *requests) { ipv4InterfaceTable_rowreq_ctx *rowreq_ctx = - netsnmp_container_table_row_extract(requests); + (ipv4InterfaceTable_rowreq_ctx*)netsnmp_container_table_row_extract(requests); netsnmp_table_request_info *tri; int rc; @@ -846,7 +846,7 @@ { int rc; ipv4InterfaceTable_rowreq_ctx *rowreq_ctx = - netsnmp_container_table_row_extract(requests); + (ipv4InterfaceTable_rowreq_ctx*)netsnmp_container_table_row_extract(requests); DEBUGMSGTL(("internal:ipv4InterfaceTable:_mfd_ipv4InterfaceTable_undo_setup", "called\n")); @@ -908,7 +908,7 @@ netsnmp_request_info *requests) { ipv4InterfaceTable_rowreq_ctx *rowreq_ctx = - netsnmp_container_table_row_extract(requests); + (ipv4InterfaceTable_rowreq_ctx*)netsnmp_container_table_row_extract(requests); int rc; DEBUGMSGTL(("internal:ipv4InterfaceTable:_mfd_ipv4InterfaceTable_undo_cleanup", "called\n")); @@ -988,7 +988,7 @@ netsnmp_request_info *requests) { ipv4InterfaceTable_rowreq_ctx *rowreq_ctx = - netsnmp_container_table_row_extract(requests); + (ipv4InterfaceTable_rowreq_ctx*)netsnmp_container_table_row_extract(requests); netsnmp_table_request_info *tri; int rc = SNMP_ERR_NOERROR; @@ -1036,7 +1036,7 @@ { int rc; ipv4InterfaceTable_rowreq_ctx *rowreq_ctx = - netsnmp_container_table_row_extract(requests); + (ipv4InterfaceTable_rowreq_ctx*)netsnmp_container_table_row_extract(requests); DEBUGMSGTL(("internal:ipv4InterfaceTable:_mfd_ipv4InterfaceTable_commit", "called\n")); @@ -1070,7 +1070,7 @@ { int rc; ipv4InterfaceTable_rowreq_ctx *rowreq_ctx = - netsnmp_container_table_row_extract(requests); + (ipv4InterfaceTable_rowreq_ctx*)netsnmp_container_table_row_extract(requests); DEBUGMSGTL(("internal:ipv4InterfaceTable:_mfd_ipv4InterfaceTable_undo_commit", "called\n")); @@ -1149,7 +1149,7 @@ { int rc; ipv4InterfaceTable_rowreq_ctx *rowreq_ctx = - netsnmp_container_table_row_extract(requests); + (ipv4InterfaceTable_rowreq_ctx*)netsnmp_container_table_row_extract(requests); netsnmp_table_request_info *tri; DEBUGMSGTL(("internal:ipv4InterfaceTable:_mfd_ipv4InterfaceTable_undo_values", "called\n")); @@ -1204,7 +1204,7 @@ netsnmp_request_info *requests) { ipv4InterfaceTable_rowreq_ctx *rowreq_ctx = - netsnmp_container_table_row_extract(requests); + (ipv4InterfaceTable_rowreq_ctx*)netsnmp_container_table_row_extract(requests); DEBUGMSGTL(("internal:ipv4InterfaceTable:_mfd_ipv4InterfaceTable_irreversible:commit", "called\n")); @@ -1321,7 +1321,7 @@ return NULL; rowreq_ctx = - CONTAINER_FIND(ipv4InterfaceTable_if_ctx.container, &oid_idx); + (ipv4InterfaceTable_rowreq_ctx*)CONTAINER_FIND(ipv4InterfaceTable_if_ctx.container, &oid_idx); return rowreq_ctx; } diff -ruN net-snmp-5.8-orig/agent/mibgroup/mibII/data_access/at_sysctl.c net-snmp-5.8/agent/mibgroup/mibII/data_access/at_sysctl.c --- net-snmp-5.8-orig/agent/mibgroup/mibII/data_access/at_sysctl.c 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/agent/mibgroup/mibII/data_access/at_sysctl.c 2019-11-25 04:50:38.000000000 -0600 @@ -67,7 +67,7 @@ if (sysctl(mib, 6, NULL, &needed, NULL, 0) < 0) snmp_log_perror("route-sysctl-estimate"); else { - if ((at = malloc(needed ? needed : 1)) == NULL) + if ((at = (char*)malloc(needed ? needed : 1)) == NULL) snmp_log_perror("malloc"); else { if (sysctl(mib, 6, at, &needed, NULL, 0) < 0) diff -ruN net-snmp-5.8-orig/agent/mibgroup/mibII/icmp.h net-snmp-5.8/agent/mibgroup/mibII/icmp.h --- net-snmp-5.8-orig/agent/mibgroup/mibII/icmp.h 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/agent/mibgroup/mibII/icmp.h 2019-11-25 04:50:38.000000000 -0600 @@ -29,6 +29,12 @@ config_arch_require(darwin11, mibII/kernel_sysctl) config_arch_require(darwin12, mibII/kernel_sysctl) config_arch_require(darwin13, mibII/kernel_sysctl) +config_arch_require(darwin14, mibII/kernel_sysctl) +config_arch_require(darwin15, mibII/kernel_sysctl) +config_arch_require(darwin16, mibII/kernel_sysctl) +config_arch_require(darwin17, mibII/kernel_sysctl) +config_arch_require(darwin18, mibII/kernel_sysctl) +config_arch_require(darwin19, mibII/kernel_sysctl) #include diff -ruN net-snmp-5.8-orig/agent/mibgroup/mibII/ipAddr.c net-snmp-5.8/agent/mibgroup/mibII/ipAddr.c --- net-snmp-5.8-orig/agent/mibgroup/mibII/ipAddr.c 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/agent/mibgroup/mibII/ipAddr.c 2019-11-25 04:50:38.000000000 -0600 @@ -778,7 +778,7 @@ if (sysctl(mib, 6, 0, &len, 0, 0) < 0) return; - ifbuf = malloc(len); + ifbuf = (char*)malloc(len); if (ifbuf == 0) return; if (sysctl(mib, 6, ifbuf, &len, 0, 0) < 0) { diff -ruN net-snmp-5.8-orig/agent/mibgroup/mibII/tcpTable.c net-snmp-5.8/agent/mibgroup/mibII/tcpTable.c --- net-snmp-5.8-orig/agent/mibgroup/mibII/tcpTable.c 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/agent/mibgroup/mibII/tcpTable.c 2019-11-25 04:50:38.000000000 -0600 @@ -961,7 +961,7 @@ */ len = 0; if (sysctl(sname, 4, 0, &len, 0, 0) < 0 || - (tcpcb_buf = malloc(len)) == NULL) + (tcpcb_buf = (char*)malloc(len)) == NULL) return -1; if (sysctl(sname, 4, tcpcb_buf, &len, 0, 0) < 0) { free(tcpcb_buf); diff -ruN net-snmp-5.8-orig/agent/mibgroup/mibII/udpTable.c net-snmp-5.8/agent/mibgroup/mibII/udpTable.c --- net-snmp-5.8-orig/agent/mibgroup/mibII/udpTable.c 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/agent/mibgroup/mibII/udpTable.c 2019-11-25 04:50:38.000000000 -0600 @@ -681,7 +681,7 @@ */ len = 0; if (sysctl(sname, 4, 0, &len, 0, 0) < 0 || - (udpcb_buf = malloc(len)) == NULL) + (udpcb_buf = (char*)malloc(len)) == NULL) return -1; if (sysctl(sname, 4, udpcb_buf, &len, 0, 0) < 0) { free(udpcb_buf); diff -ruN net-snmp-5.8-orig/agent/mibgroup/mibII/var_route.c net-snmp-5.8/agent/mibgroup/mibII/var_route.c --- net-snmp-5.8-orig/agent/mibgroup/mibII/var_route.c 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/agent/mibgroup/mibII/var_route.c 2019-11-25 04:50:38.000000000 -0600 @@ -1809,7 +1809,7 @@ if (len > rtbuflen) { char *newbuf; - newbuf = realloc(rtbuf, len); + newbuf = (char*)realloc(rtbuf, len); if (newbuf == 0) return -1; rtbuf = newbuf; diff -ruN net-snmp-5.8-orig/agent/mibgroup/ucd-snmp/dlmod.c net-snmp-5.8/agent/mibgroup/ucd-snmp/dlmod.c --- net-snmp-5.8-orig/agent/mibgroup/ucd-snmp/dlmod.c 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/agent/mibgroup/ucd-snmp/dlmod.c 2019-11-25 04:50:38.000000000 -0600 @@ -233,7 +233,7 @@ dl_function_ptr dl_init; snprintf(sym_init, sizeof(sym_init), "init_%s", dlm->name); - dl_init = dlmod_dlsym(dlm->handle, sym_init); + dl_init = (int (*)())dlmod_dlsym(dlm->handle, sym_init); if (dl_init == NULL) { dlmod_dlclose(dlm->handle); free(dlm->error); @@ -260,10 +260,10 @@ return; snprintf(sym_deinit, sizeof(sym_deinit), "deinit_%s", dlm->name); - dl_deinit = dlmod_dlsym(dlm->handle, sym_deinit); + dl_deinit = (int (*)())dlmod_dlsym(dlm->handle, sym_deinit); if (!dl_deinit) { snprintf(sym_deinit, sizeof(sym_deinit), "shutdown_%s", dlm->name); - dl_deinit = dlmod_dlsym(dlm->handle, sym_deinit); + dl_deinit = (int (*)())dlmod_dlsym(dlm->handle, sym_deinit); } if (dl_deinit) { DEBUGMSGTL(("dlmod", "Calling %s()\n", sym_deinit)); diff -ruN net-snmp-5.8-orig/agent/mibgroup/ucd-snmp/memory_darwin7.c net-snmp-5.8/agent/mibgroup/ucd-snmp/memory_darwin7.c --- net-snmp-5.8-orig/agent/mibgroup/ucd-snmp/memory_darwin7.c 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/agent/mibgroup/ucd-snmp/memory_darwin7.c 2019-11-25 04:50:38.000000000 -0600 @@ -48,6 +48,12 @@ #include "memory.h" #include "memory_darwin7.h" +#ifdef HAVE_VM_REGION_64 +#define VM_REGION_FUNC vm_region_64 +#else +#define VM_REGION_FUNC vm_region +#endif + /* * * Swap info * */ @@ -387,7 +393,7 @@ for (address = 0;; address += size) { /* Get memory region. */ count = VM_REGION_EXTENDED_INFO_COUNT; - if (vm_region(tasks[j], &address, &size, VM_REGION_EXTENDED_INFO, (vm_region_extended_info_t)&info, &count, &object_name) != KERN_SUCCESS) { + if (VM_REGION_FUNC(tasks[j], &address, &size, VM_REGION_EXTENDED_INFO, (vm_region_extended_info_t)&info, &count, &object_name) != KERN_SUCCESS) { /* No more memory regions. */ break; } diff -ruN net-snmp-5.8-orig/agent/mibgroup/utilities/iquery.c net-snmp-5.8/agent/mibgroup/utilities/iquery.c --- net-snmp-5.8-orig/agent/mibgroup/utilities/iquery.c 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/agent/mibgroup/utilities/iquery.c 2019-11-25 04:50:38.000000000 -0600 @@ -229,7 +229,7 @@ ss->community = netsnmp_memdup(secName, strlen(secName)); ss->community_len = strlen(secName); } - ss->myvoid = netsnmp_check_outstanding_agent_requests; + ss->myvoid = (void*)netsnmp_check_outstanding_agent_requests; ss->flags |= SNMP_FLAGS_RESP_CALLBACK | SNMP_FLAGS_DONT_PROBE; } #endif diff -ruN net-snmp-5.8-orig/configure net-snmp-5.8/configure --- net-snmp-5.8-orig/configure 2018-07-16 09:33:50.000000000 -0500 +++ net-snmp-5.8/configure 2019-11-25 04:50:38.000000000 -0600 @@ -16607,37 +16607,9 @@ ;; darwin*) - # Flat Namespace linking (Mac OS/X) + # Add frameworks (OS X) # - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether darwin ld might need -flat_namespace" >&5 -$as_echo_n "checking whether darwin ld might need -flat_namespace... " >&6; } - if test -z "$MACOSX_DEPLOYMENT_TARGET"; then - saved_LDFLAGS="$LDFLAGS" - LDFLAGS="-flat_namespace -framework CoreFoundation -framework CoreServices -framework DiskArbitration -framework IOKit $LDFLAGS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -else - LDFLAGS="$saved_LDFLAGS"; { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - fi + LDFLAGS="-Wl,-framework,CoreFoundation -Wl,-framework,CoreServices -Wl,-framework,DiskArbitration -Wl,-framework,IOKit $LDFLAGS" ;; *) diff -ruN net-snmp-5.8-orig/configure.d/config_os_functions net-snmp-5.8/configure.d/config_os_functions --- net-snmp-5.8-orig/configure.d/config_os_functions 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/configure.d/config_os_functions 2019-11-25 04:50:38.000000000 -0600 @@ -114,7 +114,8 @@ [sigprocmask ] dnl [statfs statvfs stime ] dnl [strncasecmp system ] dnl - [uname usleep ] ) + [uname usleep ] dnl + [vm_region vm_region_64 ] ) # Apps: AC_CHECK_FUNCS([getdtablesize ] dnl diff -ruN net-snmp-5.8-orig/configure.d/config_os_progs net-snmp-5.8/configure.d/config_os_progs --- net-snmp-5.8-orig/configure.d/config_os_progs 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/configure.d/config_os_progs 2019-11-25 04:50:38.000000000 -0600 @@ -224,6 +224,7 @@ ;; esac +LD_NO_UNDEFINED=-no-undefined AC_SUBST(LD_NO_UNDEFINED) @@ -423,15 +424,7 @@ # Flat Namespace linking (Mac OS/X) # AC_MSG_CHECKING([whether darwin ld might need -flat_namespace]) - if test -z "$MACOSX_DEPLOYMENT_TARGET"; then - saved_LDFLAGS="$LDFLAGS" - LDFLAGS="-flat_namespace -framework CoreFoundation -framework CoreServices -framework DiskArbitration -framework IOKit $LDFLAGS" - AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], - [AC_MSG_RESULT([yes])], - [LDFLAGS="$saved_LDFLAGS"; AC_MSG_RESULT([no])]) - else AC_MSG_RESULT([no]) - fi ;; *) diff -ruN net-snmp-5.8-orig/configure.d/config_project_perl_python net-snmp-5.8/configure.d/config_project_perl_python --- net-snmp-5.8-orig/configure.d/config_project_perl_python 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/configure.d/config_project_perl_python 2019-11-25 04:50:38.000000000 -0600 @@ -87,7 +87,7 @@ if test "x$enable_perl_cc_checks" != "xno" ; then AC_MSG_CHECKING([for Perl cc]) changequote(, ) - PERLCC=`$myperl -V:cc | $myperl -n -e 'print if (s/^\s*cc=.([-=\w\s\/]+).;\s*/$1/);'` + PERLCC=`$myperl -V:cc | $myperl -n -e 'print if (s/^\s*cc=.([-=\w\s\.\/]+).;\s*/$1/);'` changequote([, ]) if test "x$PERLCC" != "x" ; then AC_MSG_RESULT([$PERLCC]) @@ -192,7 +192,7 @@ # if test "x$embed_perl" != "xno" ; then AC_MSG_CHECKING([for Perl CFLAGS]) - perlcflags=`$myperl -MExtUtils::Embed -e ccopts` + perlcflags=`$myperl -MExtUtils::Embed -e ccopts | /usr/bin/sed -e 's,-arch [^ ]*,,g'` if test "x$perlcflags" != "x" ; then AC_MSG_RESULT([$perlcflags]) CFLAGS="$CFLAGS $perlcflags" @@ -209,7 +209,7 @@ # if test "x$embed_perl" != "xno" ; then AC_MSG_CHECKING([for Perl LDFLAGS]) - netsnmp_perlldopts=`$myperl -MExtUtils::Embed -e ldopts` + netsnmp_perlldopts=`$myperl -MExtUtils::Embed -e ldopts | /usr/bin/sed -e 's,-arch [^ ]*,,g'` if test "x$netsnmp_perlldopts" != "x" ; then AC_MSG_RESULT([$netsnmp_perlldopts]) else @@ -228,7 +228,7 @@ # AC_MSG_CHECKING([for Perl CCDLFLAGS]) changequote(, ) - netsnmp_perlccdlflags=`$myperl -V:ccdlflags | $myperl -n -e 'print $1 '"if (/^\s*ccdlflags='([^']+)';/);"` + netsnmp_perlccdlflags=`$myperl -V:ccdlflags | /usr/bin/sed -e 's,-arch [^ ]*,,g'` changequote([, ]) AC_MSG_RESULT([$netsnmp_perlccdlflags]) PERLLDOPTS_FOR_APPS="$netsnmp_perlccdlflags" diff -ruN net-snmp-5.8-orig/net-snmp-config.in net-snmp-5.8/net-snmp-config.in --- net-snmp-5.8-orig/net-snmp-config.in 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/net-snmp-config.in 2019-11-25 04:50:38.000000000 -0600 @@ -48,10 +48,10 @@ datarootdir=@datarootdir@ NSC_LDFLAGS="@LDFLAGS@" -NSC_LIBS="@LIBS@" -NSC_LNETSNMPLIBS="@LNETSNMPLIBS@" -NSC_LAGENTLIBS="@LAGENTLIBS@ @PERLLDOPTS_FOR_APPS@" -NSC_LMIBLIBS="@LMIBLIBS@" +#NSC_LIBS="@LIBS@" +#NSC_LNETSNMPLIBS="@LNETSNMPLIBS@" +#NSC_LAGENTLIBS="@LAGENTLIBS@ @PERLLDOPTS_FOR_APPS@" +#NSC_LMIBLIBS="@LMIBLIBS@" NSC_INCLUDEDIR=${includedir} NSC_LIBDIR=-L${libdir} @@ -67,7 +67,7 @@ NSC_BASE_SNMP_LIBS="-lnetsnmp" NSC_BASE_SUBAGENT_LIBS="-lnetsnmpagent ${NSC_BASE_SNMP_LIBS}" -NSC_BASE_AGENT_LIBS="-lnetsnmpmibs ${NSC_BASE_SUBAGENT_LIBS}" +NSC_BASE_AGENT_LIBS="-lnetsnmpmibs ${NSC_BASE_SUBAGENT_LIBS} -lnetsnmphelpers" NSC_SRC_LIBDIRS="agent/.libs snmplib/.libs" NSC_SRC_LIBDEPS="agent/.libs/libnetsnmpmibs.a agent/.libs/libnetsnmpagent.a snmplib/.libs/libnetsnmp.a" @@ -143,7 +143,7 @@ echo @CFLAGS@ @CPPFLAGS@ -I${NSC_INCLUDEDIR} ;; --cflags|--cf*) - echo @CFLAGS@ @DEVFLAGS@ @CPPFLAGS@ -I. -I${NSC_INCLUDEDIR} + echo @CFLAGS@ @DEVFLAGS@ -I. @CPPFLAGS@ -I${NSC_INCLUDEDIR} ;; --srcdir) echo $NSC_SRCDIR diff -ruN net-snmp-5.8-orig/perl/ASN/Makefile.PL net-snmp-5.8/perl/ASN/Makefile.PL --- net-snmp-5.8-orig/perl/ASN/Makefile.PL 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/perl/ASN/Makefile.PL 2019-11-25 04:50:38.000000000 -0600 @@ -87,10 +87,19 @@ $lib_version = `$opts->{'nsconfig'} --version`; if (lc($opts->{'insource'}) eq "true") { - $Params{'LIBS'} = - "-L" . abs_path("../../snmplib/.libs") . - " -L" . abs_path("../../snmplib") . - " " . $Params{'LIBS'}; + my %local_libs = ( + 'netsnmp' => 'snmplib', + 'netsnmpagent' => 'agent', + 'netsnmphelpers' => 'agent/helpers', + 'netsnmpmibs' => 'agent', + 'netsnmptrapd' => 'apps', + ); + foreach (split ' ', $Params{'LIBS'}) { + if (s/^-l// && exists $local_libs{$_}) { + $Params{'LDDLFLAGS'} = $opts->{'rootpath'} . "../$local_libs{$_}/.libs/lib$_.dylib " . $Params{'LDDLFLAGS'}; + } + } + $Params{'LIBS'} = ' '; $Params{'CCFLAGS'} = "-I../../include " . $Params{'CCFLAGS'}; } $Params{'CCFLAGS'} =~ s/ -W(all|inline|strict-prototypes|write-strings|cast-qual|no-char-subscripts)//g; # ignore developer warnings diff -ruN net-snmp-5.8-orig/perl/OID/Makefile.PL net-snmp-5.8/perl/OID/Makefile.PL --- net-snmp-5.8-orig/perl/OID/Makefile.PL 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/perl/OID/Makefile.PL 2019-11-25 04:50:38.000000000 -0600 @@ -82,10 +82,19 @@ $Params{'CCFLAGS'} .= " " . $Config{'ccflags'}; $lib_version = `$opts->{'nsconfig'} --version`; if (lc($opts->{'insource'}) eq "true") { - $Params{'LIBS'} = - "-L" . abs_path("../../snmplib/.libs") . - " -L" . abs_path("../../snmplib") . - " " . $Params{'LIBS'}; + my %local_libs = ( + 'netsnmp' => 'snmplib', + 'netsnmpagent' => 'agent', + 'netsnmphelpers' => 'agent/helpers', + 'netsnmpmibs' => 'agent', + 'netsnmptrapd' => 'apps', + ); + foreach (split ' ', $Params{'LIBS'}) { + if (s/^-l// && exists $local_libs{$_}) { + $Params{'LDDLFLAGS'} = $opts->{'rootpath'} . "../$local_libs{$_}/.libs/lib$_.dylib " . $Params{'LDDLFLAGS'}; + } + } + $Params{'LIBS'} = ' '; $Params{'CCFLAGS'} = "-I../../include " . $Params{'CCFLAGS'}; # } else { # $Params{'PREREQ_PM'} = {'SNMP' => '5.0'}; diff -ruN net-snmp-5.8-orig/perl/SNMP/Makefile.PL net-snmp-5.8/perl/SNMP/Makefile.PL --- net-snmp-5.8-orig/perl/SNMP/Makefile.PL 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/perl/SNMP/Makefile.PL 2019-11-25 04:50:38.000000000 -0600 @@ -95,10 +95,19 @@ } $lib_version = `$opts->{'nsconfig'} --version`; if (lc($opts->{'insource'}) eq "true") { - $Params{'LIBS'} = - "-L" . abs_path("../../snmplib/.libs") . - " -L" . abs_path("../../snmplib") . - " " . $Params{'LIBS'}; + my %local_libs = ( + 'netsnmp' => 'snmplib', + 'netsnmpagent' => 'agent', + 'netsnmphelpers' => 'agent/helpers', + 'netsnmpmibs' => 'agent', + 'netsnmptrapd' => 'apps', + ); + foreach (split ' ', $Params{'LIBS'}) { + if (s/^-l// && exists $local_libs{$_}) { + $Params{'LDDLFLAGS'} = $opts->{'rootpath'} . "../$local_libs{$_}/.libs/lib$_.dylib " . $Params{'LDDLFLAGS'}; + } + } + $Params{'LIBS'} = ' '; $Params{'CCFLAGS'} = "-I../../include " . $Params{'CCFLAGS'}; # } else { # $Params{'PREREQ_PM'} = { 'NetSNMP::default_store' => 0.01 }; diff -ruN net-snmp-5.8-orig/perl/TrapReceiver/Makefile.PL net-snmp-5.8/perl/TrapReceiver/Makefile.PL --- net-snmp-5.8-orig/perl/TrapReceiver/Makefile.PL 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/perl/TrapReceiver/Makefile.PL 2019-11-25 04:50:38.000000000 -0600 @@ -119,14 +119,19 @@ } if (lc($opts->{'insource'}) eq "true") { - $Params{'LIBS'} = - "-L" . abs_path("../../apps/.libs") . - " -L" . abs_path("../../apps") . - " -L" . abs_path("../../agent/.libs") . - " -L" . abs_path("../../agent") . - " -L" . abs_path("../../snmplib/.libs") . - " -L" . abs_path("../../snmplib") . - " " . $Params{'LIBS'}; + my %local_libs = ( + 'netsnmp' => 'snmplib', + 'netsnmpagent' => 'agent', + 'netsnmphelpers' => 'agent/helpers', + 'netsnmpmibs' => 'agent', + 'netsnmptrapd' => 'apps', + ); + foreach (split ' ', $Params{'LIBS'}) { + if (s/^-l// && exists $local_libs{$_}) { + $Params{'LDDLFLAGS'} = $opts->{'rootpath'} . "../$local_libs{$_}/.libs/lib$_.dylib " . $Params{'LDDLFLAGS'}; + } + } + $Params{'LIBS'} = ' '; $Params{'CCFLAGS'} = "-I../../include " . $Params{'CCFLAGS'}; } else { $Params{'LIBS'} = `$opts->{'nsconfig'} --libdir` . " $Params{'LIBS'}"; diff -ruN net-snmp-5.8-orig/perl/agent/Makefile.PL net-snmp-5.8/perl/agent/Makefile.PL --- net-snmp-5.8-orig/perl/agent/Makefile.PL 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/perl/agent/Makefile.PL 2019-11-25 04:50:38.000000000 -0600 @@ -87,12 +87,19 @@ $Params{'CCFLAGS'} .= " " . $Config{'ccflags'}; $lib_version = `$opts->{'nsconfig'} --version`; if (lc($opts->{'insource'}) eq "true") { - $Params{'LIBS'} = - "-L" . abs_path("../../snmplib/.libs") . - " -L" . abs_path("../../snmplib") . - " -L" . abs_path("../../agent/.libs") . - " -L" . abs_path("../../agent") . - " " . $Params{'LIBS'}; + my %local_libs = ( + 'netsnmp' => 'snmplib', + 'netsnmpagent' => 'agent', + 'netsnmphelpers' => 'agent/helpers', + 'netsnmpmibs' => 'agent', + 'netsnmptrapd' => 'apps', + ); + foreach (split ' ', $Params{'LIBS'}) { + if (s/^-l// && exists $local_libs{$_}) { + $Params{'LDDLFLAGS'} = $opts->{'rootpath'} . "../$local_libs{$_}/.libs/lib$_.dylib " . $Params{'LDDLFLAGS'}; + } + } + $Params{'LIBS'} = ' '; $Params{'CCFLAGS'} = "-I../../include " . $Params{'CCFLAGS'}; # } else { $Params{'LIBS'} = `$opts->{'nsconfig'} --libdir` . $Params{'LIBS'}; diff -ruN net-snmp-5.8-orig/perl/agent/Support/Makefile.PL net-snmp-5.8/perl/agent/Support/Makefile.PL --- net-snmp-5.8-orig/perl/agent/Support/Makefile.PL 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/perl/agent/Support/Makefile.PL 2019-11-25 04:50:38.000000000 -0600 @@ -76,6 +76,7 @@ else { $opts = NetSNMPGetOpts("../../"); + $Params{'LDDLFLAGS'} = "$Config{lddlflags} " . `$opts->{'nsconfig'} --ldflags`; $Params{'LIBS'} = `$opts->{'nsconfig'} --libs`; chomp($Params{'LIBS'}); $Params{'CCFLAGS'} = `$opts->{'nsconfig'} --cflags`; diff -ruN net-snmp-5.8-orig/perl/agent/default_store/Makefile.PL net-snmp-5.8/perl/agent/default_store/Makefile.PL --- net-snmp-5.8-orig/perl/agent/default_store/Makefile.PL 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/perl/agent/default_store/Makefile.PL 2019-11-25 04:50:38.000000000 -0600 @@ -70,6 +70,7 @@ } else { $opts = NetSNMPGetOpts("../../"); + $Params{'LDDLFLAGS'} = "$Config{lddlflags} " . `$opts->{'nsconfig'} --ldflags`; $Params{'LIBS'} = `$opts->{'nsconfig'} --libs`; chomp($Params{'LIBS'}); $Params{'CCFLAGS'} = `$opts->{'nsconfig'} --cflags`; @@ -77,10 +78,19 @@ $Params{'CCFLAGS'} .= " " . $Config{'ccflags'}; $lib_version = `$opts->{'nsconfig'} --version`; if ($opts->{'insource'} eq "true") { - $Params{'LIBS'} = - "-L" . abs_path("../../../snmplib/.libs") . - " -L" . abs_path("../../../snmplib") . - " " . $Params{'LIBS'}; + my %local_libs = ( + 'netsnmp' => 'snmplib', + 'netsnmpagent' => 'agent', + 'netsnmphelpers' => 'agent/helpers', + 'netsnmpmibs' => 'agent', + 'netsnmptrapd' => 'apps', + ); + foreach (split ' ', $Params{'LIBS'}) { + if (s/^-l// && exists $local_libs{$_}) { + $Params{'LDDLFLAGS'} = $opts->{'rootpath'} . "../$local_libs{$_}/.libs/lib$_.dylib " . $Params{'LDDLFLAGS'}; + } + } + $Params{'LIBS'} = ' '; $Params{'CCFLAGS'} = "-I../../../include " . $Params{'CCFLAGS'}; } $Params{'CCFLAGS'} =~ s/ -W(all|inline|strict-prototypes|write-strings|cast-qual|no-char-subscripts)//g; # ignore developer warnings diff -ruN net-snmp-5.8-orig/perl/default_store/Makefile.PL net-snmp-5.8/perl/default_store/Makefile.PL --- net-snmp-5.8-orig/perl/default_store/Makefile.PL 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/perl/default_store/Makefile.PL 2019-11-25 04:50:38.000000000 -0600 @@ -77,10 +77,19 @@ $Params{'CCFLAGS'} .= " " . $Config{'ccflags'}; $lib_version = `$opts->{'nsconfig'} --version`; if (lc($opts->{'insource'}) eq "true") { - $Params{'LIBS'} = - "-L" . abs_path("../../snmplib/.libs") . - " -L" . abs_path("../../snmplib") . - " " . $Params{'LIBS'}; + my %local_libs = ( + 'netsnmp' => 'snmplib', + 'netsnmpagent' => 'agent', + 'netsnmphelpers' => 'agent/helpers', + 'netsnmpmibs' => 'agent', + 'netsnmptrapd' => 'apps', + ); + foreach (split ' ', $Params{'LIBS'}) { + if (s/^-l// && exists $local_libs{$_}) { + $Params{'LDDLFLAGS'} = $opts->{'rootpath'} . "../$local_libs{$_}/.libs/lib$_.dylib " . $Params{'LDDLFLAGS'}; + } + } + $Params{'LIBS'} = ' '; $Params{'CCFLAGS'} = "-I../../include " . $Params{'CCFLAGS'}; } $Params{'CCFLAGS'} =~ s/ -W(all|inline|strict-prototypes|write-strings|cast-qual|no-char-subscripts)//g; # ignore developer warnings diff -ruN net-snmp-5.8-orig/snmplib/md5.c net-snmp-5.8/snmplib/md5.c --- net-snmp-5.8-orig/snmplib/md5.c 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/snmplib/md5.c 2019-11-25 04:50:38.000000000 -0600 @@ -195,7 +195,7 @@ { register unsigned int tmp, A, B, C, D; /* hpux sysv sun */ #ifdef WORDS_BIGENDIAN - MDreverse(X); + MDreverse((unsigned int*)X); #endif A = MDp->buffer[0]; B = MDp->buffer[1]; @@ -275,7 +275,7 @@ MDp->buffer[2] += C; MDp->buffer[3] += D; #ifdef WORDS_BIGENDIAN - MDreverse(X); + MDreverse((unsigned int*)X); #endif } diff -ruN net-snmp-5.8-orig/snmplib/system.c net-snmp-5.8/snmplib/system.c --- net-snmp-5.8-orig/snmplib/system.c 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/snmplib/system.c 2019-11-25 04:50:38.000000000 -0600 @@ -155,6 +155,7 @@ #if defined(darwin9) #include /* for _NSGetArgv() */ +#include /* for _NSGetExecutablePath() */ #endif #if HAVE_PWD_H diff -ruN net-snmp-5.8-orig/testing/Makefile.in net-snmp-5.8/testing/Makefile.in --- net-snmp-5.8-orig/testing/Makefile.in 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/testing/Makefile.in 2019-11-25 04:50:38.000000000 -0600 @@ -11,7 +11,7 @@ @NON_GNU_VPATH@ $(srcdir) USELIBS = ../snmplib/libsnmp.$(LIB_EXTENSION)$(LIB_VERSION) -LIBS = -L../snmplib $(CC_RUNTIME_ARG) -lsnmp @LIBS@ +LIBS = $(CC_RUNTIME_ARG) @LIBS@ PARSEOBJS = diff -ruN net-snmp-5.8-orig/testing/fulltests/default/T070com2sec_simple net-snmp-5.8/testing/fulltests/default/T070com2sec_simple --- net-snmp-5.8-orig/testing/fulltests/default/T070com2sec_simple 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/testing/fulltests/default/T070com2sec_simple 2019-11-25 04:50:38.000000000 -0600 @@ -131,7 +131,8 @@ SAVECHECKAGENT '<"c405k", 0.0.0.0/0.0.0.0> => "t405k"' SAVECHECKAGENT '<"c405l", 0.0.0.0/0.0.0.0> => "t405l"' SAVECHECKAGENT '<"c406a", 255.255.255.255/255.255.255.255> => "t406a"' -SAVECHECKAGENT 'line 30: Error:' # msg from h_strerror so it varies +# test fails if "no.such.address." resolves due to DNS wildcarding +# SAVECHECKAGENT 'line 30: Error:' # msg from h_strerror so it varies SAVECHECKAGENT 'line 31: Error:' # msg from h_strerror so it varies CHECKAGENT '<"c408a"' diff -ruN net-snmp-5.8-orig/testing/fulltests/default/T071com2sec6_simple net-snmp-5.8/testing/fulltests/default/T071com2sec6_simple --- net-snmp-5.8-orig/testing/fulltests/default/T071com2sec6_simple 2018-07-16 09:33:40.000000000 -0500 +++ net-snmp-5.8/testing/fulltests/default/T071com2sec6_simple 2019-11-25 04:50:38.000000000 -0600 @@ -133,7 +133,7 @@ SAVECHECKAGENT 'line 28: Error:' # 608 -CHECKAGENT '<"c608a"' +#CHECKAGENT '<"c608a"' if [ "$snmp_last_test_result" -eq 0 ] ; then CHECKAGENT 'line 29: Error:' errnum=`expr $errnum - 1` @@ -144,7 +144,7 @@ FINISHED fi -CHECKAGENTCOUNT atleastone '<"c608b"' +#CHECKAGENTCOUNT atleastone '<"c608b"' if [ "$snmp_last_test_result" -eq 0 ] ; then CHECKAGENT 'line 30: Error:' if [ "$snmp_last_test_result" -eq 1 ] ; then