]> git.saurik.com Git - apple/security.git/blob - SecuritySNACCRuntime/asn1specs/rfc1155-smi.asn1
Security-54.1.3.tar.gz
[apple/security.git] / SecuritySNACCRuntime / asn1specs / rfc1155-smi.asn1
1 -- file: asn1specs/1155_smi.asn1
2 --
3 -- this file is used in ../c{,++}-examples/snmp/
4 --
5 -- $Header: /cvs/Darwin/src/live/Security/SecuritySNACCRuntime/asn1specs/rfc1155-smi.asn1,v 1.1.1.1 2001/05/18 23:14:05 mb Exp $
6 -- $Log: rfc1155-smi.asn1,v $
7 -- Revision 1.1.1.1 2001/05/18 23:14:05 mb
8 -- Move from private repository to open source repository
9 --
10 -- Revision 1.1.1.1 1999/03/16 18:05:56 aram
11 -- Originals from SMIME Free Library.
12 --
13 -- Revision 1.3 1995/07/27 08:29:16 rj
14 -- rfc1155-smi.asn1, rfc1157-snmp.asn1 and rfc1213-mib2.asn1 renamed from 1155-smi.asn1, 1157-snmp.asn1 and 1213-mib2.asn1 to accomodate to snacc's new file name generation scheme.
15 --
16 -- Revision 1.2 1995/07/25 19:53:12 rj
17 -- changed `_' to `-' in file names.
18 --
19 -- Revision 1.1 1994/08/31 23:08:26 rj
20 -- first check-in.
21 --
22
23 RFC1155-SMI DEFINITIONS ::= BEGIN
24
25 EXPORTS -- EVERYTHING
26 internet, directory, mgmt,
27 experimental, private, enterprises,
28 OBJECT-TYPE, ObjectName, ObjectSyntax, SimpleSyntax,
29 ApplicationSyntax, NetworkAddress, IpAddress,
30 Counter, Gauge, TimeTicks, Opaque;
31
32 -- the path to the root
33
34 internet OBJECT IDENTIFIER ::= { iso org(3) dod(6) 1 }
35
36 directory OBJECT IDENTIFIER ::= { internet 1 }
37
38 mgmt OBJECT IDENTIFIER ::= { internet 2 }
39
40 experimental OBJECT IDENTIFIER ::= { internet 3 }
41
42 private OBJECT IDENTIFIER ::= { internet 4 }
43 enterprises OBJECT IDENTIFIER ::= { private 1 }
44
45
46 -- definition of object types
47
48 OBJECT-TYPE MACRO ::=
49 BEGIN
50 TYPE NOTATION ::= "SYNTAX" type (TYPE ObjectSyntax)
51 "ACCESS" Access
52 "STATUS" Status
53 VALUE NOTATION ::= value (VALUE ObjectName)
54
55 Access ::= "read-only"
56 | "read-write"
57 | "write-only"
58 | "not-accessible"
59 Status ::= "mandatory"
60 | "optional"
61 | "obsolete"
62 END
63
64 -- names of objects in the MIB
65
66 ObjectName ::=
67 OBJECT IDENTIFIER
68
69
70
71
72
73 -- syntax of objects in the MIB
74
75 ObjectSyntax ::=
76 CHOICE {
77 simple
78 SimpleSyntax,
79
80 -- note that simple SEQUENCEs are not directly
81 -- mentioned here to keep things simple (i.e.,
82 -- prevent mis-use). However, application-wide
83 -- types which are IMPLICITly encoded simple
84 -- SEQUENCEs may appear in the following CHOICE
85
86 application-wide
87 ApplicationSyntax
88 }
89
90 SimpleSyntax ::=
91 CHOICE {
92 number
93 INTEGER,
94
95 string
96 OCTET STRING,
97
98 object
99 OBJECT IDENTIFIER,
100
101 empty
102 NULL
103 }
104
105 ApplicationSyntax ::=
106 CHOICE {
107 address
108 NetworkAddress,
109
110 counter
111 Counter,
112
113 gauge
114 Gauge,
115
116 ticks
117 TimeTicks,
118
119 arbitrary
120 Opaque
121
122 -- other application-wide types, as they are
123 -- defined, will be added here
124 }
125
126
127 -- application-wide types
128
129 NetworkAddress ::=
130 CHOICE {
131 internet
132 IpAddress
133 }
134
135 IpAddress ::=
136 [APPLICATION 0] -- in network-byte order
137 IMPLICIT OCTET STRING (SIZE (4))
138
139 Counter ::=
140 [APPLICATION 1]
141 IMPLICIT INTEGER (0..4294967295)
142
143 Gauge ::=
144 [APPLICATION 2]
145 IMPLICIT INTEGER (0..4294967295)
146
147 TimeTicks ::=
148 [APPLICATION 3]
149 IMPLICIT INTEGER (0..4294967295)
150
151 Opaque ::=
152 [APPLICATION 4] -- arbitrary ASN.1 value,
153 IMPLICIT OCTET STRING -- "double-wrapped"
154
155 END