14   Error Messages

The following table list the error messages of the MIB compiler. Most error texts contain placeholders, like <X>, <Y>, etc., which are replaced by the MIB compiler with values describing the context of the error. Please see the description text for an explanation of those placeholders.

.

Error Number

Error Text

Description & Hints for Error Recovery

0000

File open error: <X>.

 

The file <X> could not be read, please check access rights.

0010

The length of identifier <X> exceeds 64 characters (RFC2578 §3.1, §7.1.1, §7.1.4).

 

It is recommended to use only identifiers with a length of less than 32 characters for interoperability issues. Identifiers that exceed 64 characters in length must be avoided.

0050

Encountered lexical error at …

 

The encountered character is not allowed in a SMI MIB module.

1000

Syntax error: Encountered “token1” at row r, column c, expected one of the following: ...

 

The parser encountered a string it did not expect. Please look at the list of expected tokens carefully in order to determine the trouble cause. If the parser complains about a SMIv2 keyword like MAX-ACCESS, please check whether the first statement after the IMPORTS clause is a MODULE-IDENTITY definition. This is a requirement for a SMIv2 MIB module (RFC2578 $3).

1001

The DISPLAY-HINT clause value “token1” at row r, column c  is invalid (RFC2579 §3.1)

 

The DISPLAY-HINT clause does not correspond to any of the allowed formats for INTEGER or OCTET STRING base types.

1002

The UTC time value “token1” at row r, column c does not match the mandatory format YYMMDDhhmmZ or YYYYMMDDhhmmZ (RFC2578 §2)

 

The UTC time value does not correspond to the format YYMMDDhhmmZ or YYYYMMDDhhmmZ where

YY   - last two digits of year (only years between 1900-1999)

YYYY   - last four digits of the year (any year)

MM   - month (01 through 12)

DD   - day of month (01 through 31)

hh   - hours (00 through 23)

mm   - minutes (00 through 59)

Z   - denotes GMT (the ASCII character Z)

1050

The clause <X> is not allowed within this context.

 

There are several clauses in SMI that are optional, but if specified those clauses need to be consistent with other clauses in the object definition. Examples for such clauses are the ACCESS, MIN-ACCESS, and SYNTAX clauses in MODULE-COMPLIANCE constructs, which must not be present for variations of NOTIFICATION-TYPEs.

1100

Imported MIB module <X> unknown.

 

The MIB module <X> could not be found in the MIB repository and neither in the MIB modules being compiled. Check whether to MIB module name is not misspelled (this is often the case for older RFC MIBs).

1101

Imported MIB module <X> contains a circular import.

 

The MIB module <X> imports from a module that either imports itself from <X> or any other module in the import chain imports from a preceding module.

1102

MIB module <X> is imported more than once.

 

The ASN.1 rules about IMPORTS that SMI is based on require that an import source is defined not more than once in a module.

1110

<X> imported from MIB module <Y> must be imported from <Z> instead.

 

For historical reasons, SMI requires to import the MACRO definitions SMI is based on from some ASN.1 modules. For SMIv1 and SMIv2 it is defined which MACRO (construct) is imported from which ASN.1 module. Since those ASN.1 modules (e.g. SNMPv2-SMI) are not SMI themselves, the MACRO definitions have to be removed in order to be able to compile them.

1111

Missing import statement for <X> (RFC2578 §3.2).

 

To reference an external object, the IMPORTS statement must be used to identify both the descriptor and the module in which the descriptor is defined, where the module is identified by its ASN.1 module name.

1112

Imported object <X> is not defined in MIB module <Y>.

 

Use the Edit>Search MIB Repository to search for the MIB module that defines <X>.

1113

Object <X> is imported twice from MIB module <Y>.

 

An object definition shall only be imported once from a MIB module.

1114

<X> cannot be imported (RFC2578 §3.2).

 

Notification and trap type definitions as well as SEQUENCE constructs cannot be imported by other MIB modules.

1150

Wrong module order within file.

 

The MIB file that failed to compile contains more than one MIB module and the order of those MIB modules does not correspond with their import dependencies.

1200

The SYNTAX clause of the columnar OBJECT-TYPE definition <X> does not match with the SYNTAX clause of the corresponding SEQUENCE definition.

 

The object <X>’s syntax differs in a SEQUENCE definition from its OBJECT-TYPE definition.

1202

The OBJECT-TYPE <X> has inconsistent maximum access (RFC2578 §7.3).

 

An object <X> has a MAX-ACCESS or ACCESS clause that does not match its context (RFC2578 §7.3). For example, a columnar object must not have a MAX-ACCESS value of “read-write” if any other columnar object in the table has a MAX-ACCESS value of “read-create”.

1210

The conditionally GROUP clause <X> must be absent from the corresponding MANDATORY-GROUPS clause (RFC2580 §5.4.2).

 

A conditionally group cannot be mandatory at the same time!

1211

OBJECT variation <X> must be included in a GROUP or MANDATORY-GROUPs reference (RFC2580 §5.4.2).

 

The object reference <X> must be part of any object group specified as conditionally or mandatory for this compliance module.

1212

Only ‘not-implemented’ is applicable for the ACCESS clause of the notification type variation <X> (RFC2580 §6.5.2.3).

 

If the notification has to be implemented, then the ACCESS clause should be removed.

1220

The CREATION-REQUIRES clause of variation <X> must only be present for conceptual row definitions (RFC2580 §6.5.2.4).

 

The CREATION-REQUIRES clause must not be present unless the object named in the correspondent VARIATION clause is a conceptual row, i.e., has a syntax which resolves to a SEQUENCE containing columnar objects.

1221

Only columnar object type definitions with access read-create may be present in the CREATION REQUIRES clause of variation <X> (RFC2580 §6.5.2.4).

 

Other objects and columns cannot be created and thus they cannot participate in a row creation.

1500

Unresolved syntax reference <X>

 

The syntax (data type) <X> is not defined in the parsed MIB module and it is not imported from another MIB module. Use the Edit>Search MIB Repository function to search the MIB repository for object name <X> and add the corresponding IMPORT FROM clause for <X>.

1501

Unresolved object reference <X>

 

The object name <X> is not defined in the parsed MIB module and it is not imported from another MIB module. Use the Edit>Search MIB Repository function to search the MIB repository for object name <X> and add the corresponding IMPORT FROM clause for <X>.

1502

The object <X> must be defined or imported (RFC2578 §3.2).

 

The object <X> is not defined in the parsed MIB module and it is not imported from another MIB module. Use the Edit>Search MIB Repository function to search the MIB repository for object name <X> and add the corresponding IMPORT FROM clause for <X>.

1600

The object definition <X> references a <Y> definition, expected a reference to an OBJECT-TYPE conceptual row definition instead.

 

The AUGMENTS clause, for example, requires that the referenced object definition is a conceptual table definition, i.e., has a syntax which resolves to a SEQUENCE containing columnar objects.

1601

The GROUP clause <X> references a <Y> definition, expected a reference to an OBJECT-GROUP or NOTIFICATION-GROUP instead (RFC2580 §5.4.2).

 

The GROUP clause requires a reference to an object group definition.

1602

The object reference <X> points to a <Y> definition, expected a reference to an OBJECT-TYPE or NOTIFICATION-TYPE definition instead.

 

The VARIATION clause, for example, requires a reference to an OBJECT-TYPE or a NOTIFICATION-TYPE definition.

1700

Object reference with wrong type: <X>, expected type was <Y>, but found <Z> instead.

 

The reference to object <X> must be of type <Y> but it is of type <Z>.

1800

The SEQUENCE clause of the table entry definition <X> does not match the order or number of objects registered for that table at entry <Y>.

 

The column references in the SEQUENCE definition of a table must be lexicographically ordered by their object-identifiers. The object name Y is the name of the first object reference in the SEQUENCE definition that does not match the order of columnar objects of that table.

1801

The SEQUENCE definition for table entry <X> does not match with the number of child objects of that node.

 

All objects registered below a table entry node must be included in the SEQUENCE definition of that table entry.

1810

The OBJECT-TYPE <X> has an invalid index definition (RFC2578 §7.7).

 

The OBJECT-TYPE <X> has an invalid INDEX clause, i.e., an empty clause.

1811

The OBJECT-TYPE <X> has an invalid index definition because <Y> may be negative (RFC2578 §7.7).

 

Index values have to be encoded as OID suffixes on the wire. Since OID sub-identifiers are 32-bit unsigned integer values, negative values cannot be encoded over the wire. See RFC2578 §7.7 for more details.

1812

The OBJECT-TYPE <X> has an invalid index definition (RFC2578 §7.7) because the minimum total index length exceeds 128 which is the maximum SNMP OID length.

 

Instances of this OBJECT-TYPE <X> can never be accessed through the SNMP protocol, because the identifying OID is longer than 128 sub-identifiers and thus cannot be represented in SNMP.

1813

The OBJECT-TYPE <X> has an invalid index definition (RFC2578 §7.7) because the sub-index with the IMPLIED length can have a zero length.

 

Implied variable length sub-index values cannot be represented.

1850

The OBJECT-TYPE <X> has invalid index definition, because <Y> is not a columnar object (RFC2578 §7.7).

 

The OBJECT-TYPE <X> has an invalid INDEX clause, because <Y> does not refer to a columnar OBJECT-TYPE definition. An OBJECT-TYPE is columnar object, if it is part of a table definition. See RFC2578 §7.7 for more details.

1851

OBJECT-TYPE definition <X> is a scalar and therefore it must not have an INDEX clause (RFC2578 §7.7).

 

Scalar objects have a fixed instance identifier (“index”) of ‘0’, thus an INDEX clause must not be specified.

2000

Duplicate object registration of <X> after <Y> for the object ID <Z> (RFC2578 §3.6).

 

Once an object identifier has been registered it must not be reregistered. An object registration is any object definition other than OBJECT-IDENTIFIER.

2010

Illegal object registration of <X> under <Y> for the object ID <Z>.

 

For example, it is not legal to register objects in the sub-tree of an OBJECT-TYPE registration.

3000

The default value of OBJECT-TYPE <X> is out of range (RFC2578 §7.9).

 

The values specified in a DEFVAL clause have to be valid values for the corresponding data type syntax.

3001

The size of the default value of OBJECT-TYPE <X> is out of range (RFC2578 §7.9).

 

The length of the specified octet string exceeds the SIZE constraints defined for the corresponding data type syntax.

3002

The format of the default value of OBJECT-TYPE <X> does not match its syntax (RFC2578 §7.9).

 

The value <X> is not properly defined for the corresponding syntax.

3003

A DEFVAL clause is not allowed for OBJECT-TYPE <X> which has a base syntax of Counter (Counter32 or Counter64) (RFC2578 §7.9).

4000

The syntax definition of the object <X> is not a valid refinement of its base syntax (RFC2578 §9).

 

A refinement must not extend the range of valid values for a data type.

4010

The range restriction is invalid because …

 

The lower bound (first value) of range restriction must be less or equal than the corresponding upper bound (second value). In addition, bounds for unsigned values cannot be negative.

4100

The TEXTUAL-CONVENTION definition <X> must not have a DISPLAY-HINT clause because its SYNTAX is OBJECT IDENTIFIER, IpAddress, Counter32, Counter64, or any enumerated syntax (BITS or INTEGER) (RFC2579 §3.1)

 

Only textual conventions for INTEGER and OCTET STRING base types may have a DISPLAY-HINT clause.

4101

The DISPLAY-HINT clause value “token1” of the TEXTUAL-CONVENTION definition <X> is not compatible with the used SYNTAX (RFC2579 §3.1)

 

The integer DISPLAY-HINT format must be used with the INTEGER base type only whereas the string DISPLAY-HINT format must be used with OCTET STRING base type only.

5000

The object definition <X> must be included in an OBJECT-GROUP or a NOTIFICATION-GROUP definition respectively (RFC2580 §3.1 and §4.1).

 

This requirement ensures that compliance statements for a MIB module can be written.

5100

Object group <X> must not reference OBJECT-TYPE <Y> which has a MAX-ACCESS clause of not-accessible (RFC2580 §3.1).

 

Only accessible objects and notifications may be included in object groups.

Table 6: MIB compiler error messages and descriptions.