]> git.saurik.com Git - apple/security.git/blob - SecuritySNACCRuntime/compiler/tbl.h
Security-54.1.tar.gz
[apple/security.git] / SecuritySNACCRuntime / compiler / tbl.h
1 /*
2 * tbl.h
3 *
4 * "TBL" ASN.1 module C type definitions and prototypes
5 *
6 * This .h file was generated by snacc on Tue Mar 19 07:24:43 2002
7 *
8 * UBC snacc written compiler by Mike Sample
9 *
10 * NOTE: This is a machine generated file--editing not recommended
11 */
12
13
14 #ifndef _tbl_h_
15 #define _tbl_h_
16
17
18
19
20 typedef enum
21 {
22 TBL_BOOLEAN = 0,
23 TBL_INTEGER = 1,
24 TBL_BITSTRING = 2,
25 TBL_OCTETSTRING = 3,
26 TBL_NULL = 4,
27 TBL_OID = 5,
28 TBL_REAL = 6,
29 TBL_ENUMERATED = 7,
30 TBL_SEQUENCE = 8,
31 TBL_SET = 9,
32 TBL_SEQUENCEOF = 10,
33 TBL_SETOF = 11,
34 TBL_CHOICE = 12,
35 TBL_TYPEREF = 13
36 } TBLTypeId; /* ENUMERATED { TBL_BOOLEAN (0), TBL_INTEGER (1), TBL_BITSTRING (2), TBL_OCTETSTRING (3), TBL_NULL (4), TBL_OID (5), TBL_REAL (6), TBL_ENUMERATED (7), TBL_SEQUENCE (8), TBL_SET (9), TBL_SEQUENCEOF (10), TBL_SETOF (11), TBL_CHOICE (12), TBL_TYPEREF (13) } */
37
38 #define BEncTBLTypeIdContent BEncAsnEnumContent
39
40
41
42
43 typedef AsnInt TBLTypeDefId; /* INTEGER */
44
45 #define BEncTBLTypeDefIdContent BEncAsnIntContent
46
47
48
49
50 typedef enum
51 {
52 UNIVERSAL = 0,
53 APPLICATION = 1,
54 CONTEXT = 2,
55 PRIVATE = 3
56 } TBLTagClass; /* ENUMERATED { UNIVERSAL (0), APPLICATION (1), CONTEXT (2), PRIVATE (3) } */
57
58 #define BEncTBLTagClassContent BEncAsnEnumContent
59
60
61
62
63 typedef struct TBLRange /* SEQUENCE */
64 {
65 AsnInt from; /* [0] IMPLICIT INTEGER */
66 AsnInt to; /* [1] IMPLICIT INTEGER */
67 } TBLRange;
68
69 AsnLen BEncTBLRangeContent PROTO ((BUF_TYPE b, TBLRange *v));
70
71
72
73
74 typedef struct TBLNamedNumber /* SEQUENCE */
75 {
76 PrintableString name; /* [0] IMPLICIT PrintableString */
77 AsnInt value; /* [1] IMPLICIT INTEGER */
78 } TBLNamedNumber;
79
80 AsnLen BEncTBLNamedNumberContent PROTO ((BUF_TYPE b, TBLNamedNumber *v));
81
82
83
84
85 typedef AsnList TBLNamedNumberList; /* SEQUENCE OF TBLNamedNumber */
86
87 AsnLen BEncTBLNamedNumberListContent PROTO ((BUF_TYPE b, TBLNamedNumberList *v));
88
89
90
91
92 typedef struct TBLTypeRef /* SEQUENCE */
93 {
94 TBLTypeDefId typeDef; /* TBLTypeDefId */
95 AsnBool implicit; /* BOOLEAN */
96 } TBLTypeRef;
97
98 AsnLen BEncTBLTypeRefContent PROTO ((BUF_TYPE b, TBLTypeRef *v));
99
100
101
102
103 typedef struct TBLTag /* SEQUENCE */
104 {
105 TBLTagClass tclass; /* TBLTagClass */
106 AsnInt code; /* INTEGER (0..MAX) */
107 } TBLTag;
108
109 AsnLen BEncTBLTagContent PROTO ((BUF_TYPE b, TBLTag *v));
110
111
112
113
114 typedef AsnList TBLTypeSeqOf; /* SEQUENCE OF TBLTag */
115
116 AsnLen BEncTBLTypeSeqOfContent PROTO ((BUF_TYPE b, TBLTypeSeqOf *v));
117
118
119
120
121 typedef AsnList TBLTypeContentSeqOf; /* SEQUENCE OF TBLType */
122
123 AsnLen BEncTBLTypeContentSeqOfContent PROTO ((BUF_TYPE b, TBLTypeContentSeqOf *v));
124
125
126
127
128 typedef struct TBLType /* SEQUENCE */
129 {
130 TBLTypeId typeId; /* [0] IMPLICIT TBLTypeId */
131 AsnBool optional; /* [1] IMPLICIT BOOLEAN */
132 TBLTypeSeqOf* tagList; /* [2] IMPLICIT TBLTypeSeqOf OPTIONAL */
133 struct TBLTypeContent* content; /* [3] TBLTypeContent */
134 PrintableString fieldName; /* [4] IMPLICIT PrintableString OPTIONAL */
135 struct TBLRange* constraint; /* [5] IMPLICIT TBLRange OPTIONAL */
136 TBLNamedNumberList* values; /* [6] IMPLICIT TBLNamedNumberList OPTIONAL */
137 } TBLType;
138
139 AsnLen BEncTBLTypeContent PROTO ((BUF_TYPE b, TBLType *v));
140
141
142
143
144 typedef struct TBLTypeContent /* CHOICE */
145 {
146 enum TBLTypeContentChoiceId
147 {
148 TBLTYPECONTENT_PRIMTYPE,
149 TBLTYPECONTENT_ELMTS,
150 TBLTYPECONTENT_TYPEREF
151 } choiceId;
152 union TBLTypeContentChoiceUnion
153 {
154 AsnNull primType; /* [0] IMPLICIT NULL */
155 TBLTypeContentSeqOf* elmts; /* [1] IMPLICIT TBLTypeContentSeqOf */
156 struct TBLTypeRef* typeRef; /* [2] IMPLICIT TBLTypeRef */
157 } a;
158 } TBLTypeContent;
159
160 AsnLen BEncTBLTypeContentContent PROTO ((BUF_TYPE b, TBLTypeContent *v));
161
162
163
164
165 typedef struct TBLTypeDef /* SEQUENCE */
166 {
167 TBLTypeDefId typeDefId; /* TBLTypeDefId */
168 PrintableString typeName; /* PrintableString */
169 struct TBLType* type; /* TBLType */
170 AsnNull* isPdu; /* NULL OPTIONAL */
171 } TBLTypeDef;
172
173 AsnLen BEncTBLTypeDefContent PROTO ((BUF_TYPE b, TBLTypeDef *v));
174
175
176
177
178 typedef AsnList TBLModuleSeqOf; /* SEQUENCE OF TBLTypeDef */
179
180 AsnLen BEncTBLModuleSeqOfContent PROTO ((BUF_TYPE b, TBLModuleSeqOf *v));
181
182
183
184
185 typedef struct TBLModule /* SEQUENCE */
186 {
187 PrintableString name; /* [0] IMPLICIT PrintableString */
188 AsnOid id; /* [1] IMPLICIT OBJECT IDENTIFIER OPTIONAL */
189 AsnBool isUseful; /* [2] IMPLICIT BOOLEAN */
190 TBLModuleSeqOf* typeDefs; /* [3] IMPLICIT TBLModuleSeqOf */
191 } TBLModule;
192
193 AsnLen BEncTBLModuleContent PROTO ((BUF_TYPE b, TBLModule *v));
194
195
196
197
198 typedef AsnList TBLSeqOf; /* SEQUENCE OF TBLModule */
199
200 AsnLen BEncTBLSeqOfContent PROTO ((BUF_TYPE b, TBLSeqOf *v));
201
202
203
204
205 typedef struct TBL /* SEQUENCE */
206 {
207 AsnInt totalNumModules; /* INTEGER */
208 AsnInt totalNumTypeDefs; /* INTEGER */
209 AsnInt totalNumTypes; /* INTEGER */
210 AsnInt totalNumTags; /* INTEGER */
211 AsnInt totalNumStrings; /* INTEGER */
212 AsnInt totalLenStrings; /* INTEGER */
213 TBLSeqOf* modules; /* TBLSeqOf */
214 } TBL;
215
216 AsnLen BEncTBL PROTO ((BUF_TYPE b, TBL *v));
217
218 AsnLen BEncTBLContent PROTO ((BUF_TYPE b, TBL *v));
219
220
221
222
223
224 #endif /* conditional include of tbl.h */