This is a major update in terms of pkgsrc patches, of which there are
far far too many. Analysis of patches was done by Karen Sirois of
BBN, and I have remvoed patches that have been applied upstream.
This builds fine and passes tests on NetBSD 6 i386. If you look after
some other platform (Dragonfly, Darwin, FreeBSD, etc.), please make
sure any problems are filed as upstream tickets; pkgsrc is not
appropriate to carry patches long-term that should be fixed upstream,
and this package has gotten out of hand.
(OK by adam@ to do the update, but he has not reviewed the changes, so
errors are my fault. It's quite likely there are issues on other
platforms.)
Upstream NEWS:
*5.7.2*
snmp:
- BUG: 3526549: CVE-2012-2141 Array index error leading to crash
snmpd:
- BUG: 3532090: Fix high ifIndex values crashing hrDeviceDescr
building:
- PATCH: 2091156: correctly declare dependencies in Makefile. 'make
-j <N>' should work now. Backport this to V5-4 as it is needed for
correct operation in the single threaded case of make miblib as
well.
Many other miscellaneous minor bug fixes
*5.7.1*
libnetsnmp:
- Fixed the mib-parsing-bug introduced shortly before 5.7
agent:
- fixed rounding errors for disk percentage calculations
openbsd:
- better support for recent openbsd releases
features:
- bug fixes with minimalist support after additional user feedback
Many other miscellaneous minor bug fixes
*5.7*
snmpd:
- Delivery of data via regularily scheduled notifications.
(see "Data Delivery via Notfications" in snmpd.conf)
- Many time-based config options can take (m)ins, (h)ours, ... arguments
(see the snmpd.conf manual page)
- The PING and TRACEROUTE MIBs now compile and work-ish on linux
http://www.net-snmp.org/wiki/index.php/DISMAN
- Mib handlers can now implement a data_clone function for
cloning the myvoid structure variable to avoid dangling pointers
- Fixed persistent storage of VACM MIB configuration
- Multi-homed agents send UDP responses from the proper IP address
- The hrStorageTable implementation now supports large filesystems better
- optimizations for large route tables
- Added a deliveryByNotify config token for regular data delivery
(see the snmpd.conf manual page and the NET-SNMP-PERIODIC-NOTIFY-MIB)
- [PATCH 3141462]: fix agentx subagent issues with multiple-object requests
- [PATCH 3057093]: linux uses libpci for creating useful ifDescr strings
- [PATCH 3131397]: huge speedups of the TCP/UDP Tables
libnetsnmp:
- Removed the older CMU compatibility support
- The SSH transport is now configurable
TLS/DTLS support:
- The SNMP over DTLS transport now properly supports IPv6
- Introduced new configuration tokens: localCert/peerCert
(deprecating serverCert, clientCert, defX509ServerPub, defX509ClientPub)
- Various fixes for the TLS/DTLS transports
apps:
- Added a per-variable timed output support to snmpwalk using -CT
- snmpinform now correctly uses the local engineID for informs
- A number of mib2c bug fixes
- New snmp.conf tokens for timeouts and retries
building:
- New flags to reduce the amount of compiled code to bare minimums.
This is provided by a new generic feature marking/selection mechanism.
http://www.net-snmp.org/wiki/index.php/Feature_Marking_and_Selection
- It's now possible to build without SNMPv3/USM
(e.g., if you only want TLS/DTLS with SNMPv3/TSM)
- It's possible to build the suite with no SET support
configure using --enable-read-only
- It's possible to build the agent as a notify-only agent
configure using --enable-notify-only
- Added a script to test memory usage with various config options
(see the local/minimalist/sizetests script)
- Net-SNMP can now be built to perform local DNSSEC validation
(install DNSSEC-Tools' libval and use --with-local-dnssec-validation)
testing:
- a number of new API unit-tests have been added to the suite
(to run the tests: cd testing && ./RUNFULLTESTS -g unit-tests)
- The unit tests can be more easily run under valgrind
(See http://bit.ly/jsgRnv for details)
openbsd:
- Support for updating the routing table via SNMP
win32:
- The testing suite works better under win32 environments
- Many building fixes for the win32 environment(s)
solaris:
- Net-SNMP now supports the SCTP-MIB
DragonFlyBSD, FreeBSD8:
- Net-SNMP should now work on DragonFlyBSD and FreeBSD8
And of course:
- Many other bug fixes. See the CHANGES and ChangeLog for details.
* OID Typedef Bug Fix: The oid typedef was changed in 5.6.1 to an u_int32 from
a u_long. This broke binary compatibility and likely 3rd-party code. 5.6.1.1
reverts this change and fixes an underlying OID printing problem in two agent
modules that caused someone to change the typedef in the first place.
Changes 5.6.1:
* General:
- The DTLS and TLS transports and the TSM security model are no
longer "beta" (they've undergone rigorous interoperability testing).
- Many Bug Fixes (see the CHANGES and ChangeLog files for full details)
* snmpd:
- 0 Patch 3141462: from fenner: fix agentx subagent issues with
multiple-object requests
- Patch from Niels to fix VACM persistant storage.
Changes 5.6:
* all:
- Implemented the SNMP over TLS and SNMP over DTLS protocols [RFC-to-be]
- Implemented the "Transport Security Model" [RFC5591]
- Generic host-specific configuration .conf files are now read.
- Include statements can now be used in .conf files.
* snmpd:
- Fix handling of multiple matching VACM entries. (Use the "best"
match, rather than the first one). Reported by Adam Lewis. Note
that this could potentially affect the behaviour of existing access
control configurations.
- Agent will no longer call table handlers if a set request for the
handler has invalid indexes
- table_data/tdata next handler will not be called during get
processing if no valid rows are found for the handler
- [PATCH 2952708]: Added Perl implementation of BRIDGE-MIB
- moved all functions defined in libnetsnmphelpers to
libnetsnmpagent. libnetsnmphelpers is now an empty library.
- Implemented the TSM-MIB and the TLSTM-MIB
- new API for indicating that persistent store needs to be saved
after the current request finishes processing
- [PATCH 2931446]: make the load averages writable.
* apps:
- A new tool 'net-snmp-cert' that easily creates and manages
X.509 certificates for use with the SNMP over (D)TLS protocols.
- Added an 'agentxtrap' command to send notifications via AgentX
- -T command line flag can be used to pass configuration
directly to transports that can accept configuration tokens
- A new 'snmptls' command for manipulating the agent's TLS configuration
* snmplib:
- A more modular transport subsystem that allows third party
extensions and dependencies for code reuse.
- New transport functions: f_config, f_open, f_copy and f_setup_session
- Transports can now specify session defaults
- [PATCH 2942940]: Add a new function, netsnmp_parse_args, that is
like snmp_parse_args but takes an additional bitmask, flags, to
affect the behaviour. Also remove the magic handling of some
application names.
- A new X.509 certificate API for indexing and reading certificates
- new experimental row creation API which uses a state machine
to try really hard to create a row from a given varbind list
- netsnmp_container enhancements:
- added a free_item function
- added a CONTAINER_FREE_ALL macro/function
- added an interface for duplicating a container (CONTAINER_DUP)
- added a remove function to container_iterators
- added an ability to set options on binary_array containers
- new snmp token logOption allows specifying log destinations
via configuration conf files
- A very significant reduction in compiler warning output
- new experimental simple state machine handling API
- The default configuration now enables embedded Perl and the Perl
modules by default when possible unless explicitly disabled. You
may use the --disable-embedded-perl and --without-perl-modules
configure options, respectively, to revert to the former default
configuration.
*** Security Fix ***
Changes 5.3:
*** Important Notes ***
Several very significant changes have been made in Net-SNMP for this
release that warrant special attention.
- shared library version number no longer matches the release number. We
now follow the versioning scheme recommended by libtool. For the 5.3
release this means that the libraries now have a SONAME ending with
".so.10", e.g. libnetsnmp.so.10.
- snmpd has not been truncating log files at startup, as documented in
the man pages, for a while now. This default behaviour has been restored.
Please use the '-A' flag if you want to continue appending to your log
files at startup.
- snmptrapd will no longer accept all traps by default. It must be
configured with authorized SNMPv1/v2c community strings and/or SNMPv3
users. Non-authorized traps/informs will be dropped.
- Due to a copyright statement that didn't allow modifications,
snmpnetstat has been completely rewritten. The new version now
accepts the same command-line options as the other tools, which
has introduced a number of incompatible changes. However, it
does now finally support SNMPv3.