135 lines
4.1 KiB
Plaintext
135 lines
4.1 KiB
Plaintext
RFC1155-SMI DEFINITIONS ::= BEGIN
|
|
|
|
--
|
|
-- Microsoft extracted from RFC1155 and made no changes.
|
|
--
|
|
|
|
EXPORTS -- EVERYTHING
|
|
internet, directory, mgmt,
|
|
experimental, private, enterprises,
|
|
OBJECT-TYPE, ObjectName, ObjectSyntax, SimpleSyntax,
|
|
ApplicationSyntax, NetworkAddress, IpAddress,
|
|
Counter, Gauge, TimeTicks, Opaque;
|
|
|
|
-- the path to the root
|
|
|
|
internet OBJECT IDENTIFIER ::= { iso org(3) dod(6) 1 }
|
|
|
|
directory OBJECT IDENTIFIER ::= { internet 1 }
|
|
|
|
mgmt OBJECT IDENTIFIER ::= { internet 2 }
|
|
|
|
experimental OBJECT IDENTIFIER ::= { internet 3 }
|
|
|
|
private OBJECT IDENTIFIER ::= { internet 4 }
|
|
enterprises OBJECT IDENTIFIER ::= { private 1 }
|
|
|
|
|
|
-- definition of object types
|
|
|
|
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
|
|
|
|
-- names of objects in the MIB
|
|
|
|
ObjectName ::=
|
|
OBJECT IDENTIFIER
|
|
|
|
|
|
-- syntax of objects in the MIB
|
|
|
|
ObjectSyntax ::=
|
|
CHOICE {
|
|
simple
|
|
SimpleSyntax,
|
|
|
|
-- note that simple SEQUENCEs are not directly
|
|
-- mentioned here to keep things simple (i.e.,
|
|
-- prevent mis-use). However, application-wide
|
|
-- types which are IMPLICITly encoded simple
|
|
-- SEQUENCEs may appear in the following CHOICE
|
|
|
|
application-wide
|
|
ApplicationSyntax
|
|
}
|
|
|
|
SimpleSyntax ::=
|
|
CHOICE {
|
|
number
|
|
INTEGER,
|
|
|
|
string
|
|
OCTET STRING,
|
|
|
|
object
|
|
OBJECT IDENTIFIER,
|
|
|
|
empty
|
|
NULL
|
|
}
|
|
|
|
ApplicationSyntax ::=
|
|
CHOICE {
|
|
address
|
|
NetworkAddress,
|
|
|
|
counter
|
|
Counter,
|
|
|
|
gauge
|
|
Gauge,
|
|
|
|
ticks
|
|
TimeTicks,
|
|
|
|
arbitrary
|
|
Opaque
|
|
|
|
-- other application-wide types, as they are
|
|
-- defined, will be added here
|
|
}
|
|
|
|
|
|
-- application-wide types
|
|
|
|
NetworkAddress ::=
|
|
CHOICE {
|
|
internet
|
|
IpAddress
|
|
}
|
|
|
|
IpAddress ::=
|
|
[APPLICATION 0] -- in network-byte order
|
|
IMPLICIT OCTET STRING (SIZE (4))
|
|
|
|
Counter ::=
|
|
[APPLICATION 1]
|
|
IMPLICIT INTEGER (0..4294967295)
|
|
|
|
Gauge ::=
|
|
[APPLICATION 2]
|
|
IMPLICIT INTEGER (0..4294967295)
|
|
|
|
TimeTicks ::=
|
|
[APPLICATION 3]
|
|
IMPLICIT INTEGER (0..4294967295)
|
|
|
|
Opaque ::=
|
|
[APPLICATION 4] -- arbitrary ASN.1 value,
|
|
IMPLICIT OCTET STRING -- "double-wrapped"
|
|
|
|
END
|