1 SNMPv2-SMI DEFINITIONS ::= BEGIN
3 -- the path to the root
5 org OBJECT IDENTIFIER ::= { iso 3 } -- "iso" = 1
6 dod OBJECT IDENTIFIER ::= { org 6 }
7 internet OBJECT IDENTIFIER ::= { dod 1 }
9 directory OBJECT IDENTIFIER ::= { internet 1 }
11 mgmt OBJECT IDENTIFIER ::= { internet 2 }
12 mib-2 OBJECT IDENTIFIER ::= { mgmt 1 }
13 transmission OBJECT IDENTIFIER ::= { mib-2 10 }
15 experimental OBJECT IDENTIFIER ::= { internet 3 }
17 private OBJECT IDENTIFIER ::= { internet 4 }
18 enterprises OBJECT IDENTIFIER ::= { private 1 }
20 security OBJECT IDENTIFIER ::= { internet 5 }
22 snmpV2 OBJECT IDENTIFIER ::= { internet 6 }
25 snmpDomains OBJECT IDENTIFIER ::= { snmpV2 1 }
28 snmpProxys OBJECT IDENTIFIER ::= { snmpV2 2 }
31 snmpModules OBJECT IDENTIFIER ::= { snmpV2 3 }
33 -- Extended UTCTime, to allow dates with four-digit years
34 -- (Note that this definition of ExtUTCTime is not to be IMPORTed
36 ExtUTCTime ::= OCTET STRING(SIZE(11 | 13))
37 -- format is YYMMDDHHMMZ or YYYYMMDDHHMMZ
39 -- where: YY - last two digits of year (only years
41 -- YYYY - last four digits of the year (any year)
42 -- MM - month (01 through 12)
43 -- DD - day of month (01 through 31)
44 -- HH - hours (00 through 23)
45 -- MM - minutes (00 through 59)
46 -- Z - denotes GMT (the ASCII character Z)
48 -- For example, "9502192015Z" and "199502192015Z" represent
49 -- 8:15pm GMT on 19 February 1995. Years after 1999 must use
50 -- the four digit year format. Years 1900-1999 may use the
51 -- two or four digit format.
53 -- definitions for information modules
55 MODULE-IDENTITY MACRO ::=
58 "LAST-UPDATED" value(Update ExtUTCTime)
65 value(VALUE OBJECT IDENTIFIER)
74 "REVISION" value(Update ExtUTCTime)
77 -- a character string as defined in section 3.1.1
78 Text ::= value(IA5String)
81 OBJECT-IDENTITY MACRO ::=
90 value(VALUE OBJECT IDENTIFIER)
101 -- a character string as defined in section 3.1.1
102 Text ::= value(IA5String)
106 -- (Note that these definitions of ObjectName and NotificationName
107 -- are not to be IMPORTed by MIB modules.)
117 -- the "base types" defined here are:
118 -- 3 built-in ASN.1 types: INTEGER, OCTET STRING, OBJECT IDENTIFIER
119 -- 8 application-defined types: Integer32, IpAddress, Counter32,
120 -- Gauge32, Unsigned32, TimeTicks, Opaque, and Counter64
126 -- note that SEQUENCEs for conceptual tables and
127 -- rows are not mentioned here...
133 -- built-in ASN.1 types
137 -- INTEGERs with a more restrictive range
139 integer-value -- includes Integer32
140 INTEGER (-2147483648..2147483647),
141 -- OCTET STRINGs with a more restrictive size
144 OCTET STRING (SIZE (0..65535)),
149 -- indistinguishable from INTEGER, but never needs more than
150 -- 32-bits for a two's complement representation
152 INTEGER (-2147483648..2147483647)
154 -- application-wide types
156 ApplicationSyntax ::=
168 unsigned-integer-value -- includes Gauge32
172 -- in network-byte order
174 -- (this is a tagged type for historical reasons)
177 IMPLICIT OCTET STRING (SIZE (4))
182 IMPLICIT INTEGER (0..4294967295)
187 IMPLICIT INTEGER (0..4294967295)
189 -- an unsigned 32-bit quantity
190 -- indistinguishable from Gauge32
193 IMPLICIT INTEGER (0..4294967295)
195 -- hundredths of seconds since an epoch
198 IMPLICIT INTEGER (0..4294967295)
200 -- for backward-compatibility only
203 IMPLICIT OCTET STRING
205 -- for counters that wrap in less than one hour with only 32 bits
208 IMPLICIT INTEGER (0..18446744073709551615)
210 -- definition for objects
212 OBJECT-TYPE MACRO ::=
226 value(VALUE ObjectName)
228 Syntax ::= -- Must be one of the following:
229 -- a base type (or its refinement),
230 -- a textual convention (or its refinement), or
231 -- a BITS pseudo-type
233 | "BITS" "{" NamedBits "}"
235 NamedBits ::= NamedBit
236 | NamedBits "," NamedBit
238 NamedBit ::= identifier "(" number ")" -- number is nonnegative
246 | "accessible-for-notify"
261 "INDEX" "{" IndexTypes "}"
262 | "AUGMENTS" "{" Entry "}"
266 | IndexTypes "," IndexType
272 -- use the SYNTAX value of the
273 -- correspondent OBJECT-TYPE invocation
276 -- use the INDEX value of the
277 -- correspondent OBJECT-TYPE invocation
280 DefValPart ::= "DEFVAL" "{" Defvalue "}"
283 Defvalue ::= -- must be valid for the type specified in
284 -- SYNTAX clause of same OBJECT-TYPE macro
288 BitsValue ::= BitNames
292 | BitNames "," BitName
294 BitName ::= identifier
296 -- a character string as defined in section 3.1.1
297 Text ::= value(IA5String)
300 -- definitions for notifications
302 NOTIFICATION-TYPE MACRO ::=
311 value(VALUE NotificationName)
314 "OBJECTS" "{" Objects "}"
332 -- a character string as defined in section 3.1.1
333 Text ::= value(IA5String)
336 -- definitions of administrative identifiers
338 zeroDotZero OBJECT-IDENTITY
341 "A value used for null identifiers."