
David T. Perkins wrote:
The message below is not correct. That is, it is not a warning situtuation and the term "object identifier" is not at all appropriate.
I suggest the folloing text, if you still want to emit this bogus warning.
So, for bar OBJECT-TYPE .... ::= { gar foo(3) } and soo OBJECT-TYPE .... ::= { gar foo(4) }
Emit the following messages: ./XXX-MIB:165: warning: local label "foo" used for OID value of "soo" has been previously used with a different sub-identifier value ./XXX-MIB:40: info: previous definition of `snmpDot3MauMgt'
From my point of view, the messages currently implemented and quoted below are
more precisely describing the facts: such labels always refer to a complete OID (derived from a subid and a prefix), hence I don't like the term "used with a different sub-identifier value". E.g. in the following example, it would be misleading to refer to a sub-identifier instead of an OID, because the sub-identifier is the same (3) but a warning should be raised because the OID is different (gar.1.3 vs. gar.3):
bar OBJECT-TPYE ... := { gar boo(1) foo(3) } soo OBJECT-TPYE ... := { gar foo(3) }
But again, the above is NOT illegal and it is fine to have the following OID values: ::= { gar foo(1) foo(2) bar(3) bar(4) } ... ::= { gar bar(1) guw(2) foo(3) foo(4) } ... ::= { gar foo(2) } ... ::= { gar bar(2) } etc
Ack. That's why we emit a warning, not an error. We had already this discussion for several other warnings on the libsmi mailinglist. People, who only want to know whether a MIB module is formally and syntactically correct (without any additional "hints"), should use the "-l" option to set the threshold level of displayed messages.
On Tue, 30 Nov 2004, [ISO-8859-1] Frank Strauß wrote:
Thanks to all who contributed to this issue. I've just comitted a new revision to the libsmi SVN repository that handles OID and identifiers in the "NameAndNumberForm" more acurately, and also emits warnings such as...
./XXX-MIB:165: warning: object identifier for label `snmpDot3MauMgt' does not match previous label usage ./XXX-MIB:40: info: previous definition of `snmpDot3MauMgt'
./XXX-MIB:165: warning: label `snmpDot3MauMgtXXX' does not match previous label `snmpDot3MauMgt' for same object identifier ./XXX-MIB:40: info: previous definition of `snmpDot3MauMgt'