[Midnightbsd-cvs] mports: mports/net-mgmt: add net-snmp53
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Fri Jun 20 18:13:23 EDT 2008
Log Message:
-----------
add net-snmp53
Modified Files:
--------------
mports/net-mgmt:
Makefile (r1.13 -> r1.14)
Added Files:
-----------
mports/net-mgmt/net-snmp53:
Makefile (r1.1)
distinfo (r1.1)
pkg-descr (r1.1)
pkg-message (r1.1)
pkg-plist (r1.1)
mports/net-mgmt/net-snmp53/files:
extra-patch-local:Makefile.in (r1.1)
patch-Makefile.in (r1.1)
patch-callback.c (r1.1)
patch-configure.in (r1.1)
patch-default_store.c (r1.1)
patch-freebsd5.h (r1.1)
patch-freebsd7.h (r1.1)
patch-freebsd8.h (r1.1)
patch-hr_storage.c (r1.1)
patch-hr_storage.h (r1.1)
patch-hr_system.c (r1.1)
patch-interface_ioctl.c (r1.1)
patch-interfaces.c (r1.1)
patch-ipv6.c (r1.1)
patch-keytools.c (r1.1)
patch-lcd_time.c (r1.1)
patch-local:fixproc (r1.1)
patch-local:ipf-mod.pl (r1.1)
patch-local:mib2c (r1.1)
patch-local:snmpcheck.def (r1.1)
patch-local:snmpconf (r1.1)
patch-local:tkmib (r1.1)
patch-local:traptoemail (r1.1)
patch-mib.c (r1.1)
patch-net-snmp-config.h.in (r1.1)
patch-net-snmp-includes.h (r1.1)
patch-parse.c (r1.1)
patch-scapi.c (r1.1)
patch-snmpTCPIPv6Domain.c (r1.1)
patch-snmpUCDIPv6Domain.c (r1.1)
patch-snmpUDPDomain.c (r1.1)
patch-snmp_agent.c (r1.1)
patch-snmp_auth.c (r1.1)
patch-snmp_debug.c (r1.1)
patch-snmp_logging.c (r1.1)
patch-snmp_transport.c (r1.1)
patch-snmpusm.c (r1.1)
patch-tcpTable.c (r1.1)
patch-tools.c (r1.1)
patch-transform_oids.h (r1.1)
patch-ucd_snmp.h (r1.1)
patch-vmstat_freebsd2.c (r1.1)
snmpd.sh.in (r1.1)
snmptrapd.sh.in (r1.1)
test.t (r1.1)
-------------- next part --------------
--- /dev/null
+++ net-mgmt/net-snmp53/pkg-message
@@ -0,0 +1,27 @@
+**** This port installs snmp daemon, header files and libraries but don't
+ invokes snmpd by default.
+ If you want to invoke snmpd and/or snmptrapd at startup, put these
+ lines into /etc/rc.conf.
+
+ snmpd_enable="YES"
+ snmpd_flags="-a"
+ snmpd_conffile="/usr/local/share/snmpd.conf /etc/snmpd.conf"
+ snmptrapd_enable="YES"
+ snmptrapd_flags="-a -p /var/run/snmptrapd.pid"
+
+**** You may specify the following make variables:
+
+ NET_SNMP_SYS_CONTACT="youremail at address.org"
+ NET_SNMP_SYS_LOCATION="Tokyo, Japan"
+ DEFAULT_SNMP_VERSION=3
+ NET_SNMP_MIB_MODULES="host smux mibII/mta_sendmail ucd-snmp/diskio"
+ NET_SNMP_LOGFILE=/var/log/snmpd.log
+ NET_SNMP_PERSISTENTDIR=/var/net-snmp
+
+ to define default values (or overwriting defaults). At least
+ setting first two variables, you will not be prompted during
+ configuration process. You may also set
+
+ BATCH="yes"
+
+ to avoid interactive configuration.
--- /dev/null
+++ net-mgmt/net-snmp53/pkg-descr
@@ -0,0 +1,12 @@
+This is Net-SNMP (previously known as "ucd-snmp").
+
+Various tools relating to the Simple Network Management Protocol including:
+
+ An extensible agent
+ An SNMP library
+ tools to request or set information from SNMP agents
+ tools to generate and handle SNMP traps
+ a version of the unix 'netstat' command using SNMP
+ a graphical Perl/Tk/SNMP based mib browser
+
+WWW: http://net-snmp.sourceforge.net/
--- /dev/null
+++ net-mgmt/net-snmp53/pkg-plist
@@ -0,0 +1,439 @@
+bin/encode_keychange
+bin/fixproc
+bin/ipf-mod.pl
+bin/mib2c
+bin/mib2c-update
+bin/net-snmp-config
+bin/snmpbulkget
+bin/snmpbulkwalk
+bin/snmpcheck
+bin/snmpconf
+bin/snmpdelta
+bin/snmpdf
+bin/snmpget
+bin/snmpgetnext
+bin/snmpinform
+bin/snmpnetstat
+bin/snmpset
+bin/snmpstatus
+bin/snmptable
+bin/snmptest
+bin/snmptranslate
+bin/snmptrap
+bin/snmpusm
+bin/snmpvacm
+bin/snmpwalk
+%%WITH_TKMIB%%bin/tkmib
+bin/traptoemail
+ at exec mkdir %D/etc/snmp 2>/dev/null || true
+include/net-snmp/agent/agent_callbacks.h
+include/net-snmp/agent/agent_handler.h
+include/net-snmp/agent/agent_index.h
+include/net-snmp/agent/agent_module_config.h
+include/net-snmp/agent/agent_read_config.h
+include/net-snmp/agent/agent_registry.h
+include/net-snmp/agent/agent_trap.h
+include/net-snmp/agent/all_helpers.h
+include/net-snmp/agent/auto_nlist.h
+include/net-snmp/agent/baby_steps.h
+include/net-snmp/agent/bulk_to_next.h
+include/net-snmp/agent/cache_handler.h
+include/net-snmp/agent/debug_handler.h
+include/net-snmp/agent/ds_agent.h
+include/net-snmp/agent/instance.h
+include/net-snmp/agent/mfd.h
+include/net-snmp/agent/mib_module_config.h
+include/net-snmp/agent/mib_module_includes.h
+include/net-snmp/agent/mib_modules.h
+include/net-snmp/agent/mode_end_call.h
+include/net-snmp/agent/multiplexer.h
+include/net-snmp/agent/net-snmp-agent-includes.h
+include/net-snmp/agent/null.h
+include/net-snmp/agent/old_api.h
+include/net-snmp/agent/read_only.h
+include/net-snmp/agent/row_merge.h
+include/net-snmp/agent/scalar.h
+include/net-snmp/agent/scalar_group.h
+include/net-snmp/agent/serialize.h
+include/net-snmp/agent/set_helper.h
+include/net-snmp/agent/snmp_agent.h
+include/net-snmp/agent/snmp_vars.h
+include/net-snmp/agent/stash_cache.h
+include/net-snmp/agent/stash_to_next.h
+include/net-snmp/agent/table.h
+include/net-snmp/agent/table_array.h
+include/net-snmp/agent/table_container.h
+include/net-snmp/agent/table_data.h
+include/net-snmp/agent/table_dataset.h
+include/net-snmp/agent/table_iterator.h
+include/net-snmp/agent/table_tdata.h
+include/net-snmp/agent/util_funcs.h
+include/net-snmp/agent/var_struct.h
+include/net-snmp/agent/watcher.h
+include/net-snmp/config_api.h
+include/net-snmp/definitions.h
+include/net-snmp/library/README
+include/net-snmp/library/asn1.h
+include/net-snmp/library/callback.h
+include/net-snmp/library/check_varbind.h
+include/net-snmp/library/cmu_compat.h
+include/net-snmp/library/container.h
+include/net-snmp/library/container_binary_array.h
+include/net-snmp/library/container_iterator.h
+include/net-snmp/library/container_list_ssll.h
+include/net-snmp/library/container_null.h
+include/net-snmp/library/data_list.h
+include/net-snmp/library/default_store.h
+include/net-snmp/library/factory.h
+include/net-snmp/library/fd_event_manager.h
+include/net-snmp/library/file_utils.h
+include/net-snmp/library/getopt.h
+include/net-snmp/library/int64.h
+include/net-snmp/library/keytools.h
+include/net-snmp/library/lcd_time.h
+include/net-snmp/library/md5.h
+include/net-snmp/library/mib.h
+include/net-snmp/library/mt_support.h
+include/net-snmp/library/oid_stash.h
+include/net-snmp/library/parse.h
+include/net-snmp/library/read_config.h
+include/net-snmp/library/scapi.h
+include/net-snmp/library/snmp-tc.h
+include/net-snmp/library/snmp.h
+include/net-snmp/library/snmpCallbackDomain.h
+include/net-snmp/library/snmpTCPDomain.h
+%%WITH_IPV6%%include/net-snmp/library/snmpTCPIPv6Domain.h
+include/net-snmp/library/snmpUDPDomain.h
+%%WITH_IPV6%%include/net-snmp/library/snmpUDPIPv6Domain.h
+include/net-snmp/library/snmpUnixDomain.h
+include/net-snmp/library/snmp_alarm.h
+include/net-snmp/library/snmp_api.h
+include/net-snmp/library/snmp_assert.h
+include/net-snmp/library/snmp_client.h
+include/net-snmp/library/snmp_debug.h
+include/net-snmp/library/snmp_enum.h
+include/net-snmp/library/snmp_impl.h
+include/net-snmp/library/snmp_logging.h
+include/net-snmp/library/snmp_parse_args.h
+include/net-snmp/library/snmp_secmod.h
+include/net-snmp/library/snmp_transport.h
+include/net-snmp/library/snmpusm.h
+include/net-snmp/library/snmpv3-security-includes.h
+include/net-snmp/library/snmpv3.h
+include/net-snmp/library/system.h
+include/net-snmp/library/text_utils.h
+include/net-snmp/library/tools.h
+include/net-snmp/library/transform_oids.h
+include/net-snmp/library/ucd_compat.h
+include/net-snmp/library/vacm.h
+include/net-snmp/library/winpipe.h
+include/net-snmp/library/winservice.h
+include/net-snmp/machine/generic.h
+include/net-snmp/mib_api.h
+include/net-snmp/net-snmp-config.h
+include/net-snmp/net-snmp-includes.h
+include/net-snmp/output_api.h
+include/net-snmp/pdu_api.h
+include/net-snmp/session_api.h
+include/net-snmp/snmpv3_api.h
+include/net-snmp/system/aix.h
+include/net-snmp/system/bsd.h
+include/net-snmp/system/bsdi.h
+include/net-snmp/system/bsdi3.h
+include/net-snmp/system/bsdi4.h
+include/net-snmp/system/cygwin.h
+include/net-snmp/system/darwin.h
+include/net-snmp/system/darwin7.h
+include/net-snmp/system/darwin8.h
+include/net-snmp/system/dynix.h
+include/net-snmp/system/freebsd.h
+include/net-snmp/system/freebsd2.h
+include/net-snmp/system/freebsd3.h
+include/net-snmp/system/freebsd4.h
+include/net-snmp/system/freebsd5.h
+include/net-snmp/system/freebsd6.h
+include/net-snmp/system/freebsd7.h
+include/net-snmp/system/freebsd8.h
+include/net-snmp/system/generic.h
+include/net-snmp/system/hpux.h
+include/net-snmp/system/irix.h
+include/net-snmp/system/linux.h
+include/net-snmp/system/mingw32.h
+include/net-snmp/system/mips.h
+include/net-snmp/system/netbsd.h
+include/net-snmp/system/openbsd.h
+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/sunos.h
+include/net-snmp/system/svr5.h
+include/net-snmp/system/sysv.h
+include/net-snmp/system/ultrix4.h
+include/net-snmp/types.h
+include/net-snmp/utilities.h
+include/net-snmp/varbind_api.h
+include/net-snmp/version.h
+lib/libnetsnmp.a
+lib/libnetsnmp.la
+lib/libnetsnmp.so.%%SHLIB_VERSION%%
+ at exec ln -fs libnetsnmp.so.%%SHLIB_VERSION%% %B/libnetsnmp.so
+ at unexec rm -f %B/libnetsnmp.so 2> /dev/null || true
+lib/libnetsnmpagent.a
+lib/libnetsnmpagent.la
+lib/libnetsnmpagent.so.%%SHLIB_VERSION%%
+ at exec ln -fs libnetsnmpagent.so.%%SHLIB_VERSION%% %B/libnetsnmpagent.so
+ at unexec rm -f %B/libnetsnmpagent.so 2> /dev/null || true
+lib/libnetsnmphelpers.a
+lib/libnetsnmphelpers.la
+lib/libnetsnmphelpers.so.%%SHLIB_VERSION%%
+ at exec ln -fs libnetsnmphelpers.so.%%SHLIB_VERSION%% %B/libnetsnmphelpers.so
+ at unexec rm -f %B/libnetsnmphelpers.so 2> /dev/null || true
+lib/libnetsnmpmibs.a
+lib/libnetsnmpmibs.la
+lib/libnetsnmpmibs.so.%%SHLIB_VERSION%%
+ at exec ln -fs libnetsnmpmibs.so.%%SHLIB_VERSION%% %B/libnetsnmpmibs.so
+ at unexec rm -f %B/libnetsnmpmibs.so 2> /dev/null || true
+lib/libnetsnmptrapd.a
+lib/libnetsnmptrapd.la
+lib/libnetsnmptrapd.so.%%SHLIB_VERSION%%
+ at exec ln -fs libnetsnmptrapd.so.%%SHLIB_VERSION%% %B/libnetsnmptrapd.so
+ at unexec rm -f %B/libnetsnmptrapd.so 2> /dev/null || true
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/Bundle/Makefile.subs.pl
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/NetSNMP/ASN.pm
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/NetSNMP/OID.pm
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/NetSNMP/TrapReceiver.pm
+%%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/default_store.pm
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/SNMP.pm
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/ASN/ASN.bs
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/ASN/ASN.so
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/ASN/autosplit.ix
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/OID/OID.bs
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/OID/OID.so
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/OID/autosplit.ix
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/TrapReceiver/TrapReceiver.bs
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/TrapReceiver/TrapReceiver.so
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/TrapReceiver/autosplit.ix
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/agent/agent.bs
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/agent/agent.so
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/agent/autosplit.ix
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/agent/default_store/autosplit.ix
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/agent/default_store/default_store.bs
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/agent/default_store/default_store.so
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/default_store/autosplit.ix
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/default_store/default_store.bs
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/default_store/default_store.so
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/SNMP/SNMP.bs
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/SNMP/SNMP.so
+%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/SNMP/autosplit.ix
+sbin/snmpd
+sbin/snmptrapd
+%%PORTDOCS%%%%DOCSDIR%%/AGENT.txt
+%%PORTDOCS%%%%DOCSDIR%%/COPYING
+%%PORTDOCS%%%%DOCSDIR%%/FAQ
+%%PORTDOCS%%%%DOCSDIR%%/NEWS
+%%PORTDOCS%%%%DOCSDIR%%/README
+%%PORTDOCS%%%%DOCSDIR%%/README.agentx
+%%PORTDOCS%%%%DOCSDIR%%/README.krb5
+%%PORTDOCS%%%%DOCSDIR%%/README.snmpv3
+%%PORTDOCS%%%%DOCSDIR%%/README.thread
+%%PORTDOCS%%%%DOCSDIR%%/README.smux
+%%DATADIR%%/snmpd.conf.example
+%%DATADIR%%/snmp_perl_trapd.pl
+%%DATADIR%%/mib2c.access_functions.conf
+%%DATADIR%%/mib2c.array-user.conf
+%%DATADIR%%/mib2c.check_values.conf
+%%DATADIR%%/mib2c.check_values_local.conf
+%%DATADIR%%/mib2c.column_defines.conf
+%%DATADIR%%/mib2c.column_enums.conf
+%%DATADIR%%/mib2c.column_storage.conf
+%%DATADIR%%/mib2c.conf
+%%DATADIR%%/mib2c.container.conf
+%%DATADIR%%/mib2c.create-dataset.conf
+%%DATADIR%%/mib2c.genhtml.conf
+%%DATADIR%%/mib2c.int_watch.conf
+%%DATADIR%%/mib2c.iterate.conf
+%%DATADIR%%/mib2c.iterate_access.conf
+%%DATADIR%%/mib2c.mfd.conf
+%%DATADIR%%/mib2c.notify.conf
+%%DATADIR%%/mib2c.old-api.conf
+%%DATADIR%%/mib2c.scalar.conf
+%%DATADIR%%/mib2c.table_data.conf
+%%DATADIR%%/mib2c-data/default-mfd-top.m2c
+%%DATADIR%%/mib2c-data/details-enums.m2i
+%%DATADIR%%/mib2c-data/details-node.m2i
+%%DATADIR%%/mib2c-data/details-table.m2i
+%%DATADIR%%/mib2c-data/generic-ctx-copy.m2i
+%%DATADIR%%/mib2c-data/generic-ctx-get.m2i
+%%DATADIR%%/mib2c-data/generic-ctx-set.m2i
+%%DATADIR%%/mib2c-data/generic-data-allocate.m2i
+%%DATADIR%%/mib2c-data/generic-data-context.m2i
+%%DATADIR%%/mib2c-data/generic-get-char.m2i
+%%DATADIR%%/mib2c-data/generic-get-decl-bot.m2i
+%%DATADIR%%/mib2c-data/generic-get-decl.m2i
+%%DATADIR%%/mib2c-data/generic-get-long.m2i
+%%DATADIR%%/mib2c-data/generic-get-oid.m2i
+%%DATADIR%%/mib2c-data/generic-header-bottom.m2i
+%%DATADIR%%/mib2c-data/generic-header-top.m2i
+%%DATADIR%%/mib2c-data/generic-source-includes.m2i
+%%DATADIR%%/mib2c-data/generic-table-constants.m2c
+%%DATADIR%%/mib2c-data/generic-table-enums.m2c
+%%DATADIR%%/mib2c-data/generic-table-indexes-from-oid.m2i
+%%DATADIR%%/mib2c-data/generic-table-indexes-set.m2i
+%%DATADIR%%/mib2c-data/generic-table-indexes-to-oid.m2i
+%%DATADIR%%/mib2c-data/generic-table-indexes-varbind-setup.m2i
+%%DATADIR%%/mib2c-data/generic-table-indexes.m2i
+%%DATADIR%%/mib2c-data/generic-table-oids.m2c
+%%DATADIR%%/mib2c-data/generic-value-map-func.m2i
+%%DATADIR%%/mib2c-data/generic-value-map-reverse.m2i
+%%DATADIR%%/mib2c-data/generic-value-map.m2i
+%%DATADIR%%/mib2c-data/m2c-internal-warning.m2i
+%%DATADIR%%/mib2c-data/m2c_setup_enum.m2i
+%%DATADIR%%/mib2c-data/m2c_setup_node.m2i
+%%DATADIR%%/mib2c-data/m2c_setup_table.m2i
+%%DATADIR%%/mib2c-data/m2c_table_save_defaults.m2i
+%%DATADIR%%/mib2c-data/mfd-access-container-cached-defines.m2i
+%%DATADIR%%/mib2c-data/mfd-access-unsorted-external-defines.m2i
+%%DATADIR%%/mib2c-data/mfd-data-access.m2c
+%%DATADIR%%/mib2c-data/mfd-data-get.m2c
+%%DATADIR%%/mib2c-data/mfd-data-set.m2c
+%%DATADIR%%/mib2c-data/mfd-doxygen.m2c
+%%DATADIR%%/mib2c-data/mfd-interactive-setup.m2c
+%%DATADIR%%/mib2c-data/mfd-interface.m2c
+%%DATADIR%%/mib2c-data/mfd-makefile.m2m
+%%DATADIR%%/mib2c-data/mfd-persistence.m2i
+%%DATADIR%%/mib2c-data/mfd-readme.m2c
+%%DATADIR%%/mib2c-data/mfd-top.m2c
+%%DATADIR%%/mib2c-data/node-get.m2i
+%%DATADIR%%/mib2c-data/node-set.m2i
+%%DATADIR%%/mib2c-data/node-storage.m2i
+%%DATADIR%%/mib2c-data/node-validate.m2i
+%%DATADIR%%/mib2c-data/node-varbind-validate.m2i
+%%DATADIR%%/mib2c-data/parent-dependencies.m2i
+%%DATADIR%%/mib2c-data/parent-set.m2i
+%%DATADIR%%/mib2c-data/subagent.m2c
+%%DATADIR%%/mib2c-data/syntax-COUNTER64-get.m2i
+%%DATADIR%%/mib2c-data/syntax-DateAndTime-get.m2d
+%%DATADIR%%/mib2c-data/syntax-DateAndTime-get.m2i
+%%DATADIR%%/mib2c-data/syntax-DateAndTime-readme.m2i
+%%DATADIR%%/mib2c-data/syntax-InetAddress-get.m2i
+%%DATADIR%%/mib2c-data/syntax-InetAddress-set.m2i
+%%DATADIR%%/mib2c-data/syntax-InetAddressType-get.m2i
+%%DATADIR%%/mib2c-data/syntax-InetAddressType-set.m2i
+%%DATADIR%%/mib2c-data/syntax-RowStatus-dependencies.m2i
+%%DATADIR%%/mib2c-data/syntax-RowStatus-get.m2i
+%%DATADIR%%/mib2c-data/syntax-RowStatus-varbind-validate.m2i
+%%DATADIR%%/mib2c-data/syntax-StorageType-dependencies.m2i
+%%DATADIR%%/mib2c-data/syntax-TestAndIncr-get.m2i
+%%DATADIR%%/mibs/AGENTX-MIB.txt
+%%WITH_EVENT-MIB%%%%DATADIR%%/mibs/DISMAN-EVENT-MIB.txt
+%%DATADIR%%/mibs/DISMAN-SCHEDULE-MIB.txt
+%%DATADIR%%/mibs/DISMAN-SCRIPT-MIB.txt
+%%DATADIR%%/mibs/EtherLike-MIB.txt
+%%DATADIR%%/mibs/HCNUM-TC.txt
+%%DATADIR%%/mibs/HOST-RESOURCES-MIB.txt
+%%DATADIR%%/mibs/HOST-RESOURCES-TYPES.txt
+%%DATADIR%%/mibs/IANA-ADDRESS-FAMILY-NUMBERS-MIB.txt
+%%DATADIR%%/mibs/IANA-LANGUAGE-MIB.txt
+%%DATADIR%%/mibs/IANA-RTPROTO-MIB.txt
+%%DATADIR%%/mibs/IANAifType-MIB.txt
+%%DATADIR%%/mibs/IF-INVERTED-STACK-MIB.txt
+%%DATADIR%%/mibs/IF-MIB.txt
+%%DATADIR%%/mibs/INET-ADDRESS-MIB.txt
+%%DATADIR%%/mibs/IP-FORWARD-MIB.txt
+%%DATADIR%%/mibs/IP-MIB.txt
+%%DATADIR%%/mibs/IPV6-ICMP-MIB.txt
+%%DATADIR%%/mibs/IPV6-MIB.txt
+%%DATADIR%%/mibs/IPV6-TC.txt
+%%DATADIR%%/mibs/IPV6-TCP-MIB.txt
+%%DATADIR%%/mibs/IPV6-UDP-MIB.txt
+%%WITH_MTA_SENDMAIL%%%%DATADIR%%/mibs/MTA-MIB.txt
+%%DATADIR%%/mibs/NET-SNMP-AGENT-MIB.txt
+%%DATADIR%%/mibs/NET-SNMP-EXAMPLES-MIB.txt
+%%DATADIR%%/mibs/NET-SNMP-EXTEND-MIB.txt
+%%DATADIR%%/mibs/NET-SNMP-MIB.txt
+%%DATADIR%%/mibs/NET-SNMP-TC.txt
+%%WITH_MTA_SENDMAIL%%%%DATADIR%%/mibs/NETWORK-SERVICES-MIB.txt
+%%DATADIR%%/mibs/NOTIFICATION-LOG-MIB.txt
+%%DATADIR%%/mibs/RFC-1215.txt
+%%DATADIR%%/mibs/RFC1155-SMI.txt
+%%DATADIR%%/mibs/RFC1213-MIB.txt
+%%DATADIR%%/mibs/RMON-MIB.txt
+%%DATADIR%%/mibs/SMUX-MIB.txt
+%%DATADIR%%/mibs/SNMP-COMMUNITY-MIB.txt
+%%DATADIR%%/mibs/SNMP-FRAMEWORK-MIB.txt
+%%DATADIR%%/mibs/SNMP-MPD-MIB.txt
+%%DATADIR%%/mibs/SNMP-NOTIFICATION-MIB.txt
+%%DATADIR%%/mibs/SNMP-PROXY-MIB.txt
+%%DATADIR%%/mibs/SNMP-TARGET-MIB.txt
+%%DATADIR%%/mibs/SNMP-USER-BASED-SM-MIB.txt
+%%DATADIR%%/mibs/SNMP-USM-AES-MIB.txt
+%%DATADIR%%/mibs/SNMP-USM-DH-OBJECTS-MIB.txt
+%%DATADIR%%/mibs/SNMP-VIEW-BASED-ACM-MIB.txt
+%%DATADIR%%/mibs/SNMPv2-CONF.txt
+%%DATADIR%%/mibs/SNMPv2-MIB.txt
+%%DATADIR%%/mibs/SNMPv2-SMI.txt
+%%DATADIR%%/mibs/SNMPv2-TC.txt
+%%DATADIR%%/mibs/SNMPv2-TM.txt
+%%DATADIR%%/mibs/TCP-MIB.txt
+%%DATADIR%%/mibs/TRANSPORT-ADDRESS-MIB.txt
+%%DATADIR%%/mibs/UCD-DEMO-MIB.txt
+%%DATADIR%%/mibs/UCD-DISKIO-MIB.txt
+%%DATADIR%%/mibs/UCD-DLMOD-MIB.txt
+%%DATADIR%%/mibs/UCD-IPFWACC-MIB.txt
+%%DATADIR%%/mibs/UCD-SNMP-MIB.txt
+%%DATADIR%%/mibs/UDP-MIB.txt
+ at unexec rm -f %D/%%DATADIR%%/mibs/.index 2>/dev/null || true
+%%WITH_PERL%%%%DATADIR%%/snmp_perl.pl
+%%DATADIR%%/snmpconf-data/snmp-data/authopts
+%%DATADIR%%/snmpconf-data/snmp-data/debugging
+%%DATADIR%%/snmpconf-data/snmp-data/mibs
+%%DATADIR%%/snmpconf-data/snmp-data/output
+%%DATADIR%%/snmpconf-data/snmp-data/snmpconf-config
+%%DATADIR%%/snmpconf-data/snmpd-data/acl
+%%DATADIR%%/snmpconf-data/snmpd-data/basic_setup
+%%DATADIR%%/snmpconf-data/snmpd-data/extending
+%%DATADIR%%/snmpconf-data/snmpd-data/monitor
+%%DATADIR%%/snmpconf-data/snmpd-data/operation
+%%DATADIR%%/snmpconf-data/snmpd-data/snmpconf-config
+%%DATADIR%%/snmpconf-data/snmpd-data/system
+%%DATADIR%%/snmpconf-data/snmpd-data/trapsinks
+%%DATADIR%%/snmpconf-data/snmptrapd-data/authentication
+%%DATADIR%%/snmpconf-data/snmptrapd-data/formatting
+%%DATADIR%%/snmpconf-data/snmptrapd-data/logging
+%%DATADIR%%/snmpconf-data/snmptrapd-data/runtime
+%%DATADIR%%/snmpconf-data/snmptrapd-data/snmpconf-config
+%%DATADIR%%/snmpconf-data/snmptrapd-data/traphandle
+ at dirrm %%DATADIR%%/mib2c-data/
+ at dirrm %%DATADIR%%/snmpconf-data/snmptrapd-data
+ at dirrm %%DATADIR%%/snmpconf-data/snmpd-data
+ at dirrm %%DATADIR%%/snmpconf-data/snmp-data
+ at dirrm %%DATADIR%%/snmpconf-data
+ at dirrmtry %%DATADIR%%/mibs
+ at dirrmtry %%DATADIR%%
+%%PORTDOCS%%@dirrm %%DOCSDIR%%
+%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/SNMP
+%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/default_store
+%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/agent/default_store
+%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/agent
+%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/TrapReceiver
+%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/OID
+%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP/ASN
+%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/NetSNMP
+%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/Bundle/NetSNMP
+%%WITH_PERL%%@dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/auto/Bundle
+%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/NetSNMP/agent
+%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/NetSNMP
+%%WITH_PERL%%@dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/Bundle
+ at dirrm include/net-snmp/system
+ at dirrm include/net-snmp/machine
+ at dirrm include/net-snmp/library
+ at dirrm include/net-snmp/agent
+ at dirrm include/net-snmp
+ at dirrmtry etc/snmp
--- /dev/null
+++ net-mgmt/net-snmp53/Makefile
@@ -0,0 +1,266 @@
+# New ports collection makefile for: ucd-snmp
+# Date created: 26 June 1996
+# Whom: gpalmer
+#
+# $MidnightBSD: mports/net-mgmt/net-snmp53/Makefile,v 1.1 2008/06/20 22:13:20 laffer1 Exp $
+# $FreeBSD: ports/net-mgmt/net-snmp53/Makefile,v 1.153 2008/04/28 22:54:28 sobomax Exp $
+#
+
+PORTNAME= snmp
+PORTVERSION= 5.3.2
+PORTREVISION= 0
+CATEGORIES= net-mgmt ipv6
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR= net-snmp
+PKGNAMEPREFIX= net-
+DISTNAME= ${PKGNAMEPREFIX}${PORTNAME}-${PORTVERSION}
+
+MAINTAINER= ports at MidnightBSD.org
+COMMENT= An extendable SNMP implementation
+LICENSE= other
+
+.if !defined(WITH_TKMIB)
+EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-local:Makefile.in
+.endif
+
+.if defined(WITH_TKMIB)
+RUN_DEPEND= ${SITE_PERL}/${PERL_ARCH}/Tk.pm:${PORTSDIR}/x11-toolkits/p5-Tk
+.endif
+PATCH_DEPENDS= ${LIBTOOL_DEPENDS}
+
+USE_AUTOTOOLS= autoconf:261 libtool:15
+USE_RC_SUBR= snmpd.sh snmptrapd.sh
+USE_OPENSSL= yes
+USE_LDCONFIG= yes
+NO_LATEST_LINK= yes
+.if !defined(WITHOUT_PERL)
+USE_PERL5= yes
+.endif
+
+CONFIGURE_ENV+= PERLPROG="${PERL}" PSPROG="${PS_CMD}" SED="${SED}"
+CONFIGURE_ARGS+=--enable-shared --enable-internal-md5 \
+ --with-mib-modules="${_NET_SNMP_MIB_MODULES}" \
+ --with-default-snmp-version="${DEFAULT_SNMP_VERSION}" \
+ --with-sys-contact="${NET_SNMP_SYS_CONTACT}" \
+ --with-sys-location="${NET_SNMP_SYS_LOCATION}" \
+ --with-logfile="${NET_SNMP_LOGFILE}" \
+ --with-persistent-directory="${NET_SNMP_PERSISTENTDIR}" \
+ --with-gnu-ld --with-libwrap --with-libs="-lkvm -ldevstat"
+
+.if defined(BATCH)
+CONFIGURE_ARGS+=--with-defaults
+.endif
+
+.if !defined(WITHOUT_DUMMY_VALUES)
+CONFIGURE_ARGS+=--with-dummy-values
+.endif
+
+.include <bsd.port.pre.mk>
+
+.if defined(WITHOUT_PERL)
+PLIST_SUB+= WITH_PERL="@comment "
+CONFIGURE_ARGS+=--disable-embedded-perl --without-perl-modules
+.else
+CONFIGURE_ARGS+=--enable-embedded-perl --with-perl-modules
+PLIST_SUB+= WITH_PERL=""
+.endif
+
+.if defined(WITH_TKMIB)
+PLIST_SUB+= WITH_TKMIB=""
+.else
+PLIST_SUB+= WITH_TKMIB="@comment "
+.endif
+
+.if defined(WITH_DMALLOC)
+LIB_DEPEND+= dmalloc:${PORTSDIR}/devel/dmalloc
+CONFIGURE_ARGS+=--with-dmalloc=${LOCALBASE}
+.endif
+
+.if !defined(WITHOUT_IPV6)
+CONFIGURE_ARGS+=--enable-ipv6
+# --with-transport="UDPIPv6 TCPIPv6" --with-modules=mibII/ipv6"
+PLIST_SUB+= WITH_IPV6=""
+.else
+PLIST_SUB+= WITH_IPV6="@comment "
+.endif
+
+SHLIB_VERSION= 10
+PLIST_SUB+= SHLIB_VERSION=${SHLIB_VERSION}
+SCRIPTS_SUB= PREFIX=${PREFIX} PERL=${PERL}
+
+DEFAULT_SNMP_VERSION?= 3
+NET_SNMP_SYS_CONTACT?= nobody at nowhere.invalid
+NET_SNMP_SYS_LOCATION?= somewhere
+NET_SNMP_LOGFILE?= /var/log/snmpd.log
+NET_SNMP_PERSISTENTDIR?=/var/net-snmp
+NET_SNMP_MIB_MODULES?= ${NET_SNMP_MIB_MODULE_LIST}
+
+NET_SNMP_MIB_MODULE_LIST=host disman/event-mib smux mibII/mta_sendmail mibII/tcpTable ucd-snmp/diskio
+_NET_SNMP_MIB_MODULES=
+.for module1 in ${NET_SNMP_MIB_MODULE_LIST}
+_module1=${module1}
+_define=false
+. for module2 in ${NET_SNMP_MIB_MODULES}
+_module2=${module2}
+. if ${_module1} == ${_module2}
+_define=true
+. endif
+. endfor
+. if ${_define} == true
+_NET_SNMP_MIB_MODULES+=${module1}
+PLIST_SUB+= WITH_${module1:C|.*/||:U}=""
+. else
+PLIST_SUB+= WITH_${module1:C|.*/||:U}="@comment "
+. endif
+.endfor
+
+MAN1= encode_keychange.1 fixproc.1 mib2c.1 mib2c-update.1 \
+ net-snmp-config.1 \
+ snmpbulkget.1 snmpbulkwalk.1 snmpcmd.1 snmpconf.1 \
+ snmpdelta.1 snmpdf.1 snmpget.1 snmpgetnext.1 snmpinform.1 \
+ snmpnetstat.1 snmpset.1 snmpstatus.1 snmptable.1 snmptest.1 \
+ snmptranslate.1 snmptrap.1 snmpusm.1 snmpvacm.1 snmpwalk.1 \
+ tkmib.1 traptoemail.1
+MAN3= add_mibdir.3 add_module_replacement.3 default_store.3 \
+ get_module_node.3 init_mib.3 init_mib_internals.3 mib_api.3 \
+ netsnmp_agent.3 netsnmp_bulk_to_next.3 netsnmp_debug.3 \
+ netsnmp_example_scalar_int.3 netsnmp_handler.3 \
+ netsnmp_instance.3 netsnmp_library.3 \
+ netsnmp_mib_handler_methods.3 netsnmp_mib_utilities.3 \
+ netsnmp_mode_end_call.3 netsnmp_multiplexer.3 \
+ netsnmp_old_api.3 netsnmp_read_only.3 netsnmp_scalar.3 \
+ netsnmp_serialize.3 netsnmp_table.3 netsnmp_table_array.3 \
+ netsnmp_table_data.3 netsnmp_table_dataset.3 \
+ netsnmp_table_iterator.3 netsnmp_watcher.3 \
+ print_description.3 print_mib.3 print_objid.3 print_value.3 \
+ print_variable.3 read_all_mibs.3 read_config.3 read_mib.3 \
+ read_module.3 read_module_node.3 read_objid.3 shutdown_mib.3 \
+ snmp_agent_api.3 snmp_alarm.3 snmp_api.3 \
+ snmp_api_errstring.3 snmp_close.3 \
+ snmp_error.3 snmp_free_pdu.3 snmp_open.3 snmp_perror.3 \
+ snmp_read.3 snmp_select_info.3 \
+ snmp_send.3 snmp_sess_api.3 snmp_sess_async_send.3 \
+ snmp_sess_close.3 snmp_sess_error.3 snmp_sess_init.3 \
+ snmp_sess_open.3 snmp_sess_perror.3 \
+ snmp_sess_read.3 snmp_sess_select_info.3 \
+ snmp_sess_send.3 snmp_sess_session.3 snmp_sess_timeout.3 \
+ snmp_set_mib_warnings.3 snmp_set_save_descriptions.3 \
+ snmp_timeout.3 snmp_trap_api.3 \
+ netsnmp_Container_iterator.3 \
+ netsnmp_baby_steps.3 \
+ netsnmp_cache_handler.3 netsnmp_container.3 \
+ netsnmp_iterator_info_s.3 \
+ netsnmp_leaf.3 \
+ netsnmp_row_merge.3 netsnmp_scalar_group_group.3 \
+ netsnmp_stash_cache.3 netsnmp_utilities.3
+
+.if !defined(WITHOUT_PERL)
+MAN3PERL= NetSNMP::ASN.3 NetSNMP::OID.3 NetSNMP::agent.3 \
+ NetSNMP::TrapReceiver.3 \
+ NetSNMP::agent::default_store.3 \
+ NetSNMP::default_store.3 \
+ NetSNMP::netsnmp_request_infoPtr.3 SNMP.3
+MAN3PERLPREFIX= ${PREFIX}/lib/perl5/${PERL_VERSION}
+_MANPAGES+= ${MAN3PERL:S%^%${MAN3PERLPREFIX}/man/man3/%}
+.endif
+
+MAN5= mib2c.conf.5 snmp.conf.5 snmp_config.5 snmpd.conf.5 \
+ snmpd.examples.5 snmpd.internal.5 \
+ snmptrapd.conf.5 variables.5
+MAN8= snmpd.8 snmptrapd.8
+
+BIN_FILES= snmpbulkwalk snmpget snmpgetnext snmpset \
+ snmpstatus snmptest snmptranslate snmptrap snmpwalk
+SBIN_FILES= snmpd snmptrapd
+STARTUP_DIR= ${PREFIX}/etc/rc.d
+SCRIPT_FILES= snmpcheck.def mib2c fixproc ipf-mod.pl snmpconf \
+ traptoemail
+.if defined(WITH_TKMIB)
+SCRIPT_FILES+= tkmib
+.endif
+DOC_FILES= AGENT.txt COPYING FAQ NEWS README \
+ README.agentx README.krb5 README.snmpv3 README.thread \
+ agent/mibgroup/README.smux
+
+PS_CMD?= /bin/ps
+CONFLICTS= ucd-snmp-4.* net-snmp-5.4.*
+
+pre-everything::
+ @${ECHO_MSG}
+ @${ECHO_MSG} "You may use the following build options:"
+ @${ECHO_MSG}
+ @${ECHO_MSG} "WITH_INETADDRESS_HACK=yes builds with the inetaddress hack"
+ @${ECHO_MSG} "WITH_TKMIB=yes Install a graphical Perl/Tk/SNMP based mib browser"
+ @${ECHO_MSG} "WITHOUT_DUMMY_VALUES=yes Provide 'placeholder' dummy values where"
+ @${ECHO_MSG} " the necessary information is not available."
+ @${ECHO_MSG} "WITHOUT_PERL=yes Do not install the perl modules along with the rest"
+ @${ECHO_MSG} " of the net-snmp toolkit."
+ @${ECHO_MSG} "WITHOUT_IPV6=yes Disable IPv6."
+ @${ECHO_MSG}
+ @${ECHO_MSG} "DEFAULT_SNMP_VERSION=\"3\" Default version of SNMP to use."
+ @${ECHO_MSG} "NET_SNMP_SYS_CONTACT=\"${NET_SNMP_SYS_CONTACT}\""
+ @${ECHO_MSG} " Default system contact."
+ @${ECHO_MSG} "NET_SNMP_SYS_LOCATION=\"${NET_SNMP_SYS_LOCATION}\""
+ @${ECHO_MSG} " Default system location."
+ @${ECHO_MSG} "NET_SNMP_LOGFILE=\"${NET_SNMP_LOGFILE}\""
+ @${ECHO_MSG} " Default log file location for snmpd."
+ @${ECHO_MSG} "NET_SNMP_PERSISTENTDIR=\"${NET_SNMP_PERSISTENTDIR}\""
+ @${ECHO_MSG} " Default directory for persistent data storage."
+ @${ECHO_MSG} "NET_SNMP_MIB_MODULES=\"${NET_SNMP_MIB_MODULE_LIST}\""
+ @${ECHO_MSG} " Optional mib modules that can be built into the"
+ @${ECHO_MSG} " agent"
+ @${ECHO_MSG}
+
+post-patch: patch-autoconf patch-script-files
+
+patch-autoconf:
+ @${AWK} '/@synopsis/,/taken from libtool.m4/' ${WRKSRC}/aclocal.m4 > ${WRKSRC}/aclocal.m4.tmp
+ @${CAT} ${LIBTOOL_M4} >> ${WRKSRC}/aclocal.m4.tmp
+ @${CP} ${LTMAIN} ${WRKSRC}
+ @${MV} ${WRKSRC}/aclocal.m4.tmp ${WRKSRC}/aclocal.m4
+
+patch-script-files:
+.for filename in ${SCRIPT_FILES}
+ @${REINPLACE_CMD} ${SCRIPTS_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
+ ${WRKSRC}/local/${filename}
+.endfor
+
+post-configure:
+ @${FIND} ${WRKSRC} -name Makefile | \
+ ${XARGS} ${REINPLACE_CMD} -E -e '/^INSTALL[ ]+=/s|$$| -m 755|'
+
+post-build:
+.if !defined(WITHOUT_PERL)
+ ${FIND} ${WRKSRC}/perl -name Makefile | \
+ ${XARGS} ${REINPLACE_CMD} -E -e '\
+ s!^(PREFIX) = .*!\1 = ${PREFIX}!; \
+ s!^(INSTALLMAN3DIR|INSTALLSITEMAN3DIR) = .*!\1 = ${MAN3PERLPREFIX}/man/man3!; \
+ s!^(INSTALLSITELIB|INSTALLSITEARCH) = /usr/local/(.*)!\1 = ${PREFIX}/\2!; \
+ s! doc_(perl|site|\$$\(INSTALLDIRS\))_install$$!!; \
+ '
+.else
+ ${REINPLACE_CMD} -e 's| perlinstall||' ${WRKSRC}/Makefile
+.endif
+
+post-install: strip-files install-config-files install-doc-files
+
+strip-files:
+ @cd ${PREFIX}/bin; ${STRIP_CMD} ${BIN_FILES}
+ @cd ${PREFIX}/sbin; ${STRIP_CMD} ${SBIN_FILES}
+
+install-config-files:
+ @${INSTALL_DATA} ${WRKSRC}/EXAMPLE.conf ${DATADIR}/snmpd.conf.example
+
+install-doc-files:
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+. for filename in ${DOC_FILES}
+ @${INSTALL_DATA} ${WRKSRC}/${filename} ${DOCSDIR}
+. endfor
+.endif
+
+# Maintainer's note:
+# Don't forget to bump library version in these ports.
+# french/plgrenouille,graphics/hpoj,lang/php4,lang/php5,mail/cyrus-imapd22,mail/cyrus-imapd23,misc/kdeutils3,net-mgmt/braa,net-mgmt/docsis,net-mgmt/mbrowse,net-mgmt/nagios-snmp-plugins,net-mgmt/p5-SNMP-Info,net-mgmt/py-yapsnmp,net-mgmt/sdig,net-mgmt/zabbix,net/cactid,net/wireshark,net/ifstat,net/quagga,net/rtg,print/hplip,security/libfwbuilder,sysutils/apcupsd,sysutils/jailadmin,sysutils/nut
+
+.include <bsd.port.post.mk>
--- /dev/null
+++ net-mgmt/net-snmp53/distinfo
@@ -0,0 +1,3 @@
+MD5 (net-snmp-5.3.2.tar.gz) = 978b9c5e26a36806945761b8ad0a0ecb
+SHA256 (net-snmp-5.3.2.tar.gz) = 8171e0592b8c7e5dbb4009a44843c9b7f3b089f4685555578a0f3eeb849d49e7
+SIZE (net-snmp-5.3.2.tar.gz) = 4320436
Index: Makefile
===================================================================
RCS file: /home/cvs/mports/net-mgmt/Makefile,v
retrieving revision 1.13
retrieving revision 1.14
diff -L net-mgmt/Makefile -L net-mgmt/Makefile -u -r1.13 -r1.14
--- net-mgmt/Makefile
+++ net-mgmt/Makefile
@@ -19,6 +19,7 @@
SUBDIR += php5-snmp
SUBDIR += net-snmp
SUBDIR += net-snmp4
+ SUBDIR += net-snmp53
SUBDIR += nipper
SUBDIR += softflowd
SUBDIR += subcalc
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-snmpTCPIPv6Domain.c
@@ -0,0 +1,35 @@
+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 addr[NI_MAXHOST], tmp[NI_MAXHOST + NI_MAXSERV + 12];
+
+- sprintf(tmp, "TCP/IPv6: [%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 at FreeBSD.org)
++ */
++#ifndef NI_WITHSCOPEID
++#define NI_WITHSCOPEID 0
++#endif
++ 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);
+ }
+ }
+
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-net-snmp-includes.h
@@ -0,0 +1,13 @@
+--- include/net-snmp/net-snmp-includes.h.orig Mon Jan 24 08:24:47 2005
++++ include/net-snmp/net-snmp-includes.h Mon Jan 24 08:25:11 2005
+@@ -49,6 +49,10 @@
+ # endif
+ #endif
+
++#if HAVE_UNISTD_H
++#include <unistd.h>
++#endif
++
+ /*
+ * Must be right after system headers, but before library code for best usage
+ */
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-freebsd7.h
@@ -0,0 +1,4 @@
+--- include/net-snmp/system/freebsd7.h.orig Sun Jul 17 22:41:06 2005
++++ include/net-snmp/system/freebsd7.h Sun Jul 17 22:41:28 2005
+@@ -0,0 +1 @@
++#include "freebsd6.h"
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-mib.c
@@ -0,0 +1,12 @@
+--- snmplib/mib.c.orig Tue Jan 25 10:01:11 2005
++++ snmplib/mib.c Tue Jan 25 10:02:02 2005
+@@ -75,6 +75,9 @@
+ #include <winsock.h>
+ #endif
+
++#if HAVE_UNISTD_H
++#include <unistd.h>
++#endif
+ #if HAVE_DMALLOC_H
+ #include <dmalloc.h>
+ #endif
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-snmp_debug.c
@@ -0,0 +1,12 @@
+--- snmplib/snmp_debug.c.orig Tue Jan 25 10:10:49 2005
++++ snmplib/snmp_debug.c Tue Jan 25 10:11:06 2005
+@@ -22,6 +22,9 @@
+ #include <winsock.h>
+ #endif
+
++#if HAVE_UNISTD_H
++#include <unistd.h>
++#endif
+ #if HAVE_DMALLOC_H
+ #include <dmalloc.h>
+ #endif
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-parse.c
@@ -0,0 +1,12 @@
+--- snmplib/parse.c.orig Tue Jan 25 10:04:35 2005
++++ snmplib/parse.c Tue Jan 25 10:05:02 2005
+@@ -106,6 +106,9 @@
+ #if defined(HAVE_REGEX_H) && defined(HAVE_REGCOMP)
+ #include <regex.h>
+ #endif
++#if HAVE_UNISTD_H
++#include <unistd.h>
++#endif
+ #if HAVE_DMALLOC_H
+ #include <dmalloc.h>
+ #endif
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-hr_storage.c
@@ -0,0 +1,233 @@
+--- agent/mibgroup/host/hr_storage.c.orig 2007-06-08 19:33:58.000000000 +0900
++++ agent/mibgroup/host/hr_storage.c 2008-01-11 21:37:48.767962726 +0900
+@@ -229,7 +229,7 @@
+ mach_port_t myHost;
+ #endif
+
+-static int physmem, pagesize;
++static u_long physmem, pagesize;
+ static void parse_storage_config(const char *, char *);
+
+ /*********************
+@@ -252,6 +252,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
+@@ -499,7 +503,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 */
+ };
+
+
+@@ -647,6 +652,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:
+@@ -752,7 +758,7 @@
+ long_return = memory_totals.t_vm;
+ #endif
+ break;
+-#else /* !linux && !solaris2 && !hpux10 && !hpux11 && ... */
++#else
+ case HRS_TYPE_MEM:
+ long_return = physmem;
+ break;
+@@ -774,13 +780,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;
+@@ -856,6 +894,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
+@@ -863,6 +907,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;
+@@ -889,7 +938,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:
+@@ -1015,6 +1068,100 @@
+ }
+ #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
++
+ #ifdef WIN32
+ char *win_realpath(const char *file_name, char *resolved_name)
+ {
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-ipv6.c
@@ -0,0 +1,603 @@
+--- 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
+@@ -8,10 +8,25 @@
+ #define _KERNEL 1
+ #define _I_DEFINED_KERNEL
+ #endif
++
++/* make this source a wee bit more readable */
++#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
++#define OS_NET_BSD_16_OR_LATER 1
++#endif
++#if !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(darwin)
++#define OS_NOT_FREEBSD_NOR_DARWIN 1
++#endif
++#if (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
++#define OS_FREEBSD_OR_DARWIN 1
++#if !defined(INP_IPV6PROTO)
++#define INP_IPV6PROTO 0x04
++#endif
++#endif
++
+ #include <sys/types.h>
+ #include <sys/param.h>
+ #include <sys/socket.h>
+-#if (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
++#if OS_FREEBSD_OR_DARWIN
+ # if HAVE_SYS_SOCKETVAR_H
+ # include <sys/socketvar.h>
+ # endif
+@@ -80,7 +95,7 @@
+ # include <netinet6/ip6_var.h>
+ #endif
+ #include <net/route.h>
+-#if (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
++#if OS_FREEBSD_OR_DARWIN
+ # if HAVE_NETINET_IN_PCB_H
+ # include <netinet/in_pcb.h>
+ # endif
+@@ -575,7 +590,7 @@
+ memcpy(result, &tmp, sizeof(tmp));
+ return 0;
+ }
+-#if (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
++#if OS_FREEBSD_OR_DARWIN
+ q = (caddr_t) TAILQ_NEXT(&tmp, if_link);
+ #else
+ # if defined(__NetBSD__) || defined(__OpenBSD__)
+@@ -806,7 +821,7 @@
+
+ if (if_getifnet(interface, &ifnet) < 0)
+ break;
+-#if (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
++#if OS_FREEBSD_OR_DARWIN
+ ifa = (caddr_t) TAILQ_FIRST(&ifnet.if_addrhead);
+ #else
+ # if defined(__NetBSD__) || defined(__OpenBSD__)
+@@ -827,7 +842,7 @@
+ *var_len = sdl.sdl_alen;
+ return (u_char *) (sdl.sdl_data + sdl.sdl_nlen);
+ }
+-#if (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
++#if OS_FREEBSD_OR_DARWIN
+ ifa = (caddr_t) TAILQ_NEXT(&ifaddr, ifa_link);
+ #else
+ # if defined(__NetBSD__) || defined(__OpenBSD__)
+@@ -1220,32 +1235,33 @@
+ size_t * length,
+ int exact, size_t * var_len, WriteMethod ** write_method)
+ {
+- oid newname[MAX_OID_LEN];
+- oid savname[MAX_OID_LEN];
++ oid newname[MAX_OID_LEN], savname[MAX_OID_LEN];
+ int result;
+ int i, j;
+ caddr_t p;
+- static struct in6pcb in6pcb, savpcb;
++ static struct in6pcb tstpcb, savpcb;
+ int found, savnameLen;
+-#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
++#if OS_NOT_FREEBSD_NOR_DARWIN
++ static struct in6pcb udb6;
++#endif
++#if OS_NET_BSD_16_OR_LATER
+ struct inpcbtable udbtable;
+ caddr_t first;
+-#elif (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
++#endif
++#if OS_FREEBSD_OR_DARWIN
+ char *sysctl_buf;
+ struct xinpgen *xig, *oxig;
+-#else
+- static struct in6pcb udb6;
+ #endif
+
+ DEBUGMSGTL(("mibII/ipv6", "var_udp6: "));
+ DEBUGMSGOID(("mibII/ipv6", name, *length));
+ DEBUGMSG(("mibII/ipv6", " %d\n", exact));
+
+-#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
++#if OS_NET_BSD_16_OR_LATER
+ if (!auto_nlist("udbtable", (char *) &udbtable, sizeof(udbtable)))
+ return NULL;
+ first = p = (caddr_t)udbtable.inpt_queue.cqh_first;
+-#elif !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(darwin)
++#elif OS_NOT_FREEBSD_NOR_DARWIN
+ if (!auto_nlist("udb6", (char *) &udb6, sizeof(udb6)))
+ return NULL;
+ p = (caddr_t) udb6.in6p_next;
+@@ -1274,9 +1290,10 @@
+ (int) vp->namelen * sizeof(oid));
+ DEBUGMSGTL(("mibII/ipv6", "start: p=%x\n", p));
+ while (
+-#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
++#if OS_NET_BSD_16_OR_LATER
+ p && p != first
+-#elif !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(darwin)
++#elif OS_NOT_FREEBSD_NOR_DARWIN
++
+ p && (u_long) p != auto_nlist_value("udb6")
+ #else
+ xig->xig_len > sizeof(struct xinpgen)
+@@ -1284,31 +1301,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 OS_NOT_FREEBSD_NOR_DARWIN
++ if (klookup((u_long) p, (char *) &tstpcb, sizeof(tstpcb)) < 0) {
+ DEBUGMSGTL(("mibII/ipv6", "klookup fail for udb6 at %x\n",
+ p));
+ found = 0;
+ break;
+ }
+ #else
+- in6pcb = ((struct xinpcb *) xig)->xi_inp;
++ tstpcb = ((struct xinpcb *) xig)->xi_inp;
+ #endif
+-#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
+- if (in6pcb.in6p_af != AF_INET6)
++#if OS_NET_BSD_16_OR_LATER
++ if (tstpcb.in6p_af != AF_INET6) {
++ p = (caddr_t)tstpcb.in6p_queue.cqe_next;
+ goto skip;
+-#elif (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
+- if (0 == (in6pcb.inp_vflag & INP_IPV6))
++#elif OS_FREEBSD_OR_DARWIN
++ if (0 == (tstpcb.inp_vflag & INP_IPV6PROTO))
+ goto skip;
+ #endif
+
+ j = (int) vp->namelen;
+ for (i = 0; i < sizeof(struct in6_addr); i++)
+- newname[j++] = in6pcb.in6p_laddr.s6_addr[i];
+- newname[j++] = ntohs(in6pcb.in6p_lport);
+- if (IN6_IS_ADDR_LINKLOCAL(&in6pcb.in6p_laddr))
++ newname[j++] = tstpcb.in6p_laddr.s6_addr[i];
++ newname[j++] = ntohs(tstpcb.in6p_lport);
++ if (IN6_IS_ADDR_LINKLOCAL(&tstpcb.in6p_laddr))
+ newname[j++] =
+- ntohs(*(uint16_t *) & in6pcb.in6p_laddr.s6_addr[2]);
++ ntohs(*(uint16_t *) & tstpcb.in6p_laddr.s6_addr[2]);
+ else
+ newname[j++] = 0;
+ /*XXX*/
+@@ -1319,7 +1337,7 @@
+
+ result = snmp_oid_compare(name, *length, newname, j);
+ if (exact && (result == 0)) {
+- memcpy(&savpcb, &in6pcb, sizeof(savpcb));
++ memcpy(&savpcb, &tstpcb, sizeof(savpcb));
+ savnameLen = j;
+ memcpy(savname, newname, j * sizeof(oid));
+ found++;
+@@ -1330,7 +1348,7 @@
+ */
+ if ((savnameLen == 0) ||
+ (snmp_oid_compare(savname, savnameLen, newname, j) > 0)) {
+- memcpy(&savpcb, &in6pcb, sizeof(savpcb));
++ memcpy(&savpcb, &tstpcb, sizeof(savpcb));
+ savnameLen = j;
+ memcpy(savname, newname, j * sizeof(oid));
+ found++;
+@@ -1338,15 +1356,15 @@
+ }
+
+ skip:
+-#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
+- p = (caddr_t)in6pcb.in6p_queue.cqe_next;
+-#elif !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(darwin)
+- p = (caddr_t) in6pcb.in6p_next;
++#if OS_NET_BSD_16_OR_LATER
++ p = (caddr_t)tstpcb.in6p_queue.cqe_next;
++#elif OS_NOT_FREEBSD_NOR_DARWIN
++ p = (caddr_t) tstpcb.in6p_next;
+ #else
+ xig = (struct xinpgen *) ((char *) xig + xig->xig_len);
+ #endif
+ }
+-#if (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
++#if OS_FREEBSD_OR_DARWIN
+ free(sysctl_buf);
+ #endif
+ DEBUGMSGTL(("mibII/ipv6", "found=%d\n", found));
+@@ -1354,7 +1372,7 @@
+ return NULL;
+ *length = savnameLen;
+ memcpy((char *) name, (char *) savname, *length * sizeof(oid));
+- memcpy(&in6pcb, &savpcb, sizeof(savpcb));
++ memcpy(&tstpcb, &savpcb, sizeof(savpcb));
+ *write_method = 0;
+ *var_len = sizeof(long); /* default to 'long' results */
+
+@@ -1367,14 +1385,14 @@
+ switch (vp->magic) {
+ case IPV6UDPLOCALADDRESS:
+ *var_len = sizeof(struct in6_addr);
+- return in6pcb.in6p_laddr.s6_addr;
++ return savpcb.in6p_laddr.s6_addr;
+ case IPV6UDPLOCALPORT:
+- long_return = ntohs(in6pcb.in6p_lport);
++ long_return = ntohs(savpcb.in6p_lport);
+ return (u_char *) & long_return;
+ case IPV6UDPIFINDEX:
+- if (IN6_IS_ADDR_LINKLOCAL(&in6pcb.in6p_laddr))
++ if (IN6_IS_ADDR_LINKLOCAL(&savpcb.in6p_laddr))
+ long_return =
+- ntohs(*(uint16_t *) & in6pcb.in6p_laddr.s6_addr[2]);
++ ntohs(*(uint16_t *) & savpcb.in6p_laddr.s6_addr[2]);
+ else
+ long_return = 0;
+ /*XXX*/ return (u_char *) & long_return;
+@@ -1392,24 +1410,24 @@
+ size_t * length,
+ int exact, size_t * var_len, WriteMethod ** write_method)
+ {
+- oid newname[MAX_OID_LEN];
+- oid savname[MAX_OID_LEN];
++ oid newname[MAX_OID_LEN], savname[MAX_OID_LEN];
+ int result;
+ int i, j;
+ caddr_t p;
+- static struct in6pcb in6pcb, savpcb;
++ static struct in6pcb tstpcb, savpcb;
+ struct tcp6cb tcp6cb;
+ int found, savnameLen;
+ static int tcp6statemap[TCP6_NSTATES];
+ static int initialized = 0;
+-#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
++#if OS_NOT_FREEBSD_NOR_DARWIN
++ static struct in6pcb tcb6;
++#endif
++#if OS_NET_BSD_16_OR_LATER
+ struct inpcbtable tcbtable;
+ caddr_t first;
+-#elif (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
++#elif OS_FREEBSD_OR_DARWIN
+ char *sysctl_buf;
+ struct xinpgen *xig, *oxig;
+-#else
+- static struct in6pcb tcb6;
+ #endif
+
+ if (!initialized) {
+@@ -1431,11 +1449,11 @@
+ DEBUGMSGOID(("mibII/ipv6", name, *length));
+ DEBUGMSG(("mibII/ipv6", " %d\n", exact));
+
+-#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
++#if OS_NET_BSD_16_OR_LATER
+ if (!auto_nlist("tcbtable", (char *) &tcbtable, sizeof(tcbtable)))
+ return NULL;
+ first = p = (caddr_t)tcbtable.inpt_queue.cqh_first;
+-#elif !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(darwin)
++#elif OS_NOT_FREEBSD_NOR_DARWIN
+ if (!auto_nlist("tcb6", (char *) &tcb6, sizeof(tcb6)))
+ return NULL;
+ p = (caddr_t) tcb6.in6p_next;
+@@ -1464,9 +1482,10 @@
+ (int) vp->namelen * sizeof(oid));
+ DEBUGMSGTL(("mibII/ipv6", "start: p=%x\n", p));
+ while (
+-#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
++#if OS_NET_BSD_16_OR_LATER
+ p && p != first
+-#elif !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(darwin)
++#elif OS_NOT_FREEBSD_NOR_DARWIN
++
+ p && (u_long) p != auto_nlist_value("tcb6")
+ #else
+ xig->xig_len > sizeof(struct xinpgen)
+@@ -1474,41 +1493,41 @@
+ ) {
+ 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) {
+ DEBUGMSGTL(("mibII/ipv6", "klookup fail for tcb6 at %x\n",
+ p));
+ found = 0;
+ break;
+ }
+ #else
+- in6pcb = ((struct xinpcb *) xig)->xi_inp;
++ tstpcb = ((struct xinpcb *) xig)->xi_inp;
+ #endif
+-#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
+- if (in6pcb.in6p_af != AF_INET6)
++#if OS_NET_BSD_16_OR_LATER
++ if (tstpcb.in6p_af != AF_INET6)
+ goto skip;
+-#elif (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
+- if (0 == (in6pcb.inp_vflag & INP_IPV6))
++#elif OS_FREEBSD_OR_DARWIN
++ 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) {
+ DEBUGMSGTL(("mibII/ipv6", "klookup fail for tcb6.tcp6cb at %x\n",
+- in6pcb.in6p_ppcb));
++ tstpcb.in6p_ppcb));
+ found = 0;
+ break;
+ }
+ j = (int) vp->namelen;
+ for (i = 0; i < sizeof(struct in6_addr); i++)
+- newname[j++] = in6pcb.in6p_laddr.s6_addr[i];
+- newname[j++] = ntohs(in6pcb.in6p_lport);
++ newname[j++] = tstpcb.in6p_laddr.s6_addr[i];
++ newname[j++] = ntohs(tstpcb.in6p_lport);
+ for (i = 0; i < sizeof(struct in6_addr); i++)
+- newname[j++] = in6pcb.in6p_faddr.s6_addr[i];
+- newname[j++] = ntohs(in6pcb.in6p_fport);
+- if (IN6_IS_ADDR_LINKLOCAL(&in6pcb.in6p_laddr))
++ newname[j++] = tstpcb.in6p_faddr.s6_addr[i];
++ newname[j++] = ntohs(tstpcb.in6p_fport);
++ if (IN6_IS_ADDR_LINKLOCAL(&tstpcb.in6p_laddr))
+ newname[j++] =
+- ntohs(*(uint16_t *) & in6pcb.in6p_laddr.s6_addr[2]);
++ ntohs(*(uint16_t *) & tstpcb.in6p_laddr.s6_addr[2]);
+ else
+ newname[j++] = 0;
+ /*XXX*/ newname[j++] = tcp6statemap[tcp6cb.t_state];
+@@ -1519,13 +1538,13 @@
+ DEBUGMSG(("mibII/ipv6", " %d\n", exact));
+
+ #if 1 /* this is very odd but sometimes happen, and cause infinite loop */
+- if (ntohs(in6pcb.in6p_lport) == 0)
++ if (ntohs(tstpcb.in6p_lport) == 0)
+ goto skip;
+ #endif
+
+ result = snmp_oid_compare(name, *length, newname, j);
+ if (exact && (result == 0)) {
+- memcpy(&savpcb, &in6pcb, sizeof(savpcb));
++ memcpy(&savpcb, &tstpcb, sizeof(savpcb));
+ savnameLen = j;
+ memcpy(savname, newname, j * sizeof(oid));
+ found++;
+@@ -1536,7 +1555,7 @@
+ */
+ if ((savnameLen == 0) ||
+ (snmp_oid_compare(savname, savnameLen, newname, j) > 0)) {
+- memcpy(&savpcb, &in6pcb, sizeof(savpcb));
++ memcpy(&savpcb, &tstpcb, sizeof(savpcb));
+ savnameLen = j;
+ memcpy(savname, newname, j * sizeof(oid));
+ found++;
+@@ -1544,15 +1563,15 @@
+ }
+
+ skip:
+-#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
+- p = (caddr_t)in6pcb.in6p_queue.cqe_next;
+-#elif !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(darwin)
+- p = (caddr_t) in6pcb.in6p_next;
++#if OS_NET_BSD_16_OR_LATER
++ p = (caddr_t)tstpcb.in6p_queue.cqe_next;
++#elif OS_NOT_FREEBSD_NOR_DARWIN
++ p = (caddr_t) tstpcb.in6p_next;
+ #else
+ xig = (struct xinpgen *) ((char *) xig + xig->xig_len);
+ #endif
+ }
+-#if (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
++#if OS_FREEBSD_OR_DARWIN
+ free(sysctl_buf);
+ #endif
+ DEBUGMSGTL(("mibII/ipv6", "found=%d\n", found));
+@@ -1573,20 +1592,20 @@
+ switch (vp->magic) {
+ case IPV6TCPLOCALADDR:
+ *var_len = sizeof(struct in6_addr);
+- return (u_char *) & in6pcb.in6p_laddr.s6_addr[0];
++ return (u_char *) & savpcb.in6p_laddr.s6_addr[0];
+ case IPV6TCPLOCALPORT:
+- long_return = ntohs(in6pcb.in6p_lport);
++ long_return = ntohs(savpcb.in6p_lport);
+ return (u_char *) & long_return;
+ case IPV6TCPREMOTEADDR:
+ *var_len = sizeof(struct in6_addr);
+- return (u_char *) & in6pcb.in6p_faddr.s6_addr[0];
++ return (u_char *) & savpcb.in6p_faddr.s6_addr[0];
+ case IPV6TCPREMOTEPORT:
+- long_return = ntohs(in6pcb.in6p_fport);
++ long_return = ntohs(savpcb.in6p_fport);
+ return (u_char *) & long_return;
+ case IPV6TCPIFINDEX:
+- if (IN6_IS_ADDR_LINKLOCAL(&in6pcb.in6p_laddr))
++ if (IN6_IS_ADDR_LINKLOCAL(&savpcb.in6p_laddr))
+ long_return =
+- ntohs(*(uint16_t *) & in6pcb.in6p_laddr.s6_addr[2]);
++ ntohs(*(uint16_t *) & savpcb.in6p_laddr.s6_addr[2]);
+ else
+ long_return = 0;
+ /*XXX*/ return (u_char *) & long_return;
+@@ -1633,22 +1652,23 @@
+ size_t * length,
+ int exact, size_t * var_len, WriteMethod ** write_method)
+ {
+- oid newname[MAX_OID_LEN];
+- oid savname[MAX_OID_LEN];
++ oid newname[MAX_OID_LEN], savname[MAX_OID_LEN];
+ int result;
+ int i, j;
+ caddr_t p;
+- static struct in6pcb in6pcb, savpcb;
++ static struct in6pcb tstpcb, savpcb;
+ struct tcpcb tcpcb;
+ int found, savnameLen;
+-#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
++#if OS_NOT_FREEBSD_NOR_DARWIN
++ static struct in6pcb tcb6;
++#endif
++#if OS_NET_BSD_16_OR_LATER
+ struct inpcbtable tcbtable;
+ caddr_t first;
+-#elif (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
++#endif
++#if OS_FREEBSD_OR_DARWIN
+ char *sysctl_buf;
+ struct xinpgen *xig, *oxig;
+-#else
+- static struct in6pcb tcb6;
+ #endif
+
+ DEBUGMSGTL(("mibII/ipv6", "var_tcp6: "));
+@@ -1688,9 +1708,9 @@
+ (int) vp->namelen * sizeof(oid));
+ DEBUGMSGTL(("mibII/ipv6", "start: p=%x\n", p));
+ while (
+-#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
++#if OS_NET_BSD_16_OR_LATER
+ p && p != first
+-#elif !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(darwin)
++#elif OS_NOT_FREEBSD_NOR_DARWIN
+ p && (u_long) p != auto_nlist_value("tcb6")
+ #else
+ xig->xig_len > sizeof(struct xinpgen)
+@@ -1698,41 +1718,41 @@
+ ) {
+ 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) {
+ DEBUGMSGTL(("mibII/ipv6", "klookup fail for tcb6 at %x\n",
+ p));
+ found = 0;
+ break;
+ }
+ #else
+- in6pcb = ((struct xinpcb *) xig)->xi_inp;
++ tstpcb = ((struct xinpcb *) xig)->xi_inp;
+ #endif
+-#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
+- if (in6pcb.in6p_af != AF_INET6)
++#if OS_NET_BSD_16_OR_LATER
++ if (tstpcb.in6p_af != AF_INET6)
+ goto skip;
+-#elif (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
+- if (0 == (in6pcb.inp_vflag & INP_IPV6))
++#elif OS_FREEBSD_OR_DARWIN
++ 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",
+- in6pcb.in6p_ppcb));
++ DEBUGMSGTL(("mibII/ipv6", "klookup fail for tcb6.tcp6cb at %x\n",
++ tstpcb.in6p_ppcb));
+ found = 0;
+ break;
+ }
+ j = (int) vp->namelen;
+ for (i = 0; i < sizeof(struct in6_addr); i++)
+- newname[j++] = in6pcb.in6p_laddr.s6_addr[i];
+- newname[j++] = ntohs(in6pcb.in6p_lport);
++ newname[j++] = tstpcb.in6p_laddr.s6_addr[i];
++ newname[j++] = ntohs(tstpcb.in6p_lport);
+ for (i = 0; i < sizeof(struct in6_addr); i++)
+- newname[j++] = in6pcb.in6p_faddr.s6_addr[i];
+- newname[j++] = ntohs(in6pcb.in6p_fport);
+- if (IN6_IS_ADDR_LINKLOCAL(&in6pcb.in6p_laddr))
++ newname[j++] = tstpcb.in6p_faddr.s6_addr[i];
++ newname[j++] = ntohs(tstpcb.in6p_fport);
++ if (IN6_IS_ADDR_LINKLOCAL(&tstpcb.in6p_laddr))
+ newname[j++] =
+- ntohs(*(uint16_t *) & in6pcb.in6p_laddr.s6_addr[2]);
++ ntohs(*(uint16_t *) & tstpcb.in6p_laddr.s6_addr[2]);
+ else
+ newname[j++] = 0;
+ /*XXX*/ newname[j++] = mapTcpState((int)tcpcb.t_state);
+@@ -1743,12 +1763,12 @@
+ DEBUGMSG(("mibII/ipv6", " %d\n", exact));
+
+ #if 1 /* this is very odd but sometimes happen, and cause infinite loop */
+- if (ntohs(in6pcb.in6p_lport) == 0)
++ if (ntohs(tstpcb.in6p_lport) == 0)
+ goto skip;
+ #endif
+ result = snmp_oid_compare(name, *length, newname, j);
+ if (exact && (result == 0)) {
+- memcpy(&savpcb, &in6pcb, sizeof(savpcb));
++ memcpy(&savpcb, &tstpcb, sizeof(savpcb));
+ savnameLen = j;
+ memcpy(savname, newname, j * sizeof(oid));
+ found++;
+@@ -1759,7 +1779,7 @@
+ */
+ if ((savnameLen == 0) ||
+ (snmp_oid_compare(savname, savnameLen, newname, j) > 0)) {
+- memcpy(&savpcb, &in6pcb, sizeof(savpcb));
++ memcpy(&savpcb, &tstpcb, sizeof(savpcb));
+ savnameLen = j;
+ memcpy(savname, newname, j * sizeof(oid));
+ found++;
+@@ -1767,15 +1787,15 @@
+ }
+
+ skip:
+-#if defined(__NetBSD__) && __NetBSD_Version__ >= 106250000 /*1.6Y*/
+- p = (caddr_t)in6pcb.in6p_queue.cqe_next;
+-#elif !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(darwin)
+- p = (caddr_t) in6pcb.in6p_next;
++#if OS_NET_BSD_16_OR_LATER
++ p = (caddr_t)tstpcb.in6p_queue.cqe_next;
++#elif OS_NOT_FREEBSD_NOR_DARWIN
++ p = (caddr_t) tstpcb.in6p_next;
+ #else
+ xig = (struct xinpgen *) ((char *) xig + xig->xig_len);
+ #endif
+ }
+-#if (defined(__FreeBSD__) && __FreeBSD__ >= 3) || defined(darwin)
++#if OS_FREEBSD_OR_DARWIN
+ free(sysctl_buf);
+ #endif
+ DEBUGMSGTL(("mibII/ipv6", "found=%d\n", found));
+@@ -1783,7 +1803,7 @@
+ return NULL;
+ *length = savnameLen;
+ memcpy((char *) name, (char *) savname, *length * sizeof(oid));
+- memcpy(&in6pcb, &savpcb, sizeof(savpcb));
++ memcpy(&tstpcb, &savpcb, sizeof(savpcb));
+ *write_method = 0;
+ *var_len = sizeof(long); /* default to 'long' results */
+
+@@ -1796,20 +1816,20 @@
+ switch (vp->magic) {
+ case IPV6TCPLOCALADDR:
+ *var_len = sizeof(struct in6_addr);
+- return (u_char *) & in6pcb.in6p_laddr.s6_addr[0];
++ return (u_char *) & savpcb.in6p_laddr.s6_addr[0];
+ case IPV6TCPLOCALPORT:
+- long_return = ntohs(in6pcb.in6p_lport);
++ long_return = ntohs(savpcb.in6p_lport);
+ return (u_char *) & long_return;
+ case IPV6TCPREMOTEADDR:
+ *var_len = sizeof(struct in6_addr);
+- return (u_char *) & in6pcb.in6p_faddr.s6_addr[0];
++ return (u_char *) & savpcb.in6p_faddr.s6_addr[0];
+ case IPV6TCPREMOTEPORT:
+- long_return = ntohs(in6pcb.in6p_fport);
++ long_return = ntohs(savpcb.in6p_fport);
+ return (u_char *) & long_return;
+ case IPV6TCPIFINDEX:
+- if (IN6_IS_ADDR_LINKLOCAL(&in6pcb.in6p_laddr))
++ if (IN6_IS_ADDR_LINKLOCAL(&savpcb.in6p_laddr))
+ long_return =
+- ntohs(*(uint16_t *) & in6pcb.in6p_laddr.s6_addr[2]);
++ ntohs(*(uint16_t *) & savpcb.in6p_laddr.s6_addr[2]);
+ else
+ long_return = 0;
+ /*XXX*/ return (u_char *) & long_return;
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-snmp_agent.c
@@ -0,0 +1,13 @@
+Index: agent/snmp_agent.c
+diff -u -p agent/snmp_agent.c.orig agent/snmp_agent.c
+--- agent/snmp_agent.c.orig Thu Aug 16 22:31:40 2007
++++ agent/snmp_agent.c Fri Jan 11 13:06:27 2008
+@@ -819,7 +819,7 @@ netsnmp_agent_check_packet(netsnmp_sessi
+ }
+ #ifdef USE_LIBWRAP
+ /* Catch udp,udp6,tcp,tcp6 transports using "[" */
+- tcpudpaddr = strstr(addr_string, "[");
++ tcpudpaddr = strrchr(addr_string, '[');
+ if ( tcpudpaddr != 0 ) {
+ char sbuf[64];
+ char *xp;
--- /dev/null
+++ net-mgmt/net-snmp53/files/extra-patch-local:Makefile.in
@@ -0,0 +1,11 @@
+--- local/Makefile.in.orig Tue Oct 11 03:47:48 2005
++++ local/Makefile.in Wed Nov 30 11:32:52 2005
+@@ -16,7 +16,7 @@
+ #
+ SNMPCONFPATH=@SNMPCONFPATH@
+ PERSISTENT_DIRECTORY=@PERSISTENT_DIRECTORY@
+-PERLSCRIPTS=snmpcheck tkmib mib2c fixproc ipf-mod.pl snmpconf traptoemail
++PERLSCRIPTS=snmpcheck mib2c fixproc ipf-mod.pl snmpconf traptoemail
+ SHELLSCRIPTS=mib2c-update
+ SCRIPTSMADEFORPERL=snmpcheck.made tkmib.made mib2c.made fixproc.made \
+ ipf-mod.pl.made snmpconf.made traptoemail.made
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-local:traptoemail
@@ -0,0 +1,16 @@
+--- local/traptoemail.orig Thu May 29 05:30:19 2003
++++ local/traptoemail Thu May 29 05:35:13 2003
+@@ -1,11 +1,11 @@
+-#!/usr/bin/perl
++#!%%PERL%%
+
+ # This is a snmptrapd handler script to convert snmp traps into email
+ # messages.
+
+ # Usage:
+ # Put a line like the following in your snmptrapd.conf file:
+-# traphandle TRAPOID|default /usr/local/bin/traptoemail [-f FROM] [-s SMTPSERVER]b ADDRESSES
++# traphandle TRAPOID|default %%PREFIX%%/bin/traptoemail [-f FROM] [-s SMTPSERVER]b ADDRESSES
+ # FROM defaults to "root"
+ # SMTPSERVER defaults to "localhost"
+
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-local:tkmib
@@ -0,0 +1,9 @@
+--- local/tkmib.orig Thu May 29 05:30:19 2003
++++ local/tkmib Thu May 29 05:31:46 2003
+@@ -1,5 +1,4 @@
+-#!/usr/bin/perl
+-#!/usr/bin/perl -w
++#!%%PERL%% -w
+
+ require 5;
+
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-interface_ioctl.c
@@ -0,0 +1,13 @@
+--- ./agent/mibgroup/if-mib/data_access/interface_ioctl.c.orig Mon Oct 25 12:57:23 2004
++++ ./agent/mibgroup/if-mib/data_access/interface_ioctl.c Mon Oct 25 12:56:33 2004
+@@ -385,6 +385,10 @@
+ if (rc < 0)
+ return 0;
+
++#if defined(__FreeBSD__)
++ return ifrq.ifr_index;
++#else
+ return ifrq.ifr_ifindex;
++#endif
+ #endif /* SIOCGIFINDEX */
+ }
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-callback.c
@@ -0,0 +1,12 @@
+--- snmplib/callback.c.orig Tue Jan 25 10:19:39 2005
++++ snmplib/callback.c Tue Jan 25 10:19:53 2005
+@@ -34,6 +34,9 @@
+ #include <strings.h>
+ #endif
+
++#if HAVE_UNISTD_H
++#include <unistd.h>
++#endif
+ #if HAVE_DMALLOC_H
+ #include <dmalloc.h>
+ #endif
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-interfaces.c
@@ -0,0 +1,157 @@
+--- agent/mibgroup/mibII/interfaces.c.orig Wed Oct 26 00:52:19 2005
++++ agent/mibgroup/mibII/interfaces.c Tue Feb 27 20:44:48 2007
+@@ -395,6 +395,133 @@
+ return NULL;
+ }
+
++#if defined(freebsd2)
++static char *physaddrbuf;
++static int nphysaddrs;
++struct sockaddr_dl **physaddrs;
++
++void
++init_interfaces_setup(void)
++{
++ int naddrs, ilen, bit;
++ static int mib[6]
++ = { CTL_NET, PF_ROUTE, 0, AF_LINK, NET_RT_IFLIST, 0 };
++ char *cp;
++ size_t len;
++ struct rt_msghdr *rtm;
++ struct if_msghdr *ifm;
++ struct ifa_msghdr *ifam;
++ struct sockaddr *sa;
++
++ naddrs = 0;
++ if (physaddrs)
++ free(physaddrs);
++ if (physaddrbuf)
++ free(physaddrbuf);
++ physaddrbuf = 0;
++ physaddrs = 0;
++ nphysaddrs = 0;
++ len = 0;
++ if (sysctl(mib, 6, 0, &len, 0, 0) < 0)
++ return;
++
++ cp = physaddrbuf = malloc(len);
++ if (physaddrbuf == 0)
++ return;
++ if (sysctl(mib, 6, physaddrbuf, &len, 0, 0) < 0) {
++ free(physaddrbuf);
++ physaddrbuf = 0;
++ return;
++ }
++
++ loop:
++ ilen = len;
++ cp = physaddrbuf;
++ while (ilen > 0) {
++ rtm = (struct rt_msghdr *) cp;
++ if (rtm->rtm_version != RTM_VERSION || rtm->rtm_type != RTM_IFINFO) {
++ free(physaddrs);
++ physaddrs = 0;
++ free(physaddrbuf);
++ physaddrbuf = 0;
++ }
++ ifm = (struct if_msghdr *) rtm;
++#if defined(freebsd3) || defined(freebsd4) || defined(freebsd5)
++ if (physaddrs != 0)
++ physaddrs[naddrs] = (void *) (ifm + 1);
++ naddrs++;
++#endif
++ ilen -= ifm->ifm_msglen;
++ cp += ifm->ifm_msglen;
++ rtm = (struct rt_msghdr *) cp;
++ while (ilen > 0 && rtm->rtm_type == RTM_NEWADDR) {
++#if defined(freebsd3) || defined(freebsd4) || defined(freebsd5)
++ ilen -= rtm->rtm_msglen;
++ cp += rtm->rtm_msglen;
++#else
++ int is_alias = 0;
++ ifam = (struct ifa_msghdr *) rtm;
++ ilen -= sizeof(*ifam);
++ cp += sizeof(*ifam);
++ sa = (struct sockaddr *) cp;
++#define ROUND(x) (((x) + sizeof(long) - 1) & ~sizeof(long))
++ for (bit = 1; bit && ilen > 0; bit <<= 1) {
++ if (!(ifam->ifam_addrs & bit))
++ continue;
++ ilen -= ROUND(sa->sa_len);
++ cp += ROUND(sa->sa_len);
++
++ if (bit == RTA_IFA) {
++ if (physaddrs)
++#define satosdl(sa) ((struct sockaddr_dl *)(sa))
++ physaddrs[naddrs++]
++ = satosdl(sa);
++ else
++ naddrs++;
++ }
++ sa = (struct sockaddr *) cp;
++ }
++#endif
++ rtm = (struct rt_msghdr *) cp;
++ }
++ }
++ if (physaddrs) {
++ nphysaddrs = naddrs;
++ return;
++ }
++ physaddrs = malloc(naddrs * sizeof(*physaddrs));
++ if (physaddrs == 0)
++ return;
++ naddrs = 0;
++ goto loop;
++
++}
++
++static int
++get_phys_address(int iindex, char **ap, int *len)
++{
++ int i;
++ int once = 1;
++
++ do {
++ for (i = 0; i < nphysaddrs; i++) {
++ if (physaddrs[i]->sdl_index == iindex)
++ break;
++ }
++ if (i < nphysaddrs)
++ break;
++ init_interfaces_setup();
++ } while (once--);
++
++ if (i < nphysaddrs) {
++ *ap = LLADDR(physaddrs[i]);
++ *len = physaddrs[i]->sdl_alen;
++ return 0;
++ }
++ return -1;
++}
++#endif
++
+ #ifdef USE_SYSCTL_IFLIST
+
+ static u_char *if_list = 0;
+@@ -603,10 +730,20 @@
+ }
+ return (u_char *) & long_return;
+ case IFPHYSADDRESS:
++#if defined(freebsd2)
++ {
++ char *cp;
++ if (get_phys_address(interface, &cp, var_len))
++ return NULL;
++ else
++ return cp;
++ }
++#else
+ /*
+ * XXX
+ */
+ return NULL;
++#endif
+ case IFADMINSTATUS:
+ long_return = if_msg.ifm_flags & IFF_UP ? 1 : 2;
+ return (u_char *) & long_return;
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-snmp_auth.c
@@ -0,0 +1,12 @@
+--- snmplib/snmp_auth.c.orig Tue Jan 25 10:08:14 2005
++++ snmplib/snmp_auth.c Tue Jan 25 10:08:34 2005
+@@ -63,6 +63,9 @@
+ #include <arpa/inet.h>
+ #endif
+
++#if HAVE_UNISTD_H
++#include <unistd.h>
++#endif
+ #if HAVE_DMALLOC_H
+ #include <dmalloc.h>
+ #endif
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-freebsd8.h
@@ -0,0 +1,4 @@
+--- include/net-snmp/system/freebsd8.h.orig Sun Jul 17 22:41:06 2005
++++ include/net-snmp/system/freebsd8.h Sun Jul 17 22:41:28 2005
+@@ -0,0 +1 @@
++#include "freebsd7.h"
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-tcpTable.c
@@ -0,0 +1,12 @@
+--- agent/mibgroup/mibII/tcpTable.c.orig Wed Jun 9 05:53:17 2004
++++ agent/mibgroup/mibII/tcpTable.c Thu Jun 24 23:21:32 2004
+@@ -275,6 +277,9 @@
+
+ int
+ TCP_Count_Connections( void ) {
++#if (defined(CAN_USE_SYSCTL) && defined(TCPCTL_PCBLIST))
++ tcpTable_load(NULL, NULL);
++#endif
+ return tcp_estab;
+ }
+
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-net-snmp-config.h.in
@@ -0,0 +1,11 @@
+--- include/net-snmp/net-snmp-config.h.in.orig Sun Mar 25 21:01:16 2007
++++ 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 */
+
+ /* misc defaults */
+
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-local:mib2c
@@ -0,0 +1,21 @@
+--- local/mib2c.orig Fri Sep 10 21:30:15 2004
++++ local/mib2c Mon Oct 25 08:38:30 2004
+@@ -1,5 +1,4 @@
+-#!/usr/bin/perl
+-#!/usr/bin/perl -w
++#!%%PERL%%
+
+ #
+ # $Id: mib2c,v 5.57 2004/09/10 12:30:15 dts12 Exp $
+@@ -60,8 +59,9 @@
+ if($ENV{MIB2C_DIR}) {
+ push @def_search_dirs, split(/:/, $ENV{MIB2C_DIR});
+ }
+-push @def_search_dirs, "/usr/local/share/snmp/";
+-push @def_search_dirs, "/usr/local/share/snmp/mib2c-data";
++push @def_search_dirs, "%%PREFIX%%/share/snmp/";
++push @def_search_dirs, "%%PREFIX%%/etc/snmp/";
++push @def_search_dirs, "%%PREFIX%%/share/snmp/mib2c-data";
+ push @def_search_dirs, "./mib2c-conf.d";
+
+ sub usage {
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-local:fixproc
@@ -0,0 +1,90 @@
+--- local/fixproc.orig Wed May 25 01:23:54 2005
++++ local/fixproc Wed Nov 30 12:16:05 2005
+@@ -1,4 +1,4 @@
+-#!/usr/bin/perl
++#!%%PERL%%
+ #
+ # fixproc [-min n] [-max n] [-check | -kill | -restart | -exist | -fix] proc ...
+ #
+@@ -131,7 +131,7 @@
+
+ use File::Temp qw(tempfile);
+
+-$database_file = '/local/etc/fixproc.conf';
++$database_file = '%%PREFIX%%/etc/fixproc.conf';
+
+ $debug = 0; # specify debug level using -dN
+ # currently defined: -d1
+@@ -157,6 +157,14 @@
+ $shell_header = "#!/bin/sh\n";
+ $shell_end_marker = 'shell_end_marker';
+
++open(command, "/bin/ps -p $$ |") || die "$0: can't run ps command\n";
++if (split(' ', <command>) > 4) {
++ $ps_opts = 'ax';
++} else {
++ $ps_opts = '-e';
++}
++close command;
++
+ &read_args();
+ &read_database();
+ # &dump_database(); # debug only
+@@ -305,41 +313,47 @@
+
+ # first try kill
+ $! = $fixproc_error;
+- open (COMMAND, "/bin/ps -e | /bin/grep $proc |")
++ open (COMMAND, "/bin/ps $ps_opts |")
+ || die "$0: can't run ps-grep-awk command\n";
+ while (<COMMAND>)
+ {
+- # match the first field of ps -e
++ if /$proc/ {
++ # match the first field of ps $ps_opts
+ $! = $fixproc_error;
+- /^\s*(\d+)\s/ || die "$0: can't match ps -e output\n";
+- system "kill $1";
++ /^\s*(\d+)\s/ || die "$0: can't match ps $ps_opts output\n";
++ kill 15, $1;
++ }
+ }
++ close COMMAND;
+
+ # if process still exist, try kill -9
+ sleep 2;
+ $! = $fixproc_error;
+- open (COMMAND, "/bin/ps -e | /bin/grep $proc |")
++ open (COMMAND, "/bin/ps $ps_opts |")
+ || die "$0: can't run ps-grep-awk command\n";
+ $second_kill_needed = 0;
+ while (<COMMAND>)
+ {
+- # match the first field of ps -e
++ if /$proc/ {
++ # match the first field of ps $ps_opts
+ $! = $fixproc_error;
+- /^\s*(\d+)\s/ || die "$0: can't match ps -e output\n";
+- system "kill -9 $1";
++ /^\s*(\d+)\s/ || die "$0: can't match ps $ps_opts output\n";
++ kill 9, $1;
+ $second_kill_needed = 1;
+ }
++ close COMMAND;
+ return ($no_error) if ($second_kill_needed == 0);
+
+ # see if kill -9 worked
+ sleep 2;
+ $! = $fixproc_error;
+- open (COMMAND, "/bin/ps -e | /bin/grep $proc |")
++ open (COMMAND, "/bin/ps $ps_opts |")
+ || die "$0: can't run ps-grep-awk command\n";
+ while (<COMMAND>)
+ { # a process still exist, return error
+- return $cannot_kill_error;
++ return $cannot_kill_error if /$proc/;
+ }
++ close COMMAND;
+ return $no_error; # good, all dead
+ }
+
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-snmpUCDIPv6Domain.c
@@ -0,0 +1,35 @@
+Index: snmplib/snmpUDPIPv6Domain.c
+diff -u -p snmplib/snmpUDPIPv6Domain.c.orig snmplib/snmpUDPIPv6Domain.c
+--- snmplib/snmpUDPIPv6Domain.c.orig Mon Aug 20 17:06:42 2007
++++ snmplib/snmpUDPIPv6Domain.c Fri Jan 11 13:39:36 2008
+@@ -103,13 +103,24 @@ netsnmp_udp6_fmtaddr(netsnmp_transport *
+ if (to == NULL) {
+ return strdup("UDP/IPv6: unknown");
+ } else {
+- char addr[INET6_ADDRSTRLEN];
+- char tmp[INET6_ADDRSTRLEN + 18];
++ char addr[NI_MAXHOST], tmp[NI_MAXHOST + NI_MAXSERV + 12];
+
+- sprintf(tmp, "UDP/IPv6: [%s]:%hu",
+- 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 at FreeBSD.org)
++ */
++#ifndef NI_WITHSCOPEID
++#define NI_WITHSCOPEID 0
++#endif
++ 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), "UDP/IPv6: [%s]:%hu", addr,
++ ntohs(to->sin6_port));
++ return strdup(tmp);
+ }
+ }
+
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-freebsd5.h
@@ -0,0 +1,10 @@
+--- include/net-snmp/system/freebsd5.h.orig Wed Sep 1 00:13:46 2004
++++ include/net-snmp/system/freebsd5.h Wed Sep 1 00:13:57 2004
+@@ -7,6 +7,7 @@
+ #define freebsd3 1
+ /* freebsd5 is a superset of freebsd4 */
+ #define freebsd4 1
++#define freebsd5 1
+
+ #undef IFADDR_SYMBOL
+ #define IFADDR_SYMBOL "in_ifaddrhead"
--- /dev/null
+++ net-mgmt/net-snmp53/files/snmptrapd.sh.in
@@ -0,0 +1,34 @@
+#!/bin/sh
+#
+# $FreeBSD: ports/net-mgmt/net-snmp53/files/snmptrapd.sh.in,v 1.1 2006/05/08 05:00:27 clsung Exp $
+#
+# PROVIDE: snmptrapd
+# REQUIRE: DAEMON
+#
+# Add the following line to /etc/rc.conf to enable snmptrapd:
+#
+# snmptrapd_enable="YES"
+#
+
+snmptrapd_enable=${snmptrapd_enable-"NO"}
+snmptrapd_flags=${snmptrapd_flags-"-p /var/run/snmptrapd.pid"}
+
+. %%RC_SUBR%%
+
+load_rc_config net_snmptrapd
+
+if [ ! -z "$net_snmptrapd_enable" ]; then
+ echo "Warning: \$net_snmptrapd_enable is obsoleted."
+ echo " Use \$snmptrapd_enable instead."
+ snmptrapd_enable="$net_snmptrapd_enable"
+ [ ! -z "$net_snmptrapd_flags" ] && snmptrapd_flags="$net_snmptrapd_flags"
+fi
+
+name=snmptrapd
+rcvar=`set_rcvar`
+
+command=%%PREFIX%%/sbin/${name}
+pidfile=/var/run/${name}.pid
+
+load_rc_config ${name}
+run_rc_command "$1"
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-Makefile.in
@@ -0,0 +1,11 @@
+--- Makefile.in.orig Tue Oct 11 20:49:23 2005
++++ Makefile.in Wed Nov 30 11:35:12 2005
+@@ -16,7 +16,7 @@
+ 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 freebsd8.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 \
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-snmpusm.c
@@ -0,0 +1,21 @@
+--- snmplib/snmpusm.c.orig Thu Sep 16 07:57:47 2004
++++ snmplib/snmpusm.c Tue Jan 25 10:23:02 2005
+@@ -54,6 +54,9 @@
+ #include <netinet/in.h>
+ #endif
+
++#if HAVE_UNISTD_H
++#include <unistd.h>
++#endif
+ #if HAVE_DMALLOC_H
+ #include <dmalloc.h>
+ #endif
+@@ -89,6 +92,8 @@
+ oid usmAESPrivProtocol[10] = { 1, 3, 6, 1, 6, 3, 10, 1, 2, 4 };
+ /* backwards compat */
+ oid *usmAES128PrivProtocol = usmAESPrivProtocol;
++oid *usmAES192PrivProtocol = usmAESPrivProtocol;
++oid *usmAES256PrivProtocol = usmAESPrivProtocol;
+
+ static u_int dummy_etime, dummy_eboot; /* For ISENGINEKNOWN(). */
+
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-vmstat_freebsd2.c
@@ -0,0 +1,22 @@
+--- agent/mibgroup/ucd-snmp/vmstat_freebsd2.c.orig 2008-04-25 16:28:53.000000000 +0300
++++ agent/mibgroup/ucd-snmp/vmstat_freebsd2.c 2008-04-25 16:29:01.000000000 +0300
+@@ -174,6 +174,7 @@
+ static long cpu_total;
+ long cpu_sum;
+ double cpu_prc;
++ int mib[2], mib_len, cpu_new_len;
+
+ static struct vmmeter mem_old, mem_new;
+
+@@ -195,7 +196,10 @@
+ /*
+ * CPU usage
+ */
+- auto_nlist(CPTIME_SYMBOL, (char *) cpu_new, sizeof(cpu_new));
++ mib_len = 2;
++ sysctlnametomib("kern.cp_time", mib, &mib_len);
++ cpu_new_len = sizeof(cpu_new);
++ sysctl(mib, mib_len, cpu_new, &cpu_new_len, NULL, 0);
+
+ cpu_total = 0;
+
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-transform_oids.h
@@ -0,0 +1,11 @@
+--- include/net-snmp/library/transform_oids.h.orig Wed Dec 8 19:34:06 2004
++++ 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 */
+
+ #define USM_AUTH_PROTO_NOAUTH_LEN 10
+ #define USM_AUTH_PROTO_MD5_LEN 10
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-ucd_snmp.h
@@ -0,0 +1,11 @@
+--- 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)
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-local:snmpcheck.def
@@ -0,0 +1,8 @@
+--- local/snmpcheck.def.orig Thu May 29 05:28:22 2003
++++ local/snmpcheck.def Thu May 29 05:29:49 2003
+@@ -1,4 +1,4 @@
+-#!/usr/local/bin/perl -w
++#!%%PERL%% -w
+
+ use strict 'refs';
+ require Net::Ping;
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-snmp_transport.c
@@ -0,0 +1,12 @@
+--- snmplib/snmp_transport.c.orig Tue Jan 25 10:21:33 2005
++++ snmplib/snmp_transport.c Tue Jan 25 10:21:52 2005
+@@ -12,6 +12,9 @@
+ #include <stdlib.h>
+ #endif
+
++#if HAVE_UNISTD_H
++#include <unistd.h>
++#endif
+ #if HAVE_DMALLOC_H
+ #include <dmalloc.h>
+ #endif
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-keytools.c
@@ -0,0 +1,12 @@
+--- snmplib/keytools.c.orig Tue Jan 25 10:17:48 2005
++++ snmplib/keytools.c Tue Jan 25 10:18:07 2005
+@@ -32,6 +32,9 @@
+ #include <strings.h>
+ #endif
+
++#if HAVE_UNISTD_H
++#include <unistd.h>
++#endif
+ #if HAVE_DMALLOC_H
+ #include <dmalloc.h>
+ #endif
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-configure.in
@@ -0,0 +1,38 @@
+--- configure.in.orig Fri Jul 14 06:55:27 2006
++++ configure.in Tue Feb 27 20:29:49 2007
+@@ -2171,7 +2171,7 @@
+ # fall back
+ CFLAG="-f"
+ fi
+-for i in /vmunix /hp-ux /stand/vmunix /dev/ksyms /kernel/unix /kernel/genunix /netbsd /unix /kernel /bsd /mach_kernel /boot/kernel/kernel
++for i in /vmunix /hp-ux /stand/vmunix /dev/ksyms /kernel/unix /kernel/genunix /netbsd /unix /kernel /bsd /mach_kernel /boot/kernel/kernel /dev/null
+ do
+ if test -f $i -o $CFLAG $i; then
+ ac_cv_KERNEL_LOC="$i"
+@@ -3145,6 +3145,26 @@
+ # checking for 4.3 vs 4.4 rtentry.
+ AC_CACHE_CHECK(type of rtentry structure,ac_cv_RTENTRY_TYPE,
+ [
++
++dnl 4.4 compatible but renamed on FreeBSD
++AC_TRY_COMPILE([
++#include <sys/types.h>
++#define KERNEL
++#define _KERNEL
++#include <sys/socket.h>
++#undef KERNEL
++#undef _KERNEL
++#include <net/route.h>
++],[
++
++#ifndef STRUCT_RTENTRY_HAS_RT_DST
++#define rt_dst rt_nodes->rn_key
++#endif
++
++ struct rtentry rt;
++ rt.rt_nodes[0].rn_bit = 1;
++ rt.rt_dst;
++ ], ac_cv_RTENTRY_TYPE="BSD-4.4")
+
+ # 4.4 compat
+ AC_TRY_COMPILE([
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-local:ipf-mod.pl
@@ -0,0 +1,21 @@
+--- local/ipf-mod.pl.orig Thu May 29 05:30:19 2003
++++ local/ipf-mod.pl Thu May 29 05:40:13 2003
+@@ -1,4 +1,4 @@
+-#!/usr/bin/perl -s
++#!%%PERL%% -s
+ ##
+ ## IP Filter UCD-SNMP pass module
+ ##
+@@ -9,10 +9,10 @@
+ ## Date: $ Tue Dec 1 10:24:08 EET 1998 $
+ ## Version: 1.1a
+
+-# Put this file in /usr/local/bin/ipf-mod.pl and then add the following
++# Put this file in %%PREFIX%%/bin/ipf-mod.pl and then add the following
+ # line to your snmpd.conf file (without the # at the front):
+ #
+-# pass .1.3.6.1.4.1.2021.13.2 /usr/local/bin/ipf-mod.pl
++# pass .1.3.6.1.4.1.2021.13.2 %%PREFIX%%/bin/ipf-mod.pl
+
+ # enterprises.ucdavis.ucdExperimental.ipFilter = .1.3.6.1.4.1.2021.13.2
+ # ipfInTable.ipfInEntry.ipfInIndex integer = 1.1.1
--- /dev/null
+++ net-mgmt/net-snmp53/files/snmpd.sh.in
@@ -0,0 +1,80 @@
+#!/bin/sh
+#
+# $FreeBSD: ports/net-mgmt/net-snmp53/files/snmpd.sh.in,v 1.7 2007/10/27 07:20:34 kuriyama Exp $
+#
+# PROVIDE: snmpd
+# REQUIRE: DAEMON
+#
+# Add the following line to /etc/rc.conf to enable snmpd:
+#
+# snmpd_enable="YES"
+#
+
+snmpd_enable=${snmpd_enable-"NO"}
+snmpd_flags=${snmpd_flags-""}
+snmpd_pidfile=${snmpd_pidfile-"/var/run/snmpd.pid"}
+snmpd_conffile=${snmpd_conffile-""}
+snmpd_flush_cache=${snmpd_flush_cache-"NO"}
+
+. %%RC_SUBR%%
+
+load_rc_config net_snmpd
+
+if [ ! -z "$net_snmpd_enable" ]; then
+ echo "Warning: \$net_snmpd_enable is obsoleted."
+ echo " Use \$snmpd_enable instead."
+ snmpd_enable="$net_snmpd_enable"
+ [ ! -z "$net_snmpd_flags" ] && snmpd_flags="$net_snmpd_flags"
+fi
+
+name=snmpd
+rcvar=`set_rcvar`
+
+command=%%PREFIX%%/sbin/${name}
+pidfile=${snmpd_pidfile}
+start_precmd=snmpd_precmd
+
+load_rc_config ${name}
+
+snmpd_precmd () {
+ if checkyesno snmpd_flush_cache; then
+ rm -vf /var/net-snmp/.snmp-exec-cache
+ fi
+}
+
+case "${snmpd_flags}" in
+*-p\ *)
+ echo "Warning: \$snmpd_flags includes -p option." \
+ "Please use \$snmpd_pidfile instead."
+ ;;
+*)
+ snmpd_flags="-p ${snmpd_pidfile} ${snmpd_flags}"
+ ;;
+esac
+
+for conffile in ${snmpd_conffile}; do
+ if [ ! -z ${conffile} -a -f ${conffile} ]; then
+ if [ -z ${snmpd_conffile_set} ]; then
+ snmpd_conffile_set="${conffile}"
+ else
+ snmpd_conffile_set="${snmpd_conffile_set},${conffile}"
+ fi
+ else
+ echo "snmpd configuration file $conffile not set or not found."
+ exit 1
+ fi
+done
+
+case "${snmpd_flags}" in
+*-c\ *)
+ echo "Warning: \$snmpd_flags includes -c option." \
+ "Please use \$snmpd_conffile instead."
+ ;;
+*)
+ if [ ! -z "${snmpd_conffile_set}" ]; then
+ snmpd_flags="-c ${snmpd_conffile_set} ${snmpd_flags}"
+ fi
+ ;;
+esac
+
+run_rc_command "$1"
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-snmp_logging.c
@@ -0,0 +1,12 @@
+--- snmplib/snmp_logging.c.orig Tue Jan 25 10:14:41 2005
++++ snmplib/snmp_logging.c Tue Jan 25 10:15:05 2005
+@@ -65,6 +65,9 @@
+ #include <varargs.h>
+ #endif
+
++#if HAVE_UNISTD_H
++#include <unistd.h>
++#endif
+ #if HAVE_DMALLOC_H
+ #include <dmalloc.h>
+ #endif
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-snmpUDPDomain.c
@@ -0,0 +1,11 @@
+--- snmplib/snmpUDPDomain.c.orig 2008-01-11 21:53:12.214973877 +0900
++++ snmplib/snmpUDPDomain.c 2008-01-11 21:54:13.707245200 +0900
+@@ -105,7 +105,7 @@
+ inet_ntoa(addr_pair->local_addr));
+ } else {
+ sprintf(tmp, "UDP: [%s]->", inet_ntoa(addr_pair->local_addr));
+- sprintf(tmp + strlen(tmp), "[%s]:%hd",
++ sprintf(tmp + strlen(tmp), "[%s]:%hu",
+ inet_ntoa(to->sin_addr), ntohs(to->sin_port));
+ }
+ return strdup(tmp);
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-hr_storage.h
@@ -0,0 +1,11 @@
+--- agent/mibgroup/host/hr_storage.h.orig Tue Feb 25 22:17:48 2003
++++ agent/mibgroup/host/hr_storage.h Wed May 5 15:27:40 2004
+@@ -12,6 +12,7 @@
+ #define HRS_TYPE_MBUF 1
+ #define HRS_TYPE_MEM 2
+ #define HRS_TYPE_SWAP 3
+-#define HRS_TYPE_FIXED_MAX 3 /* the largest fixed type */
++#define HRS_TYPE_MBUFCLUSTER 4
++#define HRS_TYPE_FIXED_MAX 4 /* the largest fixed type */
+
+ #endif /* _MIBGROUP_HRSTORAGE_H */
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-default_store.c
@@ -0,0 +1,12 @@
+--- snmplib/default_store.c.orig Tue Jan 25 10:20:31 2005
++++ snmplib/default_store.c Tue Jan 25 10:20:47 2005
+@@ -145,6 +145,9 @@
+ #include <winsock.h>
+ #endif
+
++#if HAVE_UNISTD_H
++#include <unistd.h>
++#endif
+ #if HAVE_DMALLOC_H
+ #include <dmalloc.h>
+ #endif
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-tools.c
@@ -0,0 +1,12 @@
+--- snmplib/tools.c.orig Tue Jan 25 10:13:50 2005
++++ snmplib/tools.c Tue Jan 25 10:14:06 2005
+@@ -44,6 +44,9 @@
+ #include <arpa/inet.h>
+ #endif
+
++#if HAVE_UNISTD_H
++#include <unistd.h>
++#endif
+ #if HAVE_DMALLOC_H
+ #include <dmalloc.h>
+ #endif
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-lcd_time.c
@@ -0,0 +1,12 @@
+--- snmplib/lcd_time.c.orig Tue Jan 25 10:16:53 2005
++++ snmplib/lcd_time.c Tue Jan 25 10:17:10 2005
+@@ -38,6 +38,9 @@
+ #include <netinet/in.h>
+ #endif
+
++#if HAVE_UNISTD_H
++#include <unistd.h>
++#endif
+ #if HAVE_DMALLOC_H
+ #include <dmalloc.h>
+ #endif
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-hr_system.c
@@ -0,0 +1,11 @@
+--- agent/mibgroup/host/hr_system.c.orig Mon Feb 23 02:29:34 2004
++++ agent/mibgroup/host/hr_system.c Sat Apr 3 00:00:24 2004
+@@ -596,6 +596,8 @@
+ #ifndef UTMP_HAS_NO_TYPE
+ if (utmp_p->ut_type != USER_PROCESS)
+ continue;
++#else
++ if (*utmp_p->ut_name != '~')
+ #endif
+ #ifndef UTMP_HAS_NO_PID
+ /* This block of code fixes zombie user PIDs in the
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-local:snmpconf
@@ -0,0 +1,35 @@
+--- local/snmpconf.orig Sun Aug 21 10:23:23 2005
++++ local/snmpconf Wed Nov 30 12:19:42 2005
+@@ -1,4 +1,4 @@
+-#!/usr/bin/perl -w
++#!%%PERL%% -w
+
+ #
+ # A simple configuration file builder based on questions listed in
+@@ -31,7 +31,7 @@
+ $opts{'c'} = &my_getenv("SNMPSHAREPATH") . "/snmpconf-data";
+ }
+ else {
+- $opts{'c'} = "/usr/local/share/snmp/snmpconf-data";
++ $opts{'c'} = "%%PREFIX%%/share/snmp/snmpconf-data";
+ }
+
+ # default config file path
+@@ -39,7 +39,7 @@
+ $confpath = &my_getenv("SNMPCONFPATH");
+ }
+ else {
+- $confpath = "/usr/local/share/snmp";
++ $confpath = "%%PREFIX%%/share/snmp";
+ }
+
+ # home environment variable
+@@ -100,7 +100,7 @@
+ $ENV_SEPARATOR = ';';
+ }
+ my @searchpath = split(/$ENV_SEPARATOR/, $confpath);
+-push @searchpath, "/usr/local/etc/snmp";
++push @searchpath, "%%PREFIX%%/etc/snmp";
+ push @searchpath, ".";
+ push @searchpath, "$home";
+
--- /dev/null
+++ net-mgmt/net-snmp53/files/test.t
@@ -0,0 +1,12 @@
+#!/usr/bin/perl -w
+#
+# $FreeBSD: ports/net-mgmt/net-snmp53/files/test.t,v 1.1 2005/11/30 05:22:40 kuriyama Exp $
+
+use strict;
+use Test::More tests => 1;
+
+my $cmd = 'snmpwalk -c public -v 1 localhost';
+
+# ports/86572
+my $output = `$cmd hrSWRunType`;
+like($output, qr/operatingSystem/, 'hrSWRunType');
--- /dev/null
+++ net-mgmt/net-snmp53/files/patch-scapi.c
@@ -0,0 +1,12 @@
+--- snmplib/scapi.c.orig Tue Jan 25 10:18:44 2005
++++ snmplib/scapi.c Tue Jan 25 10:19:01 2005
+@@ -46,6 +46,9 @@
+ #include <netinet/in.h>
+ #endif
+
++#if HAVE_UNISTD_H
++#include <unistd.h>
++#endif
+ #if HAVE_DMALLOC_H
+ #include <dmalloc.h>
+ #endif
More information about the Midnightbsd-cvs
mailing list