Connected: An Internet Encyclopedia
RFC 1155 - 4.3. Macros for Managed Objects

Top: Connected: An Internet Encyclopedia
Up: Requests For Comments
Up: RFC 1155
Up: 4. Managed Objects
Prev: 4.2. Object Types and Instances
Next: 5. Extensions to the MIB

### 4.3. Macros for Managed Objects

In order to facilitate the use of tools for processing the definition of the MIB, the OBJECT-TYPE macro may be used. This macro permits the key aspects of an object type to be represented in a formal way.

          OBJECT-TYPE MACRO ::=
          BEGIN
              TYPE NOTATION ::= "SYNTAX" type (TYPE ObjectSyntax)
                                "ACCESS" Access
                                "STATUS" Status
              VALUE NOTATION ::= value (VALUE ObjectName)

              Access ::= "read-only"
                              | "read-write"
                              | "write-only"
                              | "not-accessible"
              Status ::= "mandatory"
                              | "optional"
                              | "obsolete"
              END

Given the object types defined earlier, we might imagine the following definitions being present in the MIB:

                      atIndex OBJECT-TYPE
                              SYNTAX  INTEGER
                              ACCESS  read-write
                              STATUS  mandatory
                              ::= { atEntry 1 }

                      atPhysAddress OBJECT-TYPE
                              SYNTAX  OCTET STRING
                              ACCESS  read-write
                              STATUS  mandatory
                              ::= { atEntry 2 }

                      atNetAddress OBJECT-TYPE
                              SYNTAX  NetworkAddress
                              ACCESS  read-write
                              STATUS  mandatory
                              ::= { atEntry 3 }

                      atEntry OBJECT-TYPE
                              SYNTAX  AtEntry
                              ACCESS  read-write
                              STATUS  mandatory
                              ::= { atTable 1 }

                      atTable OBJECT-TYPE
                              SYNTAX  SEQUENCE OF AtEntry
                              ACCESS  read-write
                              STATUS  mandatory
                              ::= { at 1 }

                      AtEntry ::= SEQUENCE {
                          atIndex
                              INTEGER,
                          atPhysAddress
                              OCTET STRING,
                          atNetAddress
                              NetworkAddress
                      }

The first five definitions describe object types, relating, for example, the OBJECT DESCRIPTOR atIndex to the OBJECT IDENTIFIER { atEntry 1 }. In addition, the syntax of this object is defined (INTEGER) along with the access permitted (read-write) and status (mandatory). The sixth definition describes an ASN.1 type called AtEntry.

Next: 5. Extensions to the MIB

Connected: An Internet Encyclopedia
RFC 1155 - 4.3. Macros for Managed Objects