Subject: RE: [ipcdn] Comments to CableHome MIB drafts

From: "Wijnen, Bert (Bert)" <[email-masked]>
Date: Tue, 5 Aug 2003 16:14:38 +0200

Inline, one thing immediately caught my attention.

> -----Original Message-----
> From: Elena Vengerova [mailto:[email-masked]]
> Sent: maandag 4 augustus 2003 15:53
> To: Kevin Luehrs
> Cc: [email-masked]
> Subject: [ipcdn] Comments to CableHome MIB drafts
> 
> 
> 
> Hi Kevin,
> 
> here are my comments to CableHome MIB drafts. Possibly
> in future I'll provide more comments about QoS MIB.
> 
> Generic:
> ~~~~~~~
> 
> 1. Usuallyy SYNTAX is not specified in MODULE-COMPLIANCE.
> Some MIB compilers consider this like an error.
> 
Then you better get rid of those "Some MIB compilers" because it is
perfectly valid and appropriate to refine the SYNTAX on an
OBJECT (via the OBJECTS CLAUSE) in a MODULE-COMPLIANCE.

That is if I understand correctly what you are claiming here.

Bert

_______________________________________________
IPCDN mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/ipcdn

---

From: Elena Vengerova <[email-masked]>
Date: Wed, 6 Aug 2003 11:54:50 +0400 (MSD)

> Then you better get rid of those "Some MIB compilers" because it is

I don't think that, for example, EMANATE SNMP Agent and its mosy are bad.
As I know EMANATE SNMP products are respectable enough.

> OBJECT (via the OBJECTS CLAUSE) in a MODULE-COMPLIANCE.

I do not say that it's invalid from syntax point of view.
But do you really think that it's necessary to produce
problems to people without any necessiry? :)

-- 
Elena A. Vengerova
OKTET Ltd.
Office: +78124284384  Mobile: +78129323751  Home: +78124281653
E-mail: [email-masked]

---

From: "C. M. Heard" <[email-masked]>
Date: Tue, 12 Aug 2003 00:50:29 -0700 (PDT)

> As I know EMANATE SNMP products are respectable enough.

Elena, are you referring to arbitrary SYNTAX or just this kind of
special case:

        OBJECT      ifStackStatus
        SYNTAX      RowStatus { active(1) } -- subset of RowStatus
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required, and only one of the six
            enumerated values for the RowStatus textual convention
            need be supported, specifically: active(1)."

where enumerations are specified with a TC name?  It is indeed true
that mosy, and older versions of SMICng, will flag this as a syntax
error ... the message from mosy is something like this:

IF-MIB.my:1805: syntax error
last token read was "{"

However, neither of those MIB compilers complains about this:

        OBJECT      ifStackStatus
        SYNTAX      INTEGER { active(1) } -- subset of RowStatus
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not required, and only one of the six
            enumerated values for the RowStatus textual convention need
            be supported, specifically: active(1)."

It's not accurate to say that mosy won't accept SYNTAX refinements
in general; it's just the special case of syntax refinements that
restrict enumerations being used with TCs (as opposed to base types)
that cause problems.  The latter form is what's actually used in the
IF-MIB (RFC 2863), doubtless to prevent this specific error message.

BTW, both of the above forms are accepted by the current versions
smilint and SMICng.

> problems to people without any necessiry? :)

Let me bring to your attention the following note on p. 25 of
<draft-ietf-ops-mib-review-guidelines-01.txt>:

 There has been some dispute as to whether syntax refinements that
 restrict enumerations (RFC 2578, Section 9) are permitted with TCs,
 as shown in these examples, or are allowed only with the base types
 INTEGER and BITS, as suggested by a strict reading of RFC 2578.  The
 rough consensus of the editors of the SMIv2 documents and the current
 pool of OPS Area MIB reviewers is that they should be allowed with
 TCs.  MIB module authors should be aware that some MIB compilers
 follow the strict reading of RFC 2578 and require that the TC be
 replaced by its base type (INTEGER or BITS) when enumerations are
 refined.  That usage is legal, and it can be found in some older MIB
 modules such as the IF-MIB [RFC2863].

It has become common practice in IETF MIB modules to use syntax
refinements that restrict enumerations with TCs (many of the IPCDN
MIB modules do so).  You should definitely ask your vendors to
update any MIB compilers that won't accept this construct.

//cmh