MIB Smithy 4.1 Release
Wrapping up today’s flurry of releases, I’m pleased to announce the availability of MIB Smithy 4.1. This is primarily a bug fix release, but also provides some new features in the built-in SNMP tools also made in MIB Views 1.4.
Changes in this release:
This version of MIB Smithy includes changes made in MIB Smithy SDK 3.4.4, plus the following changes.
877: Additional keyboard bindings for trees
The Project and Files trees in the main GUI now have left and right key bindings to navigate, close, and open branches and behave as the MIB Browser tool does.
922: Instance identifier parsing for SNMP Tools
The variable lists in the SNMP Query, Walk, Trap Watch, and Tree View tools can now be expanded like a tree to display additional index values decoded from instance identifiers.
857: Close button missing on workspace
Due to missing images in the Windows distribution, the red close button in the upper right corner of workspace pages was not visible.
841: Error when saving file with unresolved OID
A “Root identifier … does not exist” error would occur during OID sorting when attempting to save or preview a module with OID dependencies that were not loaded.
878: Unix: Build dependency checkbuttons not working
The checkbuttons in the dependency section of the Build Settings dialog did not work when using the default X11 and “classic” themes due to Tile not defining a separate indicator element. These checkbuttons are now functional with these themes.
845: Inconsistent import failure messages in log
When adding a single file to a project that failed to import, log messages would be generated that indicated it both failed and was imported. Only the failure message will now be generated.
903: Unable to correct case from Project Tree
When using the popup dialog to rename records, MIB Smithy was checking if the old and new case of the first letter were the same rather than verifying the case was valid for the record type.
881: “invalid workspace type undefined” error
An “invalid workspace type” error could occur when double-clicking a record in the Project tree to edit properties if the record was defined under an implicit node (e.g. “xyz.0.1”, with no assignment for “xyz.0”), as seen for enterprise-specific TRAP-TYPEs in SMIv1 modules.
642: TreeCtrl +/- buttons don’t redraw sometimes
Under Windows, +/- buttons wouldn’t redraw when expanding/collapsing a branch that had no children until geometry changes forced a redraw. This is fixed in the upgraded TreeCtrl.
635: “Save As” should not allow multiple files with the same name
MIB Smithy does not normally allow multiple files with the same name in a project. However, “Save As” was not checking to see if the file name was already in use in the project before saving.
681: Inconsistent selection colors
Non-Tile components now get their selection colors from the Tile theme for improved consistency in appearance.
894: Unix: Ctrl-V to paste not working in text boxes
Back-ported a patch to the default Tk text widget bindings to fix bug preventing Ctrl-V from functioning as paste under Unix.
905: Target selection after drag-and-drop
After drag-and-drop copying and moving records within the project tree, the newly created or moved record will now be selected.
MIB Smithy SDK 3.4.4 Release
I am pleased to announce the release of MIB Smithy SDK 3.4.4. Many bug fixes have been made in this release to clear the way for new features.
Changes in this release:
741: Allow empty modules in SMI parser
Modules without any assignments in them (which might happen if you create a module in MIB Smithy and save it before defining anything in it) can now be loaded by the SMI parser.
253: Documentation for database -logcommand setting
Documentation has been added for the SMI Database’s -logcommand setting, which allows user control over the formatting of compiler and parser messages.
851: XML version of SNMPv2-SMI errors about IMPORTS
Validating SNMPv2-SMI from XML format caused a false error regarding OBJECT-IDENTITY needing to be imported due to module version not being determined when there is no imports element.
848: Tables are not saved/restored from XML correctly
Single-identifier subtypes (as in the ‘SysORTable’ in ‘SEQUENCE OF SysORTable’) were being assigned by the XML parser to the wrong field, resulting in saved/restored XML files from failing validation on tables.
842: Importing of XML files fails with no error message
The XML parser did not previously support sending log messages through the SMI database’s logcommand, just logchannel. This resulted in error messages not being displayed in the “Tasks” list of MIB Smithy.
844: XML files fail to import with large integers
Due to an arithmetic error in the XML parser’s integer overflow checking, XML files could fail to import with sufficiently large integer values (e.g. in range elements).
914: Dropped notifications during bursts
Notifications could be dropped during bursts of many (or large) packets due to the default receive buffer size provided by the Windows TCP/IP stack. The SDK now requests up to a 1 MB buffer for the trap socket (on all platforms) to reduce the risk of packet loss.
255: MacOSX: tclsh aborts loading SDK without valid license key
With Tk built for Aqua, tclsh would terminate with SIGABRT when not logged in at the console when attempting to display the license dialog. The SDK now checks if Aqua or X11 environments are available to the session before attempting to load Tk.
882: Relaxed case restrictions on database queries
Although the SMI parser was able to handle illegal upper/lowercase first letters for record names, the validation for database queries was still strict. This caused “$db get -fulloid Foo” to succeed but “$db get -fulloid Foo.0” to error regarding an invalid OID (which it is, but limited the usefulness of the parser’s handling of them).
912: SNMPv1 Trap-PDU encoding incorrect
The SNMPv1 Trap-PDU fields were being encoded in the wrong order when using the SDK to send SNMPv1 traps. Consequently, the SDK could not decode SNMPv1 traps sent to itself.
850: XML parser doesn’t check for equal min/max range values
Both the min and max attributes of the range element in the XML Schema are required, so single range values are generated as equal min and max. However, upon importing an XML file these values were not merged back into one, resulting in validation errors.
818: TRAP-TYPE’s REFERENCE field not preserved
The REFERENCE field of TRAP-TYPEs will no longer be lost when loading MIB modules.
817: Querying CREATION-REQUIRES returns only one element
Querying CREATION-REQUIRES property of a variation will now return all of the symbols listed, rather than only one.
254: snmplib format command documentation corrections
Docs for the snmplib format command were corrected to reflect the actual default format for enumerations (label only) and invalid “-format” argument in example 2.
308: -includes option missing from get capabilities
The documented -includes property for querying AGENT-CAPABILITIES statements was implemented only with the -mandatory-groups synonym, while both -includes and -mandatory-groups were supported for querying conformance modules and only -mandatory-groups was supported for querying MODULE-COMPLIANCE. Both ACs and MCs now support both synonyms.
MIB Views 1.4 Release
I’m pleased to announce the release of MIB Views 1.4, especially after an all-too-long period of dealing mostly with server migration, virtualization, migrating data to FogBugz, and not enough product development. It’s been very good to get back to it. We’ve moved nearly all of the old to-do stuff to FogBugz cases, and after a thorough review and some planning and scheduling, it’s been great to be getting those cases closed, especially in MIB Smithy and MIB Smithy SDK (which will also be released later today) and regain some clarity, direction, and productivity.
Changes in this release:
673: Instance identifier parsing for SNMP Tools
The variable lists in the SNMP Query, Walk, Trap Watch, and Tree View tools can now be expanded like a tree to display additional index values decoded from instance identifiers.
639: Upgrade TreeCtrl to 2.2.5+
The TreeCtrl version used by MIB Views has been updated to version 2.2.5. Among other things, this may fix issues with artifacts on some platforms.
886: Relaxed OID input validation
OID fields no longer require that input be strictly legal form. If a MIB can be loaded despite illegal identifier capitalization, it should now be possible to do SNMP queries with it.
887: Additional icons for status bar messages
Icons were added to some status bar messages to make them more noticeable.
876: Attempts to contact localhost when unconfigured
Expanding branches in Tree View and attempting queries in SNMP Query now check if an agent has been configured first, just as the Goto entry and Refresh button do, rather than attempting the query with session defaults.
888: Unix: Ctrl-V to paste not working in text boxes
Back-ported a patch to the default Tk text widget bindings to fix bug preventing Ctrl-V from functioning as paste under Unix.
919: MIB Views remains running after windows closed
MIB Views will now exit upon closing the Trap Watch window if it is the last window remaining (except on the Mac, where the menu bar remains).
680: Inconsistent selection colors
Non-Tile components now get their selection colors from the Tile theme for improved consistency in appearance.
643: TreeCtrl +/- buttons don’t redraw sometimes
Due to a TreeCtrl bug under Windows, the expand/collapse buttons in trees would not redraw when pressed if there were no children. This is fixed with the newer TreeCtrl version.
386: Table View sorting indicator doesn’t clear
The sort indicator on the first column in the Table View would not be cleared when sorting on another column unless the user had previously clicked to sort on the first column, leaving two sorting indicators visible.
896: sysDescr not displaying in description bar
The label area under the toolbar of the main GUI will now display the agent’s sysDescr.0 value (if returned on first connect) as it was intended.
914: Dropped notifications during bursts
Notifications could be dropped during bursts of many (or large) packets due to the default receive buffer size provided by the Windows TCP/IP stack. MIB Views now requests up to a 1 MB buffer for the trap socket (on all platforms) to reduce the risk of packet loss.
MIB Validator is back online
The Online MIB Validator service was offline due to some library dependency issues between the SDK and the new web server platform. These issues have been resolved and the service is now back online.
New Servers Deployed
As mentioned in my previous post, the old server previously handling our external mail transport and web server has been taken out of service, and the new servers are now online. There were a few minor reconfiguration glitches during the swap leading to 20 minutes of or so of downtime, but things should be operating normally now.
One thing you may notice right away is that the new web server should be quite a bit more responsive, due to much more powerful equipment, more servers handling separate functions, and to using pre-compiled php on the web server.
If you notice any problems with the site, please let me know. I’ll certainly keep an eye on things over the weekend as well.