
We've written a tiny MIB module to describe a single trap we send from one of our applications. Apart from the trap itself, the only objects in the module were there to provide variables carried in the trap notification.
To avoid adding "unnecessary" object types, I hung all the variables off the trap e.g.:
eltrap TRAP-TYPE ENTERPRISE trapObjs VARIABLES {v1, v2 } DESCRIPTION "blah blah" ::= 1
v1 OBJECT-TYPE SYNTAX DisplayString ... ::= { eltrap 1 }
Before sending this to a customer, we ran it through smilint. There were no errors or warnings reported. The customer's MIB compiler (from SNMP Research) objected as the parent node of v1 was a TRAP-TYPE instead of an OBJECT-TYPE.
Having the opportunity (:-)) to reconsider what I'd done, I see the error of my ways. However, was it an error? If so, is it a bug in smilint/libsmi that the error wasn't reported?
The version is libsmi 0.3.0 on Linux.