From Graeme Lunt:
[obnox/wireshark/wip.git] / asn1 / x411 / x411.cnf
1 #.TYPE_ATTR
2 CountryName             TYPE = FT_UINT32  DISPLAY = BASE_DEC   STRINGS = VALS(x411_CountryName_vals)  BITMASK = 0
3 Time                    TYPE = FT_STRING  DISPLAY = BASE_NONE  STRING = NULL BITMASK = 0
4
5 #.MODULE_IMPORT
6 InformationFramework x509if
7 CertificateExtensions x509ce
8 SelectedAttributeTypes x509sat
9 AuthenticationFramework x509af
10
11 #.INCLUDE ../x509ce/x509ce-exp.cnf
12 #.INCLUDE ../x509if/x509if-exp.cnf
13 #.INCLUDE ../x509sat/x509sat-exp.cnf
14 #.INCLUDE ../x509af/x509af-exp.cnf
15
16 #.EXPORTS
17 EncodedInformationTypes
18 ExtendedCertificates
19 G3FacsimileNonBasicParameters
20 MessageDeliveryTime
21 ORName
22 OtherMessageDeliveryFields
23 SupplementaryInformation
24 TeletexNonBasicParameters
25 SecurityLabel
26
27 #.TYPE_RENAME
28 MTABindArgument/authenticated   AuthenticatedArgument
29 MTABindResult/authenticated     AuthenticatedResult
30
31 ExtensionField/value            ExtensionValue
32 SecurityCategory/value          CategoryValue
33
34 #.FIELD_RENAME
35 TeletexPersonalName/surname     teletex-surname
36 PersonalName/surname            printable-surname
37 UniversalPersonalName/surname   universal-surname
38
39 TeletexPersonalName/given-name  teletex-given-name
40 PersonalName/given-name         printable-given-name
41 UniversalPersonalName/given-name        universal-given-name
42
43 TeletexPersonalName/initials    teletex-initials
44 PersonalName/initials           printable-initials
45 UniversalPersonalName/initials  universal-initials
46
47 TeletexPersonalName/generation-qualifier        teletex-generation-qualifier
48 PersonalName/generation-qualifier               printable-generation-qualifier
49 UniversalPersonalName/generation-qualifier      universal-generation-qualifier
50
51 BuiltInDomainDefinedAttribute/type      printable-type
52 UniversalDomainDefinedAttribute/type    universal-type
53 SecurityCategory/type                   category-type
54 ExtensionField/type                     extension-type
55
56 TeletexDomainDefinedAttribute/value     teletex-value
57 BuiltInDomainDefinedAttribute/value     printable-value
58 UniversalDomainDefinedAttribute/value   universal-value
59 SecurityCategory/value                  category-value
60 ExtensionField/value                    extension-value
61
62 LastTraceInformation/report-type        trace-report-type
63 PerRecipientReportDeliveryFields/report-type    delivery-report-type
64 PerRecipientReportFields/report-type/delivery           report-type-delivery
65
66 PerRecipientMessageSubmissionFields/recipient-name      submission-recipient-name
67 PerRecipientProbeSubmissionFields/recipient-name        probe-recipient-name
68
69 PerRecipientReportTransferFields/actual-recipient-name  mta-actual-recipient-name
70
71 MessageClass/priority                   class-priority
72 DeliveryQueue/octets                    delivery-queue-octets
73 PerRecipientReportFields/report-type/non-delivery       non-delivery-report
74
75 MTABindResult/authenticated     authenticated-result
76 MTABindArgument/authenticated   authenticated-argument
77
78 MTABindResult/authenticated/responder-name      authenticated-responder-name
79 MTABindArgument/authenticated/initiator-name    authenticated-initiator-name
80
81 RegistrationTypes/extensions            type-extensions
82 RegistrationTypes/extensions/_item      type-extensions-item
83
84 MessageSubmissionArgument/envelope      message-submission-envelope
85
86 OtherMessageDeliveryFields/content-type delivered-content-type
87 Report/content                          report-content
88
89 PerDomainBilateralInformation/domain    bilateral-domain
90
91 Report/envelope                         report-envelope
92 Message/envelope                        message-envelope
93
94 PerRecipientReportTransferFields/originally-intended-recipient-name     report-originally-intended-recipient-name
95
96 MessageSubmissionEnvelope/originator-name       mts-originator-name
97 ProbeSubmissionEnvelope/originator-name         mts-originator-name
98
99 MessageTransferEnvelope/originator-name         mta-originator-name
100 ProbeTransferEnvelope/originator-name           mta-originator-name
101
102 MessageSubmissionEnvelope/per-recipient-fields  per-recipient-message-submission-fields
103 ProbeTransferEnvelope/per-recipient-fields      per-recipient-probe-transfer-fields
104 ProbeSubmissionEnvelope/per-recipient-fields    per-recipient-probe-submission-fields
105 ReportDeliveryArgument/per-recipient-fields     per-recipient-report-delivery-fields
106 ReportDeliveryEnvelope/per-recipient-fields     per-recipient-report-delivery-fields
107
108 MessageSubmissionEnvelope/per-recipient-fields/_item    per-recipient-message-submission-fields-item
109 ProbeTransferEnvelope/per-recipient-fields/_item        per-recipient-probe-transfer-fields-item
110 ProbeSubmissionEnvelope/per-recipient-fields/_item      per-recipient-probe-submission-fields-item
111 ReportDeliveryArgument/per-recipient-fields/_item       per-recipient-report-delivery-fields-item
112 ReportDeliveryEnvelope/per-recipient-fields/_item       per-recipient-report-delivery-fields-item
113
114 MessageTransferEnvelope/per-recipient-fields/_item      per-recipient-message-fields-item
115
116
117
118 MessageTransferEnvelope/per-recipient-fields            per-recipient-message-fields
119 ReportTransferContent/per-recipient-fields              per-recipient-report-fields
120
121 #.PDU
122 MTABindArgument
123 MTABindResult
124 MTABindError
125 MTS-APDU
126
127 #.REGISTER
128 RecipientReassignmentProhibited B "x411.extension.1" "recipient-reassignment-prohibited"
129 MTSOriginatorRequestedAlternateRecipient B "x411.extension.2" "originator-requested-alternate-recipient"
130 DLExpansionProhibited B "x411.extension.3" "dl-expansion-prohibited"
131 ConversionWithLossProhibited B "x411.extension.4" "conversion-with-loss-prohibited"
132 LatestDeliveryTime B "x411.extension.5" "latest-delivery-time"
133 RequestedDeliveryMethod B "x411.extension.6" "requested-delivery-method"
134 PhysicalForwardingProhibited B "x411.extension.7" "physical-forwarding-prohibited"
135 PhysicalForwardingAddressRequest B "x411.extension.8" "physical-forwarding-address-request"
136 PhysicalDeliveryModes B "x411.extension.9" "physical-delivery-modes"
137 RegisteredMailType B "x411.extension.10" "registered-mail-type"
138 RecipientNumberForAdvice B "x411.extension.11" "recipient-number-for-advice"
139 PhysicalRenditionAttributes B "x411.extension.12" "physical-rendition-attributes"
140 OriginatorReturnAddress B "x411.extension.13" "originator-return-address"
141 PhysicalDeliveryReportRequest B "x411.extension.14" "physical-delivery-report-request"
142 OriginatorCertificate B "x411.extension.15" "originator-certificate"
143
144 ContentConfidentialityAlgorithmIdentifier B "x411.extension.17" "content-confidentiality-algorithm-identifier"
145
146
147 MessageSecurityLabel B "x411.extension.20" "message-security-label"
148 ProofOfSubmissionRequest B "x411.extension.21" "proof-of-submission-request"
149 ProofOfDeliveryRequest B "x411.extension.22" "proof-of-delivery-request"
150 ContentCorrelator B "x411.extension.23" "content-correlator"
151
152 RedirectionHistory B "x411.extension.25" "redirection-history"
153 DLExpansionHistory B "x411.extension.26" "dl-expansion-history"
154 PhysicalForwardingAddress B "x411.extension.27" "physical-forwarding-address"
155
156
157 OriginatorAndDLExpansionHistory B "x411.extension.30" "originator-and-DL-expansion-history"
158 ReportingDLName B "x411.extension.31" "reporting-DL-name"
159 ReportingMTACertificate B "x411.extension.32" "reporting-MTA-certificate"
160
161 TraceInformation B "x411.extension.37" "trace-information"
162 InternalTraceInformation B "x411.extension.38" "internal-trace-information"
163 ReportingMTAName B "x411.extension.39" "reporting-MTA-name"
164 ExtendedCertificates B "x411.extension.40" "multiple-originator-certificates"
165
166 DLExemptedRecipients B "x411.extension.42" "dl-exempted-recipients"
167
168
169 CertificateSelectors B "x411.extension.45" "certificate-selectors"
170
171 CommonName B "x411.extension-attribute.1" "common-name"
172 TeletexCommonName B "x411.extension-attribute.2" "teletex-common-name"
173 TeletexOrganizationName B "x411.extension-attribute.3" "teletex-organization-name"
174 TeletexPersonalName B "x411.extension-attribute.4" "teletex-personal-name"
175 TeletexOrganizationalUnitNames B "x411.extension-attribute.5" "teletex-organizational-unit-names"
176
177 PDSName B "x411.extension-attribute.7" "pds-name"
178 PhysicalDeliveryCountryName B "x411.extension-attribute.8" "physical-delivery-country-name"
179 PostalCode B "x411.extension-attribute.9" "postal-code"
180 PhysicalDeliveryOfficeName B "x411.extension-attribute.10" "physical-delivery-office-name"
181
182
183 UniversalCommonName B "x411.extension-attribute.24" "universal-common-name"
184 UniversalOrganizationName B "x411.extension-attribute.25" "universal-organization-name"
185 UniversalPersonalName B "x411.extension-attribute.26" "universal-personal-name"
186 UniversalOrganizationalUnitNames B "x411.extension-attribute.27" "universal-organizational-unit-names"
187
188 #.FN_BODY AdditionalInformation
189 /*XXX not implemented yet */
190
191 #.FN_BODY T_extensions_item
192 /*XXX not implemented yet */
193
194 #.FN_BODY ExtensionValue
195
196         offset=call_x411_oid_callback("x411.extension", tvb, offset, pinfo, tree);
197
198 #.FN_BODY CategoryValue
199
200         offset = dissect_unknown_ber(pinfo, tvb, offset, tree);
201
202 #.FN_BODY T_extension_attribute_value
203
204         offset=call_x411_oid_callback("x411.extension-attribute", tvb, offset, pinfo, tree);
205
206 #.FN_BODY T_refused_extension
207 /*XXX not implemented yet */
208
209 #.FN_BODY CountryName
210  gint8 class;
211  gboolean pc, ind_field;
212  gint32 tag;
213  guint32 len1;
214
215  if(!implicit_tag){
216    /* XXX  asn2eth can not yet handle tagged assignment yes so this
217     * XXX is some conformance file magic to work around that bug
218     */
219     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
220     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
221  }
222   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
223                               CountryName_choice, hf_index, ett_x411_CountryName, NULL);
224
225 #.FN_BODY AdministrationDomainName
226  gint8 class;
227  gboolean pc, ind_field;
228  gint32 tag;
229  guint32 len1;
230
231  if(!implicit_tag){
232    /* XXX  asn2eth can not yet handle tagged assignment yes so this
233     * XXX is some conformance file magic to work around that bug
234     */
235     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
236     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
237  }
238
239   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
240                               AdministrationDomainName_choice, hf_index, ett_x411_AdministrationDomainName, NULL);
241
242 #.FN_BODY ContentIdentifier
243  gint8 class;
244  gboolean pc, ind_field;
245  gint32 tag;
246  guint32 len1;
247
248  if(!implicit_tag){
249    /* XXX  asn2eth can not yet handle tagged assignment yes so this
250     * XXX is some conformance file magic to work around that bug
251     */
252     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
253     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
254  }
255
256   /* this is magic I haven't seen used before - I've stripped the tag - but now I'm going to say it is IMPLICIT! */
257   offset = dissect_ber_restricted_string(TRUE, BER_UNI_TAG_PrintableString,
258                                          pinfo, tree, tvb, offset, hf_index,
259                                          NULL);
260
261
262 #.FN_PARS INTEGER
263         VAL_PTR = &extension_id
264
265 #.FN_PARS ExtendedContentType
266         VAL_PTR = object_identifier_id
267
268 #.FN_PARS BuiltInContentType
269         VAL_PTR = &ict
270
271 #.FN_BODY BuiltInContentType
272   guint32       ict = -1;       
273
274   %(DEFAULT_BODY)s
275
276   /* convert integer content type to oid for dispatch when the content is found */
277   switch(ict) {
278         case 2:
279         g_snprintf(object_identifier_id, BER_MAX_OID_STR_LEN, "2.6.1.10.0");
280         break;
281         case 22:
282         g_snprintf(object_identifier_id, BER_MAX_OID_STR_LEN, "2.6.1.10.1");
283         break;
284         default:
285         break;
286         }
287
288 #.FN_BODY Content
289   tvbuff_t *next_tvb;
290
291   /* we can do this now constructed octet strings are supported */
292   offset = dissect_ber_octet_string(FALSE, pinfo, tree, tvb, offset, hf_index, &next_tvb);
293
294   if (next_tvb)
295     (void) call_ber_oid_callback(object_identifier_id, next_tvb, 0, pinfo, top_tree ? top_tree : tree);
296
297 #.FN_PARS MTAName
298         VAL_PTR = &mtaname
299
300 #.FN_BODY MTAName
301         tvbuff_t        *mtaname;
302
303         %(DEFAULT_BODY)s
304
305         if (check_col(pinfo->cinfo, COL_INFO)) {
306                 col_append_fstr(pinfo->cinfo, COL_INFO, " %%s", tvb_get_string(mtaname, 0, tvb_length(mtaname)));
307         }
308
309 #.END
310