After more than 10 years of SNMP4J-SMI-PRO 1.x 2026-06-23T22:00:00Z version 2.0.0 was released! The 2.x release provides
- Up-to 50% faster lookups from loaded modules
- No 3rd-party license dependencies (JGL) anymore - included JSON is ‘public domain’
- Added JSON support and operations for AI integration
- SNMP4J-SMI-PRO and SNMP4J-MCP provides a full featured SNMP AI tool for managing SNMP devices and analysing SNMPv3 messages as well as doing research and development for MIB specifications.
- SNMP4J-SMI-PRO 2.0.0 requires Java 21 or later
CHANGES
- Removed: Dependency on the JGL (Generic Collection Library). Java standard collection types are used throughout in place of JGL collection classes. This reduces the size of the library and improves the performance of
SmiManager.findSmiObject(OID)by ~30%. - Added: New package
com.snmp4j.smi.berwithSnmpMessageTree,BERNode, andBERNodeErrorfor parsing raw SNMP messages into a navigable BER decode tree. Supports SNMPv1, SNMPv2c, and SNMPv3 including AUTH_PRIVScopedPDUdecryption viaDirectUserTargetcredentials. The tree can be rendered as an indented text tree (SnmpMessageTree.formatAsText()) or as a JSON object tree (SnmpMessageTree.formatAsJson()).BERNodeErrornodes record parse deviations with position, offending bytes, and expected tags. A Draft 2020-12 JSON Schema for the BER node JSON format is provided as a classpath resource (com.snmp4j.smi.ber/BERNodeJsonSchema.json). - Added:
SmiObjectJsonConverterandSmiObjectJsonMatcherin new packagecom.snmp4j.smi.util.jsonfor converting MIB object instance data to JSON and matching JSON values against MIB object types. A Draft 2020-12 JSON Schema (SmiObjectJsonSchema.json) describes the supported JSON representation. - Added:
SmiSyntaxElement.getComment()to retrieve the comment associated with an SMI syntax element. - Improved:
PolymorphicColumnTypenow supports polymorphic formatting of column values based on the actual type of the variable binding. The default polymorphic formatters are:SNMP-TARGET-MIB|NOTIFICATION-LOG-MIB:TAddress, AGENTX-MIB:AgentXTAddress, IP-MIB:InetAddressType, TCP-MIB:InetAddressType, UDP-MIB:InetAddressType, IP-FORWARD-MIB:InetAddressType. - Improved:
SmiManager.loadModules()now properly closes all I/O resources after loading, preventing resource leaks when module files are deleted or inaccessible during load operations. - Changed: Default DISPLAY-HINT is no longer
OctetStringDefaultFormat.ASCII, instead it is set toOctetStringDefaultFormat.MIB.