526024d595c0fe7fabf10c59fb2fd5cb74e637a7
[obnox/wireshark/wip.git] / asn1 / x509sat / x509sat.cnf
1 # x509sat.cnf
2 # X509SAT conformation file
3
4 # $Id$
5
6 #.TYPE_ATTR
7 GUID                    TYPE = FT_GUID  DISPLAY = BASE_NONE  STRING = NULL BITMASK = 0
8
9 #.IMPORT ../x509if/x509if-exp.cnf
10
11 #.EXPORTS
12 CaseIgnoreListMatch
13 CountryName
14 Criteria
15 DayTime
16 DayTimeBand
17 DestinationIndicator
18 DirectoryString
19 EnhancedGuide
20 FacsimileTelephoneNumber
21 InternationalISDNNumber
22 LanguageContextSyntax
23 LocaleContextSyntax
24 MultipleMatchingLocalities
25 NameAndOptionalUID
26 NamedDay
27 OctetSubstringAssertion
28 Period
29 PostalAddress
30 PreferredDeliveryMethod
31 PresentationAddress
32 ProtocolInformation
33 SubstringAssertion
34 TimeAssertion
35 TimeSpecification
36 TimeZone
37 UniqueIdentifier
38 X121Address
39 XDayOf
40 ZonalResult
41 ZonalSelect
42
43 #.PDU
44 CaseIgnoreListMatch
45 CountryName
46 Criteria
47 DayTime
48 DayTimeBand
49 DestinationIndicator
50 DirectoryString
51 EnhancedGuide
52 FacsimileTelephoneNumber
53 Guide
54 InternationalISDNNumber
55 NameAndOptionalUID
56 PostalAddress
57 PreferredDeliveryMethod
58 PresentationAddress
59 TelephoneNumber
60 TelexNumber
61 UniqueIdentifier
62 X121Address
63
64 ObjectIdentifier
65 OctetString
66 BitString
67 Integer
68 Boolean
69 SyntaxGeneralizedTime
70 SyntaxUTCTime
71 SyntaxNumericString
72 SyntaxPrintableString
73 SyntaxIA5String
74 SyntaxBMPString
75 SyntaxUniversalString
76 SyntaxUTF8String
77 SyntaxTeletexString
78 SyntaxT61String
79 SyntaxVideotexString
80 SyntaxGraphicString
81 SyntaxISO646String
82 SyntaxVisibleString
83 SyntaxGeneralString
84
85 #.REGISTER
86 ObjectIdentifier        B "2.5.4.0"   "id-at-objectClass"
87 #  - see x509if.cnf for "id-at-aliasedEntryName"
88 DirectoryString         B "2.5.4.2"    "id-at-knowledgeInformation"
89 DirectoryString         B "2.5.4.3"    "id-at-commonName"
90 DirectoryString         B "2.5.4.4"    "id-at-surname"
91 SyntaxPrintableString   B "2.5.4.5"    "id-at-serialNumber"
92 CountryName             B "2.5.4.6"    "id-at-countryName"
93 DirectoryString         B "2.5.4.7"    "id-at-localityName"
94 DirectoryString         B "2.5.4.7.1"  "id-at-collectiveLocalityName"
95 DirectoryString         B "2.5.4.8"    "id-at-stateOrProvinceName"
96 DirectoryString         B "2.5.4.8.1"  "id-at-collectiveStateOrProvinceName"
97 DirectoryString         B "2.5.4.9"    "id-at-streetAddress"
98 DirectoryString         B "2.5.4.9.1"  "id-at-collectiveStreetAddress"
99 DirectoryString         B "2.5.4.10.1" "id-at-collectiveOrganizationName"
100 DirectoryString         B "2.5.4.10"   "id-at-organizationName"
101 DirectoryString         B "2.5.4.11"   "id-at-organizationalUnitName"
102 DirectoryString         B "2.5.4.11.1" "id-at-collectiveOrganizationalUnitName"
103 DirectoryString         B "2.5.4.12"   "id-at-title"
104 DirectoryString         B "2.5.4.13"   "id-at-description"
105 EnhancedGuide           B "2.5.4.14"   "id-at-searchGuide"
106 DirectoryString         B "2.5.4.15"   "id-at-businessCategory"
107 PostalAddress           B "2.5.4.16"   "id-at-postalAddress"
108 DirectoryString         B "2.5.4.17"   "id-at-postalCode"
109 DirectoryString         B "2.5.4.17.1" "id-at-collectivePostalCode"
110 DirectoryString         B "2.5.4.18"   "id-at-postOfficeBox"
111 DirectoryString         B "2.5.4.18.1" "id-at-collectivePostOfficeBox"
112 DirectoryString         B "2.5.4.19"   "id-at-physicalDeliveryOfficeName"
113 DirectoryString         B "2.5.4.19.1" "id-at-collectivePhysicalDeliveryOfficeName"
114 TelephoneNumber         B "2.5.4.20"   "id-at-telephoneNumber"
115 TelephoneNumber         B "2.5.4.20.1" "id-at-collectiveTelephoneNumber"
116 TelexNumber             B "2.5.4.21"   "id-at-telexNumber"
117 TelexNumber             B "2.5.4.21.1" "id-at-collectiveTelexNumber"
118 # "id-at-teletexTerminalIdentifier" - what syntax?
119 FacsimileTelephoneNumber B "2.5.4.23" "id-at-facsimileTelephoneNumber"
120 FacsimileTelephoneNumber B "2.5.4.23.1" "id-at-collectiveFacsimileTelephoneNumber"
121 X121Address             B "2.5.4.24"   "id-at-x121Address"
122 InternationalISDNNumber B "2.5.4.25" "id-at-internationalISDNNumber"
123 InternationalISDNNumber B "2.5.4.25.1" "id-at-collectiveInternationalISDNNumber"
124 PostalAddress           B "2.5.4.26" "id-at-registeredAddress"
125 DestinationIndicator    B "2.5.4.27" "id-at-destinationIndicator"
126 PreferredDeliveryMethod B "2.5.4.28" "id-at-preferredDeliveryMethod"
127 PresentationAddress     B "2.5.4.29" "id-at-presentationAddress"
128 ObjectIdentifier        B "2.5.4.30" "id-at-supportedApplicationContext"
129 # "id-at-member" - see x509if.cnf
130 # "id-at-owner" - see x509if.cnf
131 # "id-at-roleOccupant" - see x509if.cnf
132 # "id-at-seeAlso" - see x509if.cnf
133 OctetString        B "2.5.4.35" "id-at-userPassword"
134 # "id-at-userCertificate" - see x509af.cnf
135 # "id-at-cACertificate" - see x509af.cnf
136 # "id-at-authorityRevocationList" - see x509af.cnf
137 # "id-at-certificateRevocationList" - see x509af.cnf
138 # "id-at-crossCertificatePair" - see x509af.cnf
139 DirectoryString         B "2.5.4.41"   "id-at-name"
140 DirectoryString         B "2.5.4.42"   "id-at-givenName"
141 DirectoryString         B "2.5.4.43"   "id-at-initials"
142 DirectoryString         B "2.5.4.44"   "id-at-generationQualifier"
143 UniqueIdentifier        B "2.5.4.45"  "id-at-uniqueIdedntifier"
144 SyntaxPrintableString    B "2.5.4.46"   "id-at-dnQualifier"
145 EnhancedGuide           B "2.5.4.47"    "id-at-enhancedSearchGuide"
146 ProtocolInformation     B "2.5.4.48" "id-at-protocolInformation"
147 # 49 "id-at-distinguishedName" - see x509if.cnf
148 NameAndOptionalUID      B "2.5.4.50" "id-at-uniqueMember"
149 DirectoryString         B "2.5.4.51"   "id-at-houseIdentifier"
150 ObjectIdentifier        B "2.5.4.52"    "id-at-supportedAlgorithms"
151 # 53 "id-at-deltaRevocationList" - what syntax?
152 DirectoryString         B "2.5.4.54"   "id-at-dmdName"
153 # 55 "id-at-clearance" - what syntax (or rather where?)
154 # 56 "id-at-defaultDirQop" - what syntax?
155 # 56 "id-at-attributeIntegrityInfo" - what syntax?
156 # 58 "id-at-attributeCertificate" - see x509af.cnf
157 # 59 "id-at-attributeCertificateRevocationLIst" - see x509af.cnf
158 # 60 "id-at-confKeyInfo" - what syntax?
159 # 61 ?
160 # 62 ?
161 # 63 ?
162 # 64 "id-at-familyInformation" - what syntax?
163 DirectoryString        B "2.5.4.65"   "id-at-pseudonym"
164 ObjectIdentifier       B "2.5.4.66" "id-at-communuicationsService"
165 ObjectIdentifier       B "2.5.4.67" "id-at-communuicationsNetwork"
166
167 SyntaxGeneralizedTime  B "2.5.18.1" "id-oa-createTimeStamp"     
168 SyntaxGeneralizedTime  B "2.5.18.2" "id-oa-modifyTimeStamp"     
169 ObjectIdentifier       B "2.5.18.5" "id-oa-administrativeRole"
170 ObjectIdentifier       B "2.5.18.7" "id-oa-collectiveExclusions"
171 SyntaxGeneralizedTime  B "2.5.18.8" "id-oa-subschemaTimeStamp"  
172 Boolean                B "2.5.18.9" "id-oa-hasSubordinates"
173
174 ObjectIdentifier       B "2.5.24.1" "id-aca-accessControlScheme"
175
176 # X402 - see master list in acp133.cnf
177 ObjectIdentifier B "2.6.5.2.8" "id-at-mhs-supported-automatic-actions"
178 ObjectIdentifier B "2.6.5.2.10" "id-at-mhs-supported-attributes"
179 ObjectIdentifier B "2.6.5.2.11" "id-at-mhs-supported-matching-rules"
180
181 # ACP133 - see master list in acp133.cnf
182
183 DirectoryString B "2.16.840.1.101.2.2.1.45" "id-at-releaseAuthorityName"
184 SyntaxPrintableString B "2.16.840.1.101.2.2.1.51" "id-at-cognizantAuthority"
185 SyntaxPrintableString B "2.16.840.1.101.2.2.1.53" "id-at-accountingCode"
186 Boolean B "2.16.840.1.101.2.2.1.54" "id-at-dualRoute"
187 SyntaxGeneralizedTime B "2.16.840.1.101.2.2.1.55" "id-at-effectiveDate"
188 SyntaxGeneralizedTime B "2.16.840.1.101.2.2.1.57" "id-at-expirationDate"
189 SyntaxPrintableString B "2.16.840.1.101.2.2.1.58" "id-at-hostOrgACP127"
190 SyntaxGeneralizedTime B "2.16.840.1.101.2.2.1.60" "id-at-lastRecapDate"
191 SyntaxPrintableString B "2.16.840.1.101.2.2.1.62" "id-at-lmf"
192 SyntaxPrintableString B "2.16.840.1.101.2.2.1.63" "id-at-longTitle"
193 Boolean B "2.16.840.1.101.2.2.1.64" "id-at-minimize"
194 Boolean B "2.16.840.1.101.2.2.1.65" "id-at-minimizeOverride"
195 SyntaxPrintableString B "2.16.840.1.101.2.2.1.68" "id-at-nationality"
196 SyntaxPrintableString B "2.16.840.1.101.2.2.1.68.1" "id-at-collectiveNationality"
197 Boolean B "2.16.840.1.101.2.2.1.69" "id-at-transferStation"
198 SyntaxPrintableString B "2.16.840.1.101.2.2.1.70" "id-at-plaNameACP127"
199 Boolean B "2.16.840.1.101.2.2.1.72" "id-at-plaReplace"
200 SyntaxPrintableString B "2.16.840.1.101.2.2.1.73" "id-at-primarySpellingACP127"
201 Boolean B "2.16.840.1.101.2.2.1.74" "id-at-publish"
202 SyntaxGeneralizedTime B "2.16.840.1.101.2.2.1.75" "id-at-recapDueDate"
203 SyntaxPrintableString B "2.16.840.1.101.2.2.1.77" "id-at-rI"
204 Boolean B "2.16.840.1.101.2.2.1.81" "id-at-section"
205 SyntaxPrintableString B "2.16.840.1.101.2.2.1.82" "id-at-serviceOrAgency"
206 SyntaxPrintableString B "2.16.840.1.101.2.2.1.83" "id-at-sHD"
207 SyntaxPrintableString B "2.16.840.1.101.2.2.1.84" "id-at-shortTitle"
208 SyntaxPrintableString B "2.16.840.1.101.2.2.1.85" "id-at-sigad"
209 SyntaxPrintableString B "2.16.840.1.101.2.2.1.86" "id-at-spot"
210 Boolean B "2.16.840.1.101.2.2.1.87" "id-at-tARE"
211 TelephoneNumber B "2.16.840.1.101.2.2.1.94" "id-at-aCPMobileTelephoneNumber"
212 TelephoneNumber B "2.16.840.1.101.2.2.1.95" "id-at-aCPPagerTelephoneNumber"
213 SyntaxPrintableString B "2.16.840.1.101.2.2.1.96" "id-at-tCC"
214 SyntaxPrintableString B "2.16.840.1.101.2.2.1.97" "id-at-tRC"
215 SyntaxPrintableString B "2.16.840.1.101.2.2.1.106" "id-at-accessCodes"
216 SyntaxGraphicString B "2.16.840.1.101.2.2.1.107" "id-at-accessSchema"
217 TelephoneNumber B "2.16.840.1.101.2.2.1.109" "id-at-aCPTelephoneFaxNumber"
218 ObjectIdentifier B "2.16.840.1.101.2.2.1.115" "id-at-gatewayType"
219 ObjectIdentifier B "2.16.840.1.101.2.2.1.116" "id-at-ghpType"
220 DirectoryString B "2.16.840.1.101.2.2.1.118" "id-at-mailDomains"
221 TelephoneNumber B "2.16.840.1.101.2.2.1.119" "id-at-militaryFacsimileNumber"
222 TelephoneNumber B "2.16.840.1.101.2.2.1.119.1" "id-at-collectiveMilitaryFacsimileNumber"
223 TelephoneNumber B "2.16.840.1.101.2.2.1.120" "id-at-militaryTelephoneNumber"
224 TelephoneNumber B "2.16.840.1.101.2.2.1.120.1" "id-at-collectiveMilitaryTelephoneNumber"
225 SyntaxGraphicString B "2.16.840.1.101.2.2.1.122" "id-at-networkSchema"
226 DirectoryString B "2.16.840.1.101.2.2.1.124" "id-at-operationName"
227 DirectoryString B "2.16.840.1.101.2.2.1.125" "id-at-positionNumber"
228 DirectoryString B "2.16.840.1.101.2.2.1.126" "id-at-proprietaryMailboxes"
229 TelephoneNumber B "2.16.840.1.101.2.2.1.127" "id-at-secureFacsimileNumber"
230 TelephoneNumber B "2.16.840.1.101.2.2.1.127.1" "id-at-collectiveSecureFacsimileNumber"
231 TelephoneNumber B "2.16.840.1.101.2.2.1.128" "id-at-secureTelephoneNumber"
232 TelephoneNumber B "2.16.840.1.101.2.2.1.128.1" "id-at-collectiveSecureTelephoneNumber"
233 DirectoryString B "2.16.840.1.101.2.2.1.129" "id-at-serviceNumber"
234 DirectoryString B "2.16.840.1.101.2.2.1.133" "id-at-rank"
235 DirectoryString B "2.16.840.1.101.2.2.1.143" "id-at-adminConversion"
236 SyntaxPrintableString B "2.16.840.1.101.2.2.1.144" "id-at-tCCG"
237 DirectoryString B "2.16.840.1.101.2.2.1.145" "id-at-usdConversion"
238
239 # PKCS#9
240
241 SyntaxIA5String B "1.2.840.113549.1.9.1"        "pkcs-9-at-emailAddress"
242 #PKCS9String    B "1.2.840.113549.1.9.2"        "pkcs-9-at-unstructuredName" - TBD
243 #ContentType    B "1.2.840.113549.1.9.3"        "pkcs-9-at-contentType" - see cms.cnf
244 #MessageDigest  B "1.2.840.113549.1.9.4"        "pkcs-9-at-messageDigest" - see cms.cnf
245 #SigningTime    B "1.2.840.113549.1.9.5"        "pkcs-9-at-signingTime" - see cms.cnf
246 #Countersignature       B "1.2.840.113549.1.9.6"        "pkcs-9-at-counterSignature" - see cms.cnf
247 DirectoryString B "1.2.840.113549.1.9.7"        "pkcs-9-at-challengePassword"
248 DirectoryString B "1.2.840.113549.1.9.8"        "pkcs-9-at-unstructuredAddress"
249 #SETOFAttribute B "1.2.840.113549.1.9.9"        "pkcs-9-at-extendedCertificateAttributes" - TBD
250 DirectoryString B "1.2.840.113549.1.9.13"       "pkcs-9-at-signingDescription"
251 #ExtensionRequest       B "1.2.840.113549.1.9.14"       "pkcs-9-at-extensionRequest" - TBD
252 #SMIMECapabiliaties     B "1.2.840.113549.1.9.15"       "pkcs-9-at-smimeCapabilities" - TBD
253 SyntaxBMPString B "1.2.840.113549.1.9.20"       "pkcs-9-at-friendlyName"
254 OctetString     B "1.2.840.113549.1.9.21"       "pkcs-9-at-localKeyId"
255 #PFX            B "2.16.840.1.113730.3.1.216"   "pkcs-9-at-PKCS12" - see pkcs12.cnf
256 #PKCS15Token    B "1.2.840.113549.1.9.25.1"     "pkcs-9-at-pkcs15Token" - TBD
257 #EncryptedPrivateKeyInfo        B "1.2.840.113549.1.9.25.2"     "pkcs-9-at-encryptedPrivateKeyInfo" - see pkcs12.cnf
258 OctetString     B "1.2.840.113549.1.9.25.3"     "pkcs-9-at-randomNonce" # move to PKCS#9 when defined
259 Integer         B "1.2.840.113549.1.9.25.4"     "pkcs-9-at-sequenceNumber" # move to PKCS#9 when defined
260 #ContentInfo    B "1.2.840.113549.1.9.25.5"     "pkcs-9-at-pkcs7PDU" - TBD - not the same as CMS ContentInfo
261
262 SyntaxGeneralizedTime B "1.3.6.1.5.5.7.9.1"             "pkcs-9-at-dateOfBirth"
263 DirectoryString B "1.3.6.1.5.5.7.9.2"           "pkcs-9-at-placeOfBirth"
264 SyntaxPrintableString   B "1.3.6.1.5.5.7.9.3"           "pkcs-9-at-gender"
265 SyntaxPrintableString B "1.3.6.1.5.5.7.9.4"             "pkcs-9-at-countryOfCitizenship"
266 SyntaxPrintableString   B "1.3.6.1.5.5.7.9.5"           "pkcs-9-at-countryOfResidence"
267
268 # RFC 2247
269 SyntaxIA5String B "0.9.2342.19200300.100.1.25" "dc"
270
271 # Microsoft-specific
272 # GeneralName other-name
273 SyntaxBMPString B "1.3.6.1.4.1.311.20.2"        "id-ms-certificate-template-name"
274 SyntaxUTF8String B "1.3.6.1.4.1.311.20.2.3"     "id-ms-user-principal-name"
275
276 # unknown X.420 PerRecipientExtensionField
277 Integer B "1.2.826.0.1063.7.0.0.0" "unknown-UK-organisation-defined-extension"
278
279 # NEXOR Originating UA
280 SyntaxIA5String                 B "1.2.826.0.1004.10.1.1" "nexor-originating-ua"
281
282 # X.420 Message Store Attributes - see x420.cnf
283 Boolean         B       "2.6.1.6.3"     "id-sat-ipm-auto-discarded"
284
285 # RFC 4530
286 GUID    B       "1.3.6.1.1.16.4"        "entryUUID"
287
288 #.NO_EMIT
289
290 #.TYPE_RENAME
291
292 #.FIELD_RENAME
293 OctetSubstringAssertion/_item/any       any_substring
294 OctetSubstringAssertion/_item/final     finall_substring
295 OctetSubstringAssertion/_item/initial   initial_substring
296 XDayOf/first                            first_dayof
297 XDayOf/second                           second_dayof
298 XDayOf/third                            third_dayof
299 XDayOf/fourth                           fourth_dayof
300 XDayOf/fifth                            fifth_dayof
301
302 #.FN_PARS SyntaxBMPString VAL_PTR = &wide_tvb
303
304 #.FN_HDR SyntaxBMPString
305         tvbuff_t        *wide_tvb = NULL;
306         char            *string;
307 #.END
308         
309 #.FN_FTR SyntaxBMPString
310         if (! wide_tvb) {
311                 return offset;
312         }
313         string = tvb_get_ephemeral_faked_unicode (wide_tvb, 0, tvb_length(wide_tvb) / 2, FALSE);
314         proto_item_append_text(actx->created_item, " %s", string);      
315
316 #.END
317
318 #.FN_BODY GUID
319   gint8 class;
320   gboolean pc;
321   gint32 tag;
322   guint32 len;
323   e_guid_t uuid;
324
325   if(!implicit_tag){
326     offset=dissect_ber_identifier(actx->pinfo, tree, tvb, offset, &class, &pc, &tag);
327     offset=dissect_ber_length(actx->pinfo, tree, tvb, offset, &len, NULL);
328   } else {
329     gint32 remaining=tvb_length_remaining(tvb, offset);
330     len=remaining>0 ? remaining : 0;
331   }
332
333   tvb_get_ntohguid (tvb, offset, &uuid);
334   actx->created_item = proto_tree_add_guid(tree, hf_index, tvb, offset, len, &uuid);
335 #.END
336
337 #.END
338
339