[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: draft-ops-endpoint-mib-06.txt example syntax?
Regarding the SMI,
> The funny thing here is that both compilers accept
>
> OBJECT peerAddress
> SYNTAX InetAddress (SIZE(4|16))
>
> as valid while
>
> OBJECT peerAddressType
> SYNTAX InetAddressType { ipv4(1), ipv6(2) }
>
> is rejected as invalid. That is, you can add a size restriction for a
> TC by using the TC name but you can't refine the list of enumerated
> values for a TC by using the TC name. Sounds a bit odd.
I agree that's odd. There are SMI rules which are different for different
types of refinement.
> While writing a real MIB around the fragment in the ID, I also
> discovered another interesting question. The MIB suggests to define a
> refinement in a compliance statement for an INDEX object which has a
> max access of not-accessible. Using SMICng I did run into some trouble
> because
>
> (a) it insists that the object to be refined is a member of an
> OBJECT-GROUP (I guess because of RFC 2580 section 5.4.3),
> and
>
> (b) it does not allow to put a not-accessible object into an
> OBJECT-GROUP (I guess because of RFC 2580 section 3.1).
>
> Which basically means that the SMIv2 does not allow to refine the
> syntax for objects that are not-accessible because they are INDEX
> objects. I do not think this was the intention of the SMIv2. Looks
> like the rule in RFC 2580 section 3.1 is over ambitious.
>
> Dave, Keith, any comments on this?
It is common practice that not-accessible objects are never put into an
OBJECT-GROUP. However, that's not what section 3.1 actually says:
It is required that every object defined in an information module
with a MAX-ACCESS clause other than "not-accessible" be contained in
at least one object group. This avoids the common error of adding a
new object to an information module and forgetting to add the new
object to a group.
Note that the rationale behind not putting not-accessible objects in an
OBJECT-GROUP is that you cannot Get/Set a not-accessible object, and so
compliance cannot require access to it, nor can compliance be verified,
at least not directly. (It could be argued that an not-accessible
object can be accessed/verified indirectly through the columnar objects
in the table for which it is an INDEX, but those columnar objects need
to be in an OBJECT-GROUP anyway, and so indirect accessing/verifying is
redundant.)
Keith.