1 SNMP Release Notes

1.1  SNMP Development Toolkit 4.15

Version 4.15 supports code replacement in runtime from/to version 4.14 and 4.13.5.

Improvements and new features

  • The documentation is now built with open source tools (xsltproc and fop) that exists on most platforms. One visible change is that the frames are removed.

    Own Id: OTP-8249

Reported Fixed Bugs and Malfunctions

  • [manager] When information from an unknown agent is received, it was previously delivered to the default user via calls to all the functions of the callback API depending on the info type (pdu, trap, report or inform). The problem was that the TargetName argument was useless in this case (only an already known agent has a known/valid TargetName, but the TargetName used in these calls was generated "on the fly").

    This has now been changed so that when a message is received from an unknown agent, then only handle_agent (for the default user) is called, but now this call also has a Type argument, which is pdu | trap | report | inform, depending on what kind of message was actually received, thus making it possible for the user to properly analyze the data received.

    To handle this, the snmpm_user behaviour has been updated.

    *** POTENTIAL INCOMPATIBILITY ***

    Own Id: OTP-8229

1.2  SNMP Development Toolkit 4.14

Version 4.14 supports code replacement in runtime from/to version 4.13.5, 4.13.4, 4.13.3, 4.13.2, 4.13.1 and 4.13.

Improvements and new features

  • [compiler] Include object- and notification groups in the compiled mib. This will make it possible to import groups from other mibs.

    Also the SNMPv2-MIB-file has been updated to a more up-to-date version.

    Own Id: OTP-8223

  • [manager] Added support for message filtering in the network interface module provided with the application. The component that actually make the filter decisions is the network interface filter module. This module must implement the network interface filter behaviour for message filtering. See also the Configuring chapter of the User's Guide to see how to configure this feature.

    See the configuration chapter for more info about the filter options.

    Own Id: OTP-8228

    Aux Id: Seq 11411

  • The MIBs delivered as part of the application is now also available as man pages, section 7.

    Own Id: OTP-8237

Reported Fixed Bugs and Malfunctions

-

Incompatibilities

-

1.3  SNMP Development Toolkit 4.13.5

Version 4.13.5 supports code replacement in runtime from/to version 4.13.4, 4.13.3, 4.13.2, 4.13.1 and 4.13.

Improvements and new features

Reported Fixed Bugs and Malfunctions

  • [agent] The main agent type header file contained some miss-information regarding the type of the entrytype field of the me-record, causing unneccessary confusion.

    Own Id: OTP-8116

    Aux Id: Seq 11312

Incompatibilities

-

1.4  SNMP Development Toolkit 4.13.4

Version 4.13.4 supports code replacement in runtime from/to version 4.13.3, 4.13.2, 4.13.1 and 4.13.

Improvements and new features

-

Reported Fixed Bugs and Malfunctions

  • [agent] Originating discovery problems.

    Invalid state variable update during second stage of discovery causes master agent crash.

    Also the net_if process failed to activate socket ({active, once}) after first discovery response was sent.

    Own Id: OTP-8044

    Aux Id: Seq 11295

  • [agent] Terminating discovery problem.

    The reply to the second stage request should include a varbind with usmStatsNotInTimeWindows.

    Own Id: OTP-8062

    Aux Id: Seq 11318

  • [agent] Originating discovery improvement.

    Added the ExtraInfo argument to the discovery function. This argument will be passed on to the stage1_finish callback function. Also, the discovery function will now always return {ok, ManagerEngineID} on successful discovery.

    The discovery handler behaviour updated accordingly.

    Own Id: OTP-8098

    Aux Id: Seq 11346

Incompatibilities

-

1.5  SNMP Development Toolkit 4.13.3

Version 4.13.3 supports code replacement in runtime from/to version 4.13.2, 4.13.1 and 4.13.

Improvements and new features

-

Reported Fixed Bugs and Malfunctions

  • [manager] A request for an oid of type BITS was actually returned as OCTET STRING.

    Values of type BITS are encoded as OCTET STRING, which makes it impossible for the decoder to know that they should really be of type BITS. Instead, this has to be done higher up in the stack, where there is knowledge of the MIB (assuming that the mib has been loaded, there is info about the type of the mibentry).

    This problem has now been fixed, but requires that the MIB defining this mib-entry is loaded!

    The utility function oid_to_type has been added, for debug purpose.

    The utility function(s) octet_string_to_bits and bits_to_octet_string has also been added. These can be used if the user prefers to handle the conversion on their own.

    Own Id: OTP-8015

    Aux Id: Seq 11285

  • [agent] Fixed some issues with the discovery handling.

    Changed the API of the discovery function to solve some of these problems.

    Introduced various options for controlling the discovery process. See the configuration chapter for more info about the discovery options.

    Own Id: OTP-8020

    Aux Id: Seq 11295

Incompatibilities

-

1.6  SNMP Development Toolkit 4.13.2

Version 4.13.2 supports code replacement in runtime from/to version 4.13.1 and 4.13.

Improvements and new features

-

Reported Fixed Bugs and Malfunctions

  • [manager] Failure during downed user cleanup. As part of the cleanup after a crashed user, the manager attempts to unregister the agents registered by this user. This however failed, causing a server crash.

    Own Id: OTP-7961

    Aux Id: Seq 11275

  • [manager] Incorrectly documented value type for IpAddress (ip). The value type for IpAddress is documented as ip but is actually ia. The value type ip has been added. The old (not documented) value type ia still works.

    Own Id: OTP-7977

    Aux Id: Seq 11279

  • [manager] EngineId lookup fails when using version-3.

    Own Id: OTP-7983

    Aux Id: Seq 11275

  • [agent] As of version 4.13 the possible return values of the function snmpa_mpd:process_packet/4 changed, but this was not documented.

    Own Id: OTP-7989

    Aux Id: Seq 11275

Incompatibilities

-

1.7  SNMP Development Toolkit 4.13.1

Version 4.13.1 supports code replacement in runtime from/to version 4.13.

Improvements and new features

-

Reported Fixed Bugs and Malfunctions

  • [manager] Registration of users had some issues.

    Not all of the registration functions where actually exported (register_user/4 and register_user_monitor/4). This has now been fixed.

    Also, the registration did not succeed unless user implemented the *new* behaviour. This has now also been fixed (registration succeeds if the user implements either the new (i.e. updated snmpm_user) or the old user behaviour (snmpm_user_old)).

    Own Id: OTP-7902

    Aux Id: Seq 11240

Incompatibilities

-

1.8  SNMP Development Toolkit 4.13

Improvements and new features

  • [agent] Support for the discovery process.

    The agent can both initiate discovery itself (see the discovery chapter for more info) and respond to discovery initiated by a manager.

    Own Id: OTP-7571

    Aux Id: Seq 11053

Reported Fixed Bugs and Malfunctions

Incompatibilities

-

1.9  SNMP Development Toolkit 4.12.2

Version 4.12.2 supports code replacement in runtime from/to version 4.12.1, 4.12, 4.11.2, 4.11.1 and 4.11.

Improvements and new features

-

Reported Fixed Bugs and Malfunctions

  • [agent] Bad session cache (usm+camv-info) invalidation could cause user crash, through call(s) to (a number of) MIB API function(s) (undefined function).

    Own Id: OTP-7868

Incompatibilities

-

1.10  SNMP Development Toolkit 4.12.1

Version 4.12.1 supports code replacement in runtime from/to version 4.12, 4.11.2, 4.11.1 and 4.11.

Improvements and new features

-

Reported Fixed Bugs and Malfunctions

  • Logging of messages with the GetBulk-request PDU incorrectly produced an erroneous entry in the log: "An error occurred".

    The reason for this was that the PDU-fields error_status and error_index is re-used for Non-repeaters and Max-repetitions for GetBulk-request PDUs, but this was not handled by the logging code.

    Own Id: OTP-7695

    Aux Id: Seq 11124

  • [agent] An attempt to set the row status to active for an notReady table row, could result in an "inconsistentValue" error.

    The same problem existed when attempting to set row status to notInService for a row in notReady.

    Serge Aleynikov

    Own Id: OTP-7698

Incompatibilities

-

1.11  SNMP Development Toolkit 4.12

Version 4.12 supports code replacement in runtime from/to version 4.11.2, 4.11.1 and 4.11.

Improvements and new features

  • [agent] A simple lookup cache has been added to improve the mib server lookup performance.

    This can be disabled with the mib_server cache option.

    Own Id: OTP-7346

  • [agent] Improvement of the inform reporting. It was previously not certain how many acks an application received, 0, 1 or 2. This has now been fixed, so that only 1 (one) ack is issued.

    Per Hedeland

    Own Id: OTP-7525

Reported Fixed Bugs and Malfunctions

-

Incompatibilities

-

1.12  SNMP Development Toolkit 4.11.2

Version 4.11.2 supports code replacement in runtime from/to version 4.11.1 and 4.11.

Improvements and new features

-

Reported Fixed Bugs and Malfunctions

  • [manager] Erroneous engine-id check when receiving version 3 informs.

    Own Id: OTP-7570

    Aux Id: Seq 11060

  • Receiving an snmp message with a very large version number could cause the erlang node to run out of memory and consequently crash.

    The standard specifies the snmp version as an (unlimited) INTEGER, but today only 0 (version 1), 1 (version 2) and 3 (version 3) is actually used. So, when decoding a message, a limit has been put on the snmp version integer in order to not allow this kind of a problem.

    Own Id: OTP-7575

    Aux Id: Seq 11064

Incompatibilities

-

1.13  SNMP Development Toolkit 4.11.1

Version 4.11.1 supports code replacement in runtime from/to version 4.11.

Improvements and new features

  • [compiler] The MIB compiler did not retrieve the REFERENCE part of a SNMP MIB definition.

    This problem has been partly solved. For SNMP tables, the assocList field of the tables mib-entry record now contains this info (as {reference, string()}), if the MIB was compiled with the compiler option +reference.

    This solution is temporary, until such time as a permanent solution (and probably not backward compatible) is devised, which retrieves and stores all REFERENCE part(s) of a MIB.

    See the compiler options for more info.

    Serge Aleynikov

    Own Id: OTP-7426

  • Added utility functions for transforming DateAndTime as [int()] to strings; date_and_time_to_string/2 and date_and_time_to_string2/1.

    Also added new validation function validate_date_and_time/2.

    Own Id: OTP-7412

    Aux Id: Seq 10987

Reported Fixed Bugs and Malfunctions

  • [manager] Encryption error when attempting to send version 3 inform-requests.

    Own Id: OTP-7432

    Aux Id: Seq 10966

Incompatibilities

-

1.14  SNMP Development Toolkit 4.11

Version 4.11 supports code replacement in runtime from/to version 4.10.3, 4.10.2, 4.10.1 and 4.10.

Improvements and new features

  • [agent] Performance improvements in the case when an SNMP manager performs an snmpwalk.

    Martin Björklund

    Own Id: OTP-7201

  • The API for sending inform(s) has been improved. Also the documentation has been corrected and updated. See snmpa:send_notification and snmpa_notification_delivery_info_receiver for more info.

    Own Id: OTP-7287

    Aux Id: Seq 10926

  • [agent] Performance of the internal database (local-db) has been improved.

    Own Id: OTP-7319

    Aux Id: Seq 10942

  • [agent] Added utility functions, snmpa:restart_worker/0,1 and snmpa:restart_set_worker/0,1, for restarting the agent worker processes (in case the agent is multi-threaded).

    Own Id: OTP-7369

  • Add utility function to read a compiled mib.

    Own Id: OTP-7371

Reported Fixed Bugs and Malfunctions

  • [manager] Encryption error when attempting to send version 3 inform-requests.

    Own Id: OTP-7377

    Aux Id: Seq 10966

Incompatibilities

-