Use of BITS construct in table indices

Michael Kirkham <[email protected]>
Newsgroups gmane.ietf.snmpv3
Message-ID <[email protected]>
Tieing up loose ends in my MIB compiler implementation's validation
routines, I've come across the following ambiguity:

RFC 2578 is a bit vague on the legality and implications of using objects
of type 'BITS' as an INDEX.  It's not explicitly forbidden, and seems to
be legal given that it is otherwise indistinguishable from an OCTET
STRING.  If it's legal, then, for purposes of encoding the instance
identifier for a columnar object, is it considered a fixed-length or a
variable-length OCTET STRING (since new bits can be added over time)?

I am inclined to believe that it is considered a variable-length string,
and subject to being encoded with (N+1) subidentifiers where
N = (M + (M % 8))/8, M = highest bit value supported by an implementation,
unless it is an IMPLIED index.

However, this could cause interoperability problems between two
implementations where only one is aware of the expanded definition.  It
would seem that use of BITS in an INDEX should be forbidden (or at least
very strongly discouraged).

--
Michael Kirkham
www.muonics.com
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.