<?xml version="1.0" encoding="latin1" ?> <!DOCTYPE chapter SYSTEM "chapter.dtd"> <chapter> <header> <copyright> <year>2004</year><year>2010</year> <holder>Ericsson AB. All Rights Reserved.</holder> </copyright> <legalnotice> The contents of this file are subject to the Erlang Public License, Version 1.1, (the "License"); you may not use this file except in compliance with the License. You should have received a copy of the Erlang Public License along with this software. If not, it can be retrieved online at http://www.erlang.org/. Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. </legalnotice> <title>SNMP Release Notes history</title> <prepared></prepared> <responsible></responsible> <docno></docno> <approved></approved> <checked></checked> <date></date> <rev></rev> <file>notes_history.xml</file> </header> <section> <title>SNMP Development Toolkit 4.10.3</title> <p>Version 4.10.3 supports code replacement in runtime from/to version 4.10.2, 4.10.1 and 4.10.</p> <section> <title>Improvements and new features</title> <!-- <list type="bulleted"> <item> <p>The snmp documentation source has been converted from SGML to XML.</p> <p>Own Id: OTP-6771</p> </item> </list> --> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] The configuration option <seealso marker="snmp_app">inform_request_behaviour</seealso> was not properly parsed, which caused the manager to revert to the default value, <c>auto</c>. </p> <p>Own Id: OTP-7219</p> </item> </list> <!-- <p>-</p> --> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <!-- 4.10.3 --> <section> <!-- 4.10.2 --> <title>SNMP Development Toolkit 4.10.2</title> <p>Version 4.10.2 supports code replacement in run-time from/to version 4.10.1 and 4.10</p> <section> <title>Improvements and new features</title> <!-- <p>-</p> --> <list type="bulleted"> <item> <p>[compiler] The MIB-compiler did not recognize well-known-names as top parents. The names 'ccitt' (0) , 'iso' (1) and 'joint-iso-ccitt' (2) is now also recognized by the MIB compiler. </p> <p>Ola Samuelsson</p> <p>Own Id: OTP-7160</p> </item> <item> <p>[compiler] The MIB-compiler did not support a name assignment which was sequence of numbers, only a parent object name followed by a sequence of numbers. </p> <p>Ola Samuelsson</p> <p>Own Id: OTP-7158</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <!-- <p>-</p> --> <list type="bulleted"> <item> <p>[agent] Invalid variable value causes crashing agent worker process when sending traps. </p> <p>Own Id: OTP-7159</p> </item> <item> <p>[agent] When sending a trap, the order of the variable bindings not provided by the trap-sender, could be mangled by the agent. </p> <p>Ola Samuelsson</p> <p>Own Id: OTP-7157</p> </item> <item> <p>[agent] Uninstalling MEs when unloading mibs incorrect and therefor never done. </p> <p>Own Id: OTP-7153</p> </item> <item> <p>[agent] snmp_generic:table_set_cols/3 did not handle unexpected return values correctly when setting column values. </p> <p>Serge Aleynikov</p> <p>Own Id: OTP-7152</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <!-- 4.10.2 --> <section> <!-- 4.10.1 --> <title>SNMP Development Toolkit 4.10.1</title> <p>Version 4.10.1 supports code replacement in run-time from/to version 4.10</p> <section> <title>Improvements and new features</title> <p>-</p> <!-- <list type="bulleted"> <item> <p>Added buffer sizes (both receive and send) of the udp socket(s) info when calling the <seealso marker="snmpa#info">agent info</seealso> and <seealso marker="snmpm#info">manager info</seealso> function(s). </p> <p>Own Id: OTP-6945</p> </item> </list> --> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <!-- <p>-</p> --> <list type="bulleted"> <item> <p>[manager] Fixed usage of inet:gethostname/1. </p> <p>Dialyzer</p> <p>Own Id: OTP-7123</p> </item> <item> <p>[agent] Remeoved invalid guard. There was an invalid guard on the start function of the top agent supervisor. </p> <p>Dialyzer</p> <p>Own Id: OTP-7121</p> </item> <item> <p>[compiler] Old style fun cleanup in the MIB compiler. </p> <p>Dialyzer</p> <p>Own Id: OTP-7119</p> </item> <item> <p>Corrected usage of function file:open/2 (the <c>Modes</c> argument is a list). </p> <p>Own Id: OTP-7110</p> <!-- <p>Aux Id: Seq 10717</p> --> </item> <item> <p>The SNMP application contains some (previously undocumented) simple utility functions for function tracing (using dbg), see <seealso marker="snmp#enable_trace">enable_trace</seealso>, <seealso marker="snmp#disable_trace">disable_trace</seealso>, <seealso marker="snmp#set_trace1">set_trace/1</seealso>, <seealso marker="snmp#reset_trace">reset_trace</seealso> and <seealso marker="snmp#set_trace2">set_trace/2</seealso> for more info. These functions are intended to make it easy to enable tracing on individual functions. There where some minor errors, which has now been corrected. </p> <p>Own Id: OTP-7109</p> <!-- <p>Aux Id: Seq 10717</p> --> </item> <item> <p>There is a bug in snmp_pdus:enc_oct_str_tag/1. All the enc_* functions are supposed to return a flat list, but the second clause of this function does not. If it gets a binary it returns a deep list. </p> <p>Martin Björklund</p> <p>Own Id: OTP-7083</p> <!-- <p>Aux Id: Seq 10717</p> --> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <!-- 4.10.1 --> <section> <!-- 4.10 --> <title>SNMP Development Toolkit 4.10</title> <!-- <p>Version 4.10 supports code replacement in run-time from/to version 4.9.6</p> --> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>Added buffer sizes (both receive and send) of the udp socket(s) info when calling the <seealso marker="snmpa#info">agent info</seealso> and <seealso marker="snmpm#info">manager info</seealso> function(s). </p> <p>Own Id: OTP-6945</p> </item> <item> <p>[agent] Added the ability to change the request limit in run-time, see <seealso marker="snmpa#set_request_limit">set_request_limit</seealso> for more info. </p> <p>Own Id: OTP-6898</p> </item> <item> <p>Added the ability to change the audit trail log type in run-time (both agent and manager), see function(s) <seealso marker="snmpm#set_log_type">[manager] set_log_type</seealso> and <seealso marker="snmpa#set_log_type">[agent] set_log_type</seealso> for more info. </p> <p>Own Id: OTP-6841</p> </item> <item> <p>[agent] 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 <seealso marker="snmpa_network_interface_filter">network interface filter behaviour</seealso>. See also the <seealso marker="snmp_app#configuration_params">Configuring the application</seealso> chapter of the User's Guide to see how to configure this feature. </p> <p>Own Id: OTP-6649</p> </item> </list> <!-- <p>-</p> --> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <p>-</p> <!-- <list type="bulleted"> <item> <p>[agent] The order in which the processes in the snmp agent where terminated was incorrect. This could, in some case's, lead to incoming request(s) being processed during the application termination phase. This, in turn, could lead to various process crashes (when expected resources where no longer available). </p> <p>Own Id: OTP-6805</p> <p>Aux Id: Seq 10717</p> </item> </list> --> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <!-- 4.10 --> <section> <title>SNMP Development Toolkit 4.9.6</title> <p>Version 4.9.6 supports code replacement in run-time from/to version 4.9.5, 4.9.4, 4.9.3, 4.9.2, 4.9.1 and 4.9.</p> <section> <title>Improvements and new features</title> <!-- <list type="bulleted"> <item> <p>The snmp documentation source has been converted from SGML to XML.</p> <p>Own Id: OTP-6771</p> </item> </list> --> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[compiler] The MIB compiler did not handle import of the macro from the MIB RFC1155-SMI. </p> <p>Own Id: OTP-6840</p> <p>Aux Id: Seq 10726</p> </item> <item> <p>Bad length check (i.e. none) when decoding AuthenticationParameters. </p> <p>Own Id: OTP-6843</p> </item> </list> <!-- <p>-</p> --> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <!-- 4.9.6 --> <section> <title>SNMP Development Toolkit 4.9.5</title> <p>Version 4.9.5 supports code replacement in run-time from/to version 4.9.4, 4.9.3, 4.9.2, 4.9.1 and 4.9.</p> <section> <title>Improvements and new features</title> <!-- <list type="bulleted"> <item> <p>The snmp documentation source has been converted from SGML to XML.</p> <p>Own Id: OTP-6771</p> </item> </list> --> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[agent] The order in which the processes in the snmp agent where terminated was incorrect. This could, in some case's, lead to incoming request(s) being processed during the application termination phase. This, in turn, could lead to various process crashes (when expected resources where no longer available). </p> <p>Own Id: OTP-6805</p> <p>Aux Id: Seq 10717</p> </item> <item> <p>[agent] In version 4.9.4 some requests could be handled single threaded regardless of the value of the multi_thread config option. </p> <p>Own Id: OTP-6815</p> <p>Aux Id: Seq 10724</p> </item> </list> <!-- <p>-</p> --> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.9.4</title> <p>Version 4.9.4 supports code replacement in run-time from/to version 4.9.3, 4.9.2, 4.9.1 and 4.9.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>The snmp documentation source has been converted from SGML to XML.</p> <p>Own Id: OTP-6771</p> </item> </list> <!-- <p>-</p> --> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[agent] Unexpected worker process termination. When the agent is multi-threaded (multi_thread = true), sending a request to the agent with an invalid context could lead to an unexpected worker process termination. This is a non-fatal problem since the master-agent would simply create a new worker process. </p> <p>Own Id: OTP-6784</p> <p>Aux Id: Seq 10689</p> </item> </list> <!-- <p>-</p> --> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <!-- 4.9.4 --> <section> <title>SNMP Development Toolkit 4.9.3</title> <p>Version 4.9.3 supports code replacement in run-time from/to version 4.9.2, 4.9.1 and 4.9.</p> <section> <title>Improvements and new features</title> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[agent] Changing own [usm] pass-phrase when agent is multi-threaded did not work.</p> <p>Scott Lystig Fritchie</p> <p>Martin Björklund</p> <p>Own Id: OTP-6712</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.9.2</title> <p>Version 4.9.2 supports code replacement in run-time from/to version 4.9.1, 4.9 & 4.8.4.</p> <section> <title>Improvements and new features</title> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[agent] Incorrect default verbosity (trace) for target cache.</p> <p>Own Id: OTP-6571</p> <p>Aux Id: Seq 10437</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.9.1</title> <p>Version 4.9.1 supports code replacement in run-time from/to version 4.9 & 4.8.4.</p> <section> <title>Improvements and new features</title> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[agent] Used wrong DEFVAL for vacmAccessStorageType (volatile instead of nonVolatile) in SNMP-VIEW-BASED-ACM-MIB. </p> <p>Martin Björklund</p> <p>Own Id: OTP-6569</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.9</title> <p>Version 4.9 supports code replacement in run-time from/to version 4.8.4, 4.8.3, 4.8.2, 4.8.1 and 4.8.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>Added documentation for <seealso marker="snmp#passwd2localized_key">snmp:passwd2localized_key/3</seealso>. </p> <p>Own Id: OTP-6540</p> </item> <item> <p>The <seealso marker="snmp#config">snmp:config/0</seealso> utility function assumes by default current working dir as the directory to write config files. This is a problem since there are two files that share the same name, usm.conf, one for the agent and the other for the manager. Some extra checks has been added to be able warn the user about this possible conflict. </p> <p>Own Id: OTP-6532</p> </item> <item> <p>Minor documentation improvement for module snmp_generic. </p> <p>Own Id: OTP-6518</p> </item> <item> <p>[agent] Improve error handling of missing target params config. </p> <p>Own Id: OTP-6487</p> </item> <item> <p>Minor improvement to the mnesia snmp indexing. </p> <p>Own Id: OTP-6415</p> </item> <item> <p>Include the INET-ADDRESS-MIB mib in the SNMP application. </p> <p>Own Id: OTP-6383</p> </item> <item> <p>Added utility modules to read, write and update the config files of the <seealso marker="snmpa_conf">agent</seealso> and <seealso marker="snmpm_conf">manager</seealso>. </p> <p>Own Id: OTP-6318</p> </item> <item> <p>[agent] Improve behaviour during massive trap- sending. This is done in two way's:</p> <list type="bulleted"> <item> <p>Improving performance of the target(s) cache (which is used during trap/notification sending). </p> </item> <item> <p>A slightly better flow control, making it more difficult to actually overload the agent.</p> </item> </list> <p>Own Id: OTP-6317</p> <p>Aux Id: Seq 10437</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>Incorrect handling of decrypt failure resulting in incorrect error reporting. Applies to both the agent and the manager. Detected by dialyzer. </p> <p>Own Id: OTP-6533</p> </item> <item> <p>[manager] Invalid guard on function snmpm:agn/5 made it impossible to reach this particular clause. Detected by dialyzer. </p> <p>Own Id: OTP-6529</p> </item> <item> <p>Miscellaneous minor corrections, such as removing "dead code". Detected by dialyzer. </p> <p>Own Id: OTP-6515</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.8.4</title> <p>Version 4.8.4 supports code replacement in run-time from/to version 4.8.3, 4.8.2, 4.8.1 and 4.8.</p> <section> <title>Improvements and new features</title> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[agent] An Audit Trail Log entry was sometimes done using a list instead of the expected binary for the snmp packet. This caused an error when converting the log to a text-file. </p> <p>Own Id: OTP-6408</p> <p>Aux Id: Seq 10547</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.8.3</title> <p>Version 4.8.3 supports code replacement in run-time from/to version 4.8.2, 4.8.1 and 4.8.</p> <section> <title>Improvements and new features</title> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[agent] Verification of ViewTreeFamily (SNMP-VIEW-BASED-ACM-MIB) incorrect. No values other then <c>null</c> and <c>[]</c> where accepted. </p> <p>Own Id: OTP-6337</p> <p>Aux Id: Seq 10509</p> </item> <item> <p>[agent] Start with type <c>takeover</c> did not work. </p> <p>Own Id: OTP-6340</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.8.2</title> <p>Version 4.8.2 supports code replacement in run-time from/to version 4.8.1 and 4.8.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>Add time-stamp to the verbosity printouts. </p> <p>Own Id: OTP-6214</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>A badly formatted debug printout caused console printouts. </p> <p>Own Id: OTP-6247</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.8.1</title> <p>Version 4.8.1 supports code replacement in run-time from/to version 4.8, 4.7.4 and 4.7.3.</p> <section> <title>Improvements and new features</title> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>Removed an io:format in mini mib utility (used when converting logs). </p> <p>Own Id: OTP-6177</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.8</title> <p>Version 4.8 supports code replacement in run-time from/to version 4.7.4 and 4.7.3.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>Added a config option, <c>sndbuf</c>, for the net_if-module(s). See <seealso marker="snmp_app">application configuration</seealso> or <seealso marker="snmp_config">running the application</seealso> for more info (look for manager_net_if_options and agent_net_if_options). </p> <p>Own Id: OTP-6137</p> </item> <item> <p>Improve error handling of the log_to_txt function(s). [snmpm|snmpa]:log_to_txt on a non-existing log-file causes an obscure error reason.</p> <p>Own Id: OTP-6149</p> </item> <item> <p>Performance improvement when converting audit trail logs.</p> <p>Own Id: OTP-6164</p> <p>Aux Id: Seq 10362</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[compiler] Allow empty definitions for SMI-II mibs, i.e. mibs are allowed to only contain the MODULE-IDENTITY construct. </p> <p>Own Id: OTP-6150</p> <p>Aux Id: Seq 10333</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.7.4</title> <p>Version 4.7.4 supports code replacement in run-time from/to version 4.7.3, 4.7.2, 4.7.1 and 4.7.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>Add another example, <seealso marker="snmp_impl_example_manager">ex2</seealso>. This example is basically a simple manager module. </p> <p>Own Id: OTP-6042</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[agent] v1 trap sending minor problems. When sending a v1 trap, the wrong record type (#pdu{}) was used to access the type field (which does not exist in the #tranpdu{} record). This value is used when logging.</p> <p>Own Id: OTP-6077</p> </item> <item> <p>[manager] Type guard error.</p> <p>Kostis Sagonas.</p> <p>Own Id: OTP-6074 (dialyzer)</p> </item> <item> <p>Misc Dialyzer warnings.</p> <p>Own Id: OTP-6068</p> </item> <item> <p>[manager] Default value tags may conflict with actual host name. When storing default values for agents, the tag, default, was used for address (and port). This could conflict with an actual host name.</p> <p>Own Id: OTP-6062</p> </item> <item> <p>Misc doc corrections.</p> <p>Own Id: OTP-6044</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.7.3</title> <p>Version 4.7.3 supports code replacement in run-time from/to version 4.7.2, 4.7.1 and 4.7.</p> <section> <title>Improvements and new features</title> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>Misc compiler warning cleanup.</p> <p>Own Id: OTP-6031</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.7.2</title> <p>Version 4.7.2 supports code replacement in run-time from/to version 4.7.1 and 4.7.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>[manager] Improve handling of empty messages. Today when receiving an empty (size = 0) udp message, this will result in a decode failure (a catched function clause), which in turn will be passed on to the user, via a call to the <seealso marker="snmpm_user#handle_error">handle_error</seealso> callback function, in the <c>Reason</c> argument. This has now been changed so that instead, the <c>Reason</c> argument will get a <c>empty message</c> value.</p> <p>See <seealso marker="snmpm_user#handle_error">handle_error</seealso> for more details. </p> <p>Own Id: OTP-6024</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] Some error cases are reported to the 'user' with the ReqId and Reason swapped in the call to the <seealso marker="snmpm_user#handle_error">handle_error</seealso> callback function.</p> <p>Own Id: OTP-5992</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.7.1</title> <p>Version 4.7.1 supports code replacement in run-time from/to version 4.7, 4.6.1 and 4.6.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>Added new version info print functions, <seealso marker="snmp#print_version_info">print_version_info</seealso>.</p> <p>Own Id: OTP-5968</p> </item> <item> <p>Updated the documentation for the <seealso marker="snmpa#log_to_txt">agent</seealso> and <seealso marker="snmpm#log_to_txt">manager</seealso> log_to_txt functions.</p> <p>Own Id: OTP-5969</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] The supervision structure contained several errors which unnecessarily caused a complete restart of the manager.</p> <p>Own Id: OTP-5963</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.7</title> <p>Version 4.7 supports code replacement in run-time from/to version 4.6.1 and 4.6.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>Add simple backup mechanism, see <seealso marker="snmpa#backup">agent backup</seealso> and <seealso marker="snmpm#backup">manager backup</seealso>.</p> <p>Own Id: OTP-5870</p> </item> <item> <p>Improve handling of faulty data base files.</p> <p>Added new agent and manager config option, <c>db_init_error</c>, see <seealso marker="snmp_config">config</seealso> for more info.</p> <p>Own Id: OTP-5934</p> <p>Aux Id: Seq 10202</p> </item> <item> <p>Added possibility to configure restart type for each of the components (default is permanent for the agent and transient for the manager). See <seealso marker="snmp_config">config</seealso> for more info.</p> <p>Own Id: OTP-5935</p> </item> <item> <p>[compiler] Improve error printouts.</p> <p>Own Id: OTP-5937</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <p>-</p> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.6.1</title> <p>Version 4.6.1 supports code replacement in run-time from/to version 4.6.</p> <section> <title>Improvements and new features</title> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[agent] SNMP sha/aes decryption did not work. </p> <p>Magnus Fröberg</p> <p>Own Id: OTP-5834</p> </item> <item> <p>[agent] The SNMP agent internal data base (local db) uses dets, and does not properly handle error's from e.g. lookup.</p> <p>Own Id: OTP-5838</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.6</title> <p>Version 4.6 supports code replacement in run-time from/to version 4.5.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>Improved application start flexibility. It is now possible to start snmp application components (agent or manager) after the application has been started. It is even possible to start an "empty" snmp application and start the agent and/or manager afterwords. See <seealso marker="snmp#start_agent">start_agent</seealso> and <seealso marker="snmp#start_manager">start_manager</seealso>.</p> <p>Own Id: OTP-5797</p> <p>Aux Id: Seq 10128</p> </item> <item> <p>[agent] Adding utility function to convert old application config to current agent config. See the <seealso marker="snmpa#convert_config">convert_config</seealso> for more info.</p> <p>Own Id: OTP-5787</p> </item> <item> <p>Improved handling of audit trail logs. See the <seealso marker="snmp_app">atl_repair</seealso> config for more info.</p> <p>Own Id: OTP-5771</p> </item> <item> <p>[manager] Introduced the <seealso marker="snmpm#notify_started">notify_started</seealso> function used by a <em>client</em> to get a notification when the manager is started.</p> <p>Own Id: OTP-5763</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>Misc documentation corrections.</p> <p>Own Id: OTP-5829</p> <p>Aux Id: Seq 10152</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.5</title> <p>Version 4.5 supports code replacement in run-time from/to version 4.4.1 and 4.4.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>[manager] Introduced the <seealso marker="snmp_app">inform request behaviour</seealso> configuration option to allow the user to specify how/when the manager shall acknowledge inform-request's.</p> <p>Own Id: OTP-5733</p> </item> <item> <p>[manager] In order to improve application behaviour, all callback function (see the <seealso marker="snmpm_user">snmpm_user behaviour</seealso>) calls are now done by spawned processes (and not as previously by the SNMP manager server process).</p> <p>Own Id: OTP-5726</p> </item> <item> <p>[manager] In order to present the various error reason's returned by the manager, a <seealso marker="snmpm#format_reason">format_reason</seealso> function has been added. The error reasons this function handles are those returned by the (sync and async) get, get-next, get-bulk and set-functions (see the <seealso marker="snmpm">snmpm</seealso> module) as well as the <c>Reason</c> argument of the <seealso marker="snmpm_user#handle_error">handle_error</seealso> function of the <seealso marker="snmpm_user">user callback module</seealso>.</p> <p>Own Id: OTP-5581</p> <p>Aux Id: Seq 9870</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] The (error) report according to RFC 2572, chapter 7.2 point 6) was never sent.</p> <p>Own Id: OTP-5742</p> </item> <item> <p>[agent] Check of notification name collision could fail due to incorrect record name (assumed to be <c>#trap</c>, but could also be <c>#notification</c>). This only cases a problem when the application is compiled with the strict_record_tests option.</p> <p>Own Id: OTP-5740</p> </item> <item> <p>[agent] Table get-request failure in some cases.</p> <p>Own Id: OTP-5732</p> <p>Aux Id: Seq 10087</p> </item> <item> <p>Explicitly sync all audit trail log's upon termination.</p> <p>Own Id: OTP-5727</p> </item> </list> </section> <section> <title>Incompatibilities</title> <list type="bulleted"> <item> <p>[manager] The <seealso marker="snmpm_network_interface">snmpm_network_interface</seealso> behaviour has been updated (see <seealso marker="snmpm_network_interface#inform_response">inform_response</seealso> and <seealso marker="snmp_manager_netif">definition of the manager net if</seealso>).</p> <p>Own Id: OTP-5733</p> </item> </list> </section> </section> <section> <title>SNMP Development Toolkit 4.4.1</title> <p>Version 4.4.1 supports code replacement in run-time from/to version 4.4.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>[manager] Add monitoring of the SNMP manager. The SNMP application consists of two different run-time parts, the agent and the manager. They are independent of each other. The agent is "permanent" and the manager "transient". In order to handle manager crashes a simple <seealso marker="snmpm#monitor">monitor</seealso> (and <seealso marker="snmpm#demonitor">demonitor</seealso>) function has been added.</p> <p>Own Id: OTP-5720</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] If sending a set-request containing an 'OCTET STRING' with an invalid integer (valid integer are 0-255), the encoding will fail and cause the net_if process to crash.</p> <p>Own Id: OTP-5719</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.4</title> <p>Version 4.4 supports code replacement in run-time from/to version 4.3.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>Updated and extended the <seealso marker="snmpa#info">agent</seealso> info retrieval function. Also added an info retrieval function for the <seealso marker="snmpm#info">manager</seealso>.</p> <p>Own Id: OTP-5666</p> </item> <item> <p>[manager] Added get-bulk functionality, see (sync) get-bulk and (async) get-bulk for more info.</p> <p>Own Id: OTP-5669</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] Mini-MIB not properly initiated which could cause a server crash if the name_to_oid or oid_to_name functions where called (if no mib's where loaded).</p> <p>Own Id: OTP-5675</p> </item> <item> <p>[manager] The out packet counter was not incremented for sent v1/v2 messages.</p> <p>Own Id: OTP-5676</p> </item> <item> <p>[manager] The request GC process was started with the wrong default value (idle) which could (unlikely but still) cause problems after a code-change.</p> <p>Own Id: OTP-5678</p> </item> <item> <p>Bad handling of error cases (corrupt log file) when converting log files (i.e. when calling the function log_to_txt).</p> <p>Own Id: OTP-5703</p> </item> </list> </section> <section> <title>Incompatibilities</title> <list type="bulleted"> <item> <p>[agent] The format of the info returned by the agent info retrieval function has been changed. The info can be converted to the old format by calling the <seealso marker="snmpa#old_info_format">old_info_format</seealso>).</p> <p>function. </p> <p>Own Id: OTP-5666</p> </item> </list> </section> </section> <section> <title>SNMP Development Toolkit 4.3</title> <p>Version 4.3 supports code replacement in run-time from/to version 4.2.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>[manager] Improved async error reporting.</p> <p>Own Id: OTP-5637</p> <p>Aux Id: Seq 9970</p> </item> <item> <p>Added support for The Advanced Encryption Standard (AES) Cipher Algorithm in the SNMP User-based Security Model (RFC 3826). Both agent and manager. </p> <p>Martin Björklund</p> <p>Own Id: OTP-5490</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] Reset of USM-cache when unregister agent.</p> <p>Own Id: OTP-5636</p> <p>Aux Id: Seq 9970</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.2</title> <p>Version 4.2 supports code replacement in run-time from/to version 4.1.5.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>[manager] Added another get, get-next and set function with another argument, <c>ExtraInfo</c> (see synchronous get (g), asynchronous get (ag), synchronous set (s), asynchronous set (as), synchronous get-next (gn), and asynchronous get-next (agn)). This argument is passed on to the net-if process. The net-if process included in this application makes no use of this info, but other implementations might.</p> <p>Own Id: OTP-5574</p> <p>Aux Id: Seq 9850</p> </item> <item> <p>[manager] <c>report</c> message with incorrect security info (e.g. securtyModel and/or securityLevel) was ignored (dropped, except for incrementing the proper error counter) even if all other info was correct. This has been changed so that in this situation, the user will be informed, either via the return value from a synchronous call (see synchronous get (g), synchronous set (s) and synchronous get-next (gn)) or via a call to the handle_error callback function.</p> <p>Own Id: OTP-5578</p> <p>Aux Id: Seq 9850</p> </item> <item> <p>[manager] Added a <seealso marker="snmpm#unregister_usm_user">unregister_usm_user</seealso> function.</p> <p>Own Id: OTP-5580</p> <p>Aux Id: Seq 9850</p> </item> <item> <p>[agent] Added new functions to get lists of all tables, <seealso marker="snmpa#which_tables">which_tables</seealso>, and variables, <seealso marker="snmpa#which_variables">which_variables</seealso>, known to the agent.</p> <p>Own Id: OTP-5590</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] Incorrect SHA-key length check when updating usm-user info (should have been 20 but was 16).</p> <p>Own Id: OTP-5579</p> <p>Aux Id: Seq 9850</p> </item> <item> <p>[compiler] Incorrect error report when the name of the field and object is the same. </p> <p>Kostis Sagonas</p> <p>Own Id: OTP-5591 (dialyzer)</p> </item> <item> <p>[manager] Arguments Port (third argument) and CtxName (fourth argument) where swapped in snmpm:g/5 when forwarding call. </p> <p>Kostis Sagonas</p> <p>Own Id: OTP-5592 (dialyzer)</p> </item> </list> </section> <section> <title>Incompatibilities</title> <list type="bulleted"> <item> <p>[manager] The <c>snmpm_network_interface</c> behaviour has changed. One more argument (ExtraInfo) was added to the function send_pdu (see <seealso marker="snmpm_network_interface#send_pdu">send_pdu</seealso>).</p> <p>Own Id: OTP-5574</p> <p>Aux Id: Seq 9850</p> </item> </list> </section> </section> <section> <title>SNMP Development Toolkit 4.1.5</title> <p>Version 4.1.5 supports code replacement in run-time from/to version 4.1.4, 4.1.3, 4.1.2, 4.1.1 and 4.1.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>[agent] Add mapping of notification oid to alias-name. </p> <p>Martin Björklund</p> <p>Own Id: OTP-5562</p> </item> <item> <p>[manager] Late (async) reply incorrectly delivered to user via handle_pdu instead of handle_error.</p> <p>Own Id: OTP-5506</p> <p>Aux Id: Seq 9804</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] Security level handled incorrectly.</p> <p>Own Id: OTP-5564</p> <p>Aux Id: Seq 9850</p> </item> <item> <p>[manager] (v3) Encryption/decryption failure.</p> <p>Own Id: OTP-5560</p> <p>Aux Id: Seq 9850</p> </item> <item> <p>[manager] Cannot handle version-1 traps.</p> <p>Own Id: OTP-5557</p> <p>Aux Id: Seq 9850</p> </item> <item> <p>[manager] Set-request without specifying the variable type failed. The type of the oid had to be found in the loaded MIB. This look-up was erroneous.</p> <p>Own Id: OTP-5556</p> <p>Aux Id: Seq 9850</p> </item> <item> <p>[agent] Error's reported by the SecModule (v3) when generating outgoing message was not handled correctly in message processing dispatcher module.</p> <p>Own Id: OTP-5550</p> </item> <item> <p>[manager] Error's reported by the SecModule (v3) when generating outgoing message was not handled correctly in message processing dispatcher module. And also when encryption failed, the real error was masked into another error.</p> <p>Own Id: OTP-5548</p> <p>Aux Id: Seq 9804</p> </item> <item> <p>[agent] Failure to stop the snmp application when started with the old config type.</p> <p>Own Id: OTP-5547</p> <p>Aux Id: Seq 9842</p> </item> <item> <p>[manager] User unregistration after reboot causes process crash (snmpm_server).</p> <p>Own Id: OTP-5539</p> </item> <item> <p>[manager] Security engine id look-up errors.</p> <p>Own Id: OTP-5508</p> <p>Aux Id: Seq 9804</p> </item> <item> <p>[manager] Registering of USM users erroneous.</p> <p>Own Id: OTP-5505</p> <p>Aux Id: Seq 9804</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.1.4</title> <p>Version 4.1.4 supports code replacement in run-time from/to version 4.1.3, 4.1.2, 4.1.1 and 4.1.</p> <section> <title>Improvements and new features</title> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>Fixed a perl related problem in the mibs Makefile. </p> <p>Geoff White</p> <p>Own Id: OTP-5491</p> </item> <item> <p>[manager] Failed to register usm users. Both using the usm config file (<seealso marker="snmp_manager_config_files#usm_user">usm.conf</seealso>) and the API functions <seealso marker="snmpm#register_usm_user">register_usm_user</seealso></p> <p>Own Id: OTP-5499</p> <p>Aux Id: Seq 9804</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.1.3</title> <p>Version 4.1.3 supports code replacement in run-time from/to version 4.1.2, 4.1.1 and 4.1.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>Added utility functions to update agent and manager config files.</p> <p>Own Id: OTP-5468</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[agent] Error replies was composed with invalid OIDs for the following error counters: <em>usmStatsWrongDigests</em> (RFC 2574, chap 3.2, point 6), <em>usmStatsUnsupportedSecLevels</em> (point 5) and <em>usmStatsDecryptionErrors</em> (point 8a).</p> <p>Own Id: OTP-5464</p> <p>Aux Id: Seq 9791</p> </item> <item> <p>[agent] Malformed Oid returned from a get_next operation as part of a get-bulk-request causes the agent to crash.</p> <p>Own Id: OTP-5465</p> <p>Aux Id: Seq 9783, Seq 9793</p> </item> <item> <p>[agent] Missing catch on decode function call.</p> <p>Kostis Sagonas (Dialyzer)</p> <p>Own Id: OTP-5479</p> </item> <item> <p>[manager] Invalid check for illegal options.</p> <p>Kostis Sagonas (Dialyzer</p> <p>Own Id: OTP-5480</p> </item> <item> <p>Faulty utility function for generation of agent config file target_addr.conf.</p> <p>Own Id: OTP-5482</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit 4.1.2</title> <p>Version 4.1.2 supports code replacement in run-time from/to version 4.1.1 and 4.1.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>Export utility functions to create agent and manager config files.</p> <p>Own Id: OTP-5390</p> </item> <item> <p>[agent] Documented instrumentation utility functions (e.g. <seealso marker="snmpa#current_request_id">current_request_id</seealso>).</p> <p>Own Id: OTP-5423</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] If the client crashes after having issued an async request, the server will crash when trying to perform cleanup. Supervision of the calling process issuing an async request has been removed. </p> <p>Own Id: OTP-5370</p> </item> <item> <p>Failure to convert an audit-trail-log to text-file when using the default log name. This applies to both the manager and the agent. </p> <p>Own Id: OTP-5394</p> </item> <item> <p>[manager] Corrected the discovery handling of the manager.</p> <p>Own Id: OTP-5414</p> </item> <item> <p>[manager] Statistic counter creation correction.</p> <p>Own Id: OTP-5415</p> </item> <item> <p>[agent] When using the old style agent configuration (pre 4.0), it was not possible to specify a different error report module (the agent always choose snmpa_error_logger). A similar problem existed for the config option force_config_load, which always reverted to false.</p> <p>Own Id: OTP-5424</p> </item> <item> <p>[manager] The manager net_if process failed to properly handle the case bind_to option value true.</p> <p>Own Id: OTP-5431</p> </item> <item> <p>[agent] Various minor mnesia-related fixes.</p> <p>Martin Björklund</p> <p>Own Id: OTP-5433</p> </item> <item> <p>[manager] Missing interface functions for loading and unloading mibs into/from the manager: <seealso marker="snmpm#load_mib">load_mib</seealso>, <seealso marker="snmpm#unload_mib">unload_mib</seealso>, <seealso marker="snmpm#which_mibs">which_mibs</seealso>, <seealso marker="snmpm#name_to_oid">name_to_oid</seealso> and <seealso marker="snmpm#oid_to_name">oid_to_name</seealso>.</p> <p>Own Id: OTP-5441</p> </item> <item> <p>Added utility functions to retrieve some system and application info, see <seealso marker="snmp#versions1">versions1</seealso> and <seealso marker="snmp#versions2">versions2</seealso>.</p> <p>Own Id: OTP-5445</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit v4.1.1</title> <p>Version 4.1.1 supports code replacement in run-time from/to version 4.1. </p> <p>When performing a downgrade, make sure the verbosity of the manager server process is silence, or else the process will crash (due to a bug in version 4.0.4) and be restarted by its supervisor.</p> <section> <title>Improvements and new features</title> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] Manager synchronous get-function with timeout erroneous. Results in a function clause.</p> <p>Own Id: OTP-5364</p> </item> <item> <p>Replace in decoder fun's of the "old style" fun format, {atom(), atom()}, with a proper fun, e.g. "fun the_function/1".</p> <p>Own Id: OTP-5365</p> </item> <item> <p>[manager] Register agent using the config file agents.conf failed due to incorrect function guard.</p> <p>Own Id: OTP-5367</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit v4.1.0</title> <p>Version 4.1.0 supports code replacement in run-time from/to version 4.0.4. </p> <p>When performing a downgrade, make sure the verbosity of the manager server process is silence, or else the process will crash (due to a bug in version 4.0.4) and be restarted by its supervisor.</p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>[manager] Added possibility to monitor a registered user. See <seealso marker="snmpm#register_user_monitor">snmpm:register_user_monitor</seealso>.</p> <p>Own Id: OTP-5286</p> </item> <item> <p>[agent] Improved symbolic store. Alias and Oids where stored with similar key's (separated by types: atom() and lists() respectively). Also added new function: <seealso marker="snmpa#which_aliasnames">snmpa:which_aliasnames</seealso>.</p> <p>Own Id: OTP-5298</p> </item> <item> <p>[agent] The agent local_db volatile storage method uses an ets-table which is private. This table has been made protected in order to make it easier to debug and test the snmp agent.</p> <p>Own Id: OTP-5308</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>Misspelled deprecated function. Non-existent function snmp:is_constistent/1 was marked as deprecated. Should have been snmp:is_consistent/1).</p> <p>Own Id: OTP-5273</p> </item> <item> <p>[agent] Unclear documentation for function <seealso marker="snmpa#send_notification">snmpa:send_notification</seealso>. The Recv argument (specifically the {M,F,A} variant).</p> <p>Own Id: OTP-5281</p> </item> <item> <p>[manager] It was never documented how the default <seealso marker="snmpm_user">user behaviour</seealso> could be overridden (default user is the module <c>snmpm_user_default</c>). See <seealso marker="snmp_app">application configuration</seealso> or <seealso marker="snmp_config#configuration_params">configuration params</seealso>.</p> <p>Own Id: OTP-5299</p> </item> <item> <p>[manager] The server process contained a bug that caused it to crash, if it received an exit message from its gct (GC timer) process and its verbosity was <em>log</em> or higher. </p> <p>This also effects the application downgrade. </p> <p>Own Id: OTP-5306</p> </item> <item> <p>[agent] The agent config file, target_addr.conf, was incorrectly described in the <seealso marker="snmp_agent_config_files#target_addr">Target Address Definitions</seealso> chapter of the User's Guide. The EngineId option was left out.</p> <p>Own Id: OTP-5307</p> <p>Aux Id: Seq 9689</p> </item> <item> <p>[manager] When a InformRequest is received, the manager sends a response message. This did not include the varbinds of the original message. See RFC 3416, chapter 4.2.7.</p> <p>Own Id: OTP-5314</p> </item> <item> <p>[manager] Erroneous function guards made it possible to update some agent info (that should be "static").</p> <p>Own Id: OTP-5315</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit v4.0.4</title> <p>Version 4.0.4 supports code replacement in run-time from/to version 4.0.3, 4.0.2, 4.0.1 and 4.0. </p> <section> <title>Improvements and new features</title> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] The timeout calculation for the request gc timer incorrect.</p> <p>Own Id: OTP-5267</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit v4.0.3</title> <p>Version 4.0.3 supports code replacement in run-time from/to version 4.0.2, 4.0.1 and 4.0. </p> <section> <title>Improvements and new features</title> <p>-</p> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] Some basic SNMP types where not handled when performing set-requests snmpm:s and snmpm:as): 'BITS' (b), 'IpAddress' (ip), 'Opaque' (op), 'Counter32' (c32), 'Counter64' (c64) and 'TimeTicks' (tt).</p> <p>Own Id: OTP-5256</p> </item> <item> <p>[manager] Unnecessary error message when receiving trap from unregistered agent or agent using other port then the request port for trap-sending.</p> <p>Own Id: OTP-5258</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit v4.0.2</title> <p>Version 4.0.2 supports code replacement in run-time from/to version 4.0.1 and 4.0. </p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>[manager] When the net_if process failed to send a message, for whatever reason, this is just dropped. And the user is "left hanging". Now, if the request is synchronous, it will return with a proper reason (snmpm:g, snmpm:gn and snmpm:s), and if the request was asynchronous, the new callback function, handle_error (see <seealso marker="snmpm_user">snmpm_user</seealso>) is called. </p> <p>Own Id: OTP-5242</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] The arguments CtxName and Port was swapped in the function snmpm:g/6.</p> <p>Own Id: OTP-5225</p> </item> <item> <p>[manager] TRAP receive fails for unknown agent due to failing message size calculation.</p> <p>Own Id: OTP-5241</p> </item> </list> </section> <section> <title>Incompatibilities</title> <list type="bulleted"> <item> <p>[manager] Introduced a new callback function in the behaviour <seealso marker="snmpm_user">snmpm_user</seealso>.</p> <p>Own Id: OTP-5242</p> </item> </list> </section> </section> <section> <title>SNMP Development Toolkit v4.0.1</title> <p>Version 4.0.1 supports code replacement in run-time from/to version 4.0. </p> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>[agent] Added functions to get a list of all mibs loaded into an agent (see <seealso marker="snmpa#which_mibs">snmpa:which_mibs</seealso>) and to get the (full path) file name of a loaded mib (see <seealso marker="snmpa#whereis_mib">snmpa:whereis_mib</seealso>).</p> <p>Own Id: OTP-5187</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[manager] The wrong default value (1024) was used for the net-if option recbuf. If no value is specified, then the OS default shall be used.</p> <p>Own Id: OTP-5196</p> </item> </list> </section> <section> <title>Incompatibilities</title> <p>-</p> </section> </section> <section> <title>SNMP Development Toolkit v4.0</title> <section> <title>Improvements and new features</title> <list type="bulleted"> <item> <p>[manager] Added a proper snmp manager.</p> <p>Major restructure of the application in order to incorporate the new manager.</p> </item> <item> <p>[agent] Add a <c>snmpa:get/3</c> with an extra <c>Context</c> argument. Also added similar <c>snmpa:get_next/2,3</c> functions. See <seealso marker="snmpa#get">snmpa:get</seealso> and <seealso marker="snmpa#get_next">snmpa:get_next</seealso>. </p> <p>Martin Björklund</p> <p>Own Id: OTP-5054</p> </item> <item> <p>[agent] Add <em>notification filters</em>. See <seealso marker="snmpa_notification_filter">snmpa_notification_filter</seealso>, <seealso marker="snmpa#register_notification_filter">register_notification_filter</seealso>, <seealso marker="snmpa#unregister_notification_filter">unregister_notification_filter</seealso> and <seealso marker="snmpa#which_notification_filter">which_notification_filter</seealso>.</p> <p>Own Id: OTP-5055</p> </item> <item> <p>[agent] Added two mib look-up functions, <seealso marker="snmpa#me_of">me_of</seealso> and <seealso marker="snmpa#mib_of">mib_of</seealso>.</p> <p>Own Id: OTP-5082</p> <p>Aux Id: Seq 8848</p> </item> <item> <p>[compiler] The MIB compiler is now (source code) independent of the rest of the application (and vice versa).</p> </item> <item> <p>[compiler] DISPLAY-HINT and UNITS included in the compiled mib.</p> <p>Own Id: OTP-5053</p> </item> <item> <p>[compiler] Added compiler options <c>imports</c> and <c>module_identity</c> to include the imports list and module identity (only SMIv2) info in the compiled mib, see <seealso marker="snmpc">snmpc</seealso>.</p> </item> <item> <p>[compiler] Added the MIB compiler option <c>+no_defs</c>, see <seealso marker="snmpc">snmpc</seealso>.</p> <p>Martin Björklund</p> </item> <item> <p>[compiler] Added the MIB compiler option <c>+'{module, atom()}'</c>, see <seealso marker="snmpc">snmpc</seealso>. </p> <p>Martin Björklund</p> </item> </list> </section> <section> <title>Reported Fixed Bugs and Malfunctions</title> <list type="bulleted"> <item> <p>[agent] Failing MIB configure/reconfigure was difficult to diagnose. Added better error handling and verbosity.</p> </item> <item> <p>[compiler] Added "default value" for INTEGER with enumeration without a DEFVAL clause. The lowest valid integer value is chosen for the variable_info defval.</p> <p>Own Id: OTP-5124</p> <p>Aux Id: Seq 8738</p> </item> <item> <p>[compiler] Unnecessarily reserved words in the mib compiler can cause some enumeration definitions to fail.</p> <p>Martin Björklund</p> <p>Own Id: OTP-5066</p> </item> </list> </section> <section> <title>Incompatibilities</title> <list type="bulleted"> <item> <p>New sys configuration format. Although the old configuration format still works (if only the agent is used), it is no longer documented and will eventually be eliminated. See <seealso marker="snmp_app">application configuration</seealso> or <seealso marker="snmp_config#configuration_params">configuration params</seealso> for more info.</p> </item> <item> <p>Three new interface modules have been introduced. One for each of the individual parts of the application:</p> <list type="bulleted"> <item> <p>[agent] <c>snmpa</c></p> </item> <item> <p>[manager] <c>snmpm</c></p> </item> <item> <p>[compiler] <c>snmpc</c></p> </item> </list> <p>The primary interface module, <c>snmp</c>, still exist. It contains the application generic functions. The agent specific stuff still exist (for backward compatibility reasons), but has been deprecated and will eventually be removed.</p> <p>Some previously already deprecated functions has been removed (since they in turn was dependent on deprecated functions, see calendar).</p> </item> <item> <p>[agent] The agent network interface API has changed. See <seealso marker="snmp_agent_netif">snmp agent net if</seealso>,</p> </item> <item> <p>[agent] The default agent audit trail log name has changed.</p> </item> <item> <p>[compiler] Mib format has changed (see OTP-5053 above).</p> </item> </list> </section> </section> </chapter>