Macro Type Constructs

 

The MIB file can contain one or more MIB modules. Following are the macros defined in the SMIv1 and SMIv2.

The following macro definition is defined only in SMIv1.

The following macro definitions are defined only in SMIv2.

OBJECT IDENTIFIER

 

Macro Definition Example

lcName OBJECT IDENTIFIER ::= oidValue

adventnet OBJECT IDENTIFIER ::= {enterprises 2162}

 

OBJECT-TYPE

 

Tables

 

Macro Definition Examples

lcName OBJECT-TYPE

SYNTAX SEQUENCE OF SequenceName

MAX-ACCESS not-accessible

STATUS StatusV2

DESCRIPTION Text

[REFERENCE Text]

::= value (VALUE OBJECT IDENTIFIER)

ifTable OBJECT-TYPE

SYNTAX SEQUENCE OF IfEntry

MAX-ACCESS not-accessible

STATUS current

DESCRIPTION "Description" -- quoted string uses the NVT ASCII character set

::= {interfaces 2}

 

ifTable OBJECT-TYPE

SYNTAX SEQUENCE OF IfEntry

MAX-ACCESS not-accessible

STATUS current

DESCRIPTION "Description"

REFERENCE "reference"

::= {interfaces 2}

 

Row Objects

 

Macro Definition Examples

lcName OBJECT-TYPE

SYNTAX SequenceName

MAX-ACCESS not-accessible

STATUS StatusV2

DESCRIPTION Text

[REFERENCE Text]

Index

::= value (VALUE OBJECT IDENTIFIER)

 

Index::= INDEX {[IMPLIED] nodeObjects [ , nodeObjects]*} | AUGMENTS {augments} -- * represents 0 or more occurrences

ifEntry OBJECT-TYPE

SYNTAX IfEntry

MAX-ACCESS not-accessible

STATUS current

DESCRIPTION "description"

INDEX { ifIndex }

::= { ifTable 1 }

 

ifXEntry OBJECT-TYPE

SYNTAX IfXEntry

MAX-ACCESS not-accessible

STATUS current

DESCRIPTION "description"

AUGMENTS {ifEntry}

::= {ifXTable 1}

 

Columnar and Scalar Objects

 

Macro Definition Examples

lcName OBJECT-TYPE

SYNTAX SyntaxV2

[UNITS Text]

MAX-ACCESS AccessV2

STATUS StatusV2

DESCRIPTION Text

[REFERENCE Text]

[DEFVAL {DefvalV2}]

::= value (VALUE OBJECT IDENTIFIER)

ifSpeed OBJECT-TYPE

SYNTAX Gauge32

MAX-ACCESS read-only

STATUS current

DESCRIPTION "description"

::= {ifEntry 5}

 

etherStatsPkts OBJECT-TYPE

SYNTAX Counter32

UNITS "Packets"

MAX-ACCESS read-only

STATUS current

DESCRIPTION "description"

::= {etherStatsEntry 5}

 

ifSpeed OBJECT-TYPE

SYNTAX Gauge32

MAX-ACCESS read-only

STATUS current

DESCRIPTION "description"

REFERENCE "reference"

::= {ifEntry 5}

 

TRAP-TYPE

 

Macro Definition

Examples

lcName TRAP-TYPE

ENTERPRISE value

[VARIABLES {Objects}]

[DESCRIPTION Text]

[REFERENCE Text]

::= value -- non-negative integer (range upto 2^32-1)

 

Objects::=

objectName [ , objectName]* --objectName is the scalar or columnar object's name

trapName TRAP-TYPE

ENTERPRISE enterpriseName

VARIABLES {variable1, variable2, variable3}

DESCRIPTION "description"

REFERENCE "reference"

::= 5

 

trapName TRAP-TYPE

ENTERPRISE enterpriseName

VARIABLES {variable1, variable2, variable3}

DESCRIPTION "description"

REFERENCE "reference"

::= 5

 

trapName TRAP-TYPE

ENTERPRISE ModuleName.enterpriseName -- the ModuleName where the enterpriseName was defined.

VARIABLES {variable1, variable2, variable3}

DESCRIPTION "description"

REFERENCE "reference"

::= 5

 

trapName TRAP-TYPE

ENTERPRISE enterpriseName

::= 5

 

MODULE-IDENTITY

 

Macro Definition

Examples

lcName MODULE-IDENTITY

LAST-UPDATED value(Update UTCTime)

ORGANIZATION Text

CONTACT-INFO Text

DESCRIPTION Text

[Revisions]*

Revisions ::=

REVISION value(Update UTCTime)

DESCRIPTION Text

moduleIdty MODULE-IDENTITY

LAST-UPDATED "9511090000Z"

ORGANIZATION "organization"

CONTACT-INFO "contact information"

DESCRIPTION "description"

REVISION "9304010000Z"

DESCRIPTION "revision description"

::= { oid 1 }

 

moduleIdty MODULE-IDENTITY

LAST-UPDATED "9511090000Z"

ORGANIZATION "organization"

CONTACT-INFO "contact information

DESCRIPTION "description"

::= { oid 2 }

 

Note: UTC Time Format - YYMMDDHHMMZ

where

YY - last two digits of 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 Greenwich Mean Time (GMT)

 

NOTIFICATION-TYPE

 

Macro Definition Examples
lcName NOTIFICATION-TYPE
[OBJECTS {Objects}]
STATUS StatusV2
DESCRIPTION Text
[REFERENCE Text]
notificationtype1 NOTIFICATION-TYPE
OBJECTS {object1, object2, object3}
STATUS current
DESCRIPTION "Description"
::= {oid 1}
notificationtype2 NOTIFICATION-TYPE
STATUS current
DESCRIPTION "Description"
::= {oid 2}
notificationtype3 NOTIFICATION-TYPE
OBJECTS {object1, object2, object3}
STATUS current
DESCRIPTION "Description"
REFERENCE "reference"
::= {oid 3}

 

OBJECT-IDENTITY

 

Macro Definition Examples

lcName OBJECT-IDENTITY

STATUS StatusV2

DESCRIPTION Text

[REFERENCE Text]

::=value(VALUE OBJECT IDENTIFIER)

objectIdty OBJECT-IDENTITY

STATUS current

DESCRIPTION "OID description"

REFERENCE "reference"

::= {oid 3}

 

objectIdty OBJECT-IDENTITY

STATUS current

DESCRIPTION "OID description"

::= {oid 4}

 

OBJECT-GROUP

 

Macro Definition

Examples

lcName OBJECT-GROUP

OBJECTS {Objects}

STATUS StatusV2

DESCRIPTION Text

[REFERENCE Text]

::=value(VALUE OBJECT IDENTIFIER)

objGroup1 OBJECT-GROUP

OBJECTS {object1, object2, object3}

STATUS current

DESCRIPTION "Description"

::= {oid 1}

 

objGroup2 OBJECT-GROUP

OBJECTS {object1, object2, object3}

STATUS current

DESCRIPTION "Description"

REFERENCE "reference"

::= {oid 2}

 

AGENT-CAPABILITIES

 

Macro Definition

Examples

lcName AGENT-CAPABILITIES

PRODUCT-RELEASE Text

STATUS StatusV2

DESCRIPTION Text

[REFERENCE Text]

[Module]*

::=value(VALUE OBJECT IDENTIFIER)

 

Module ::=

SUPPORTS ModuleName

INCLUDES {Groups}

[Variations]*

 

Variations ::=

ObjectVariation | NotificationVariation

 

NotificationVariation ::=

VARIATION Objects

[ACCESS AccessV2]

DESCRIPTION Text

 

ObjectVariation ::=

VARIATION Objects

[SYNTAX SyntaxV2]

[WRITE SYNTAX SyntaxV2]

[ACCESS AccessV2]

[CREATION-REQUIRES {Objects}]

[DEFVAL {Defval}]

DESCRIPTION Text

 

Defval ::=

Text | OID | nodeName | ModuleName.nodeName | ipAddress | binaryNumber | hexNumber | number

agentcap1 AGENT-CAPABILITIES

PRODUCT-RELEASE "Product-Release"

STATUS current

DESCRIPTION "Description"

REFERENCE "REF"

 

SUPPORTS RFC1213-MIB

INCLUDES {groupObject1, groupObject2}

 

VARIATION object1

SYNTAX IpAddress

WRITE-SYNTAX INTEGER

ACCESS read-only

DEFVAL { 1 }

DESCRIPTION "Variation Description"

::= {oid 1}

 

agentcap2 AGENT-CAPABILITIES

PRODUCT-RELEASE "Product-Release"

STATUS current

DESCRIPTION "Description"

REFERENCE "REF"

::= {oid 2}

 

agentcap3 AGENT-CAPABILITIES

PRODUCT-RELEASE "Product-Release"

STATUS current

DESCRIPTION "Description"

REFERENCE "REF"

 

SUPPORTS RFC1213-MIB

INCLUDES {groupObject1, groupObject2}

::= {oid 3}

 

NOTIFICATION-GROUP

 

Macro Definition Examples

lcName NOTIFICATION-GROUP

NOTIFICATIONS {Objects}

STATUS StatusV2

DESCRIPTION Text

[REFERENCE Text]

::=value(VALUE OBJECT IDENTIFIER)

notificationgroup1 NOTIFICATION-GROUP

NOTIFICATIONS {object1, object2}

STATUS current

DESCRIPTION "Description"

::= {oid 1}

 

notificationgroup2 NOTIFICATION-GROUP

NOTIFICATIONS {object1, object2}

STATUS current

DESCRIPTION "Description"

REFERENCE "reference"

::= {oid 1}

 

MODULE-COMPLIANCE

 

Macro Definition

Examples

lcName MODULE-COMPLIANCE

STATUS StatusV2

DESCRIPTION Text

[REFERENCE Text]

[Module]*

::=value(VALUE OBJECT IDENTIFIER)

 

Module ::=

MODULE ModuleName

[MANDATORY-GROUPS {Objects }]

[ComplianceGroup | Object]

 

ComplianceGroup ::=

GROUP {Objects}

DESCRIPTION Text

 

Object ::=

OBJECT {Objects}

[SYNTAX SyntaxV2]

[WRITE-SYNTAX SyntaxV2]

[MIN-ACCESS AccessV2]

DESCRIPTION Text

modulecompliance1 MODULE-COMPLIANCE

STATUS obsolete

DESCRIPTION "Description"

MODULE RFC1213-MIB

MANDATORY-GROUPS {object1, object2}

 

GROUP groupObject1

DESCRIPTION "Description"

GROUP groupObject2

DESCRIPTION "Description"

GROUP groupObject3

DESCRIPTION "Description"

 

OBJECT object1

SYNTAX INTEGER

MIN-ACCESS read-only

DESCRIPTION "Description"

 

OBJECT object2

SYNTAX INTEGER

MIN-ACCESS read-only

DESCRIPTION "Description"

::= {oid 1}

 

TEXTUAL-CONVENTION

 

Macro Definition

Examples

ucName TEXTUAL-CONVENTION

[DISPLAY-HINT Text]

[STATUS StatusV2]

DESCRIPTION Text

[REFERENCE Text]

SYNTAX SyntaxV2

TcName ::= TEXTUAL-CONVENTION

DISPLAY-HINT "1x:"

STATUS current

DESCRIPTION "description"

REFERENCE "reference"

SYNTAX OCTET STRING

 

TcName ::= TEXTUAL-CONVENTION

STATUS current

DESCRIPTION "description"

SYNTAX OCTET STRING

 

For more information on textual conventions, refer Textual Conventions.



Copyright © 1996-2006, AdventNet Inc. All Rights Reserved.