1 // NOTE: this is a machine generated file--editing not recommended
3 // sm_x509ce.h - class definitions for ASN.1 module CertificateExtensions
5 // This file was generated by snacc on Wed Jun 27 16:40:55 2001
6 // UBC snacc by Mike Sample
7 // A couple of enhancements made by IBM European Networking Center
13 //------------------------------------------------------------------------------
14 // class declarations:
19 class PolicyQualifierInfo
;
20 class AttributesSyntax
;
21 class DistributionPointName
;
22 class PolicyMappingsSyntaxSeq
;
23 class PolicyInformationSeqOf
;
24 class PolicyInformation
;
26 class DistributionPoint
;
27 class CertificatePoliciesSyntax
;
28 class GeneralSubtrees
;
29 class AuthorityKeyIdentifier
;
30 class ExtKeyUsageSyntax
;
31 class PrivateKeyUsagePeriod
;
32 class PolicyMappingsSyntax
;
33 class SupportedAlgorithm
;
34 class BasicConstraintsSyntax
;
35 class NameConstraintsSyntax
;
36 class PolicyConstraintsSyntax
;
38 class CRLDistPointsSyntax
;
39 class IssuingDistPointSyntax
;
41 //------------------------------------------------------------------------------
44 typedef enum CertificateExtensionsAnyId
47 } CertificateExtensionsAnyId
;
51 typedef AsnOcts KeyIdentifier
;
53 /* BIT STRING { digitalSignature (0), nonRepudiation (1), keyEncipherment (2), dataEncipherment (3), keyAgreement (4), keyCertSign (5), cRLSign (6), encipherOnly (7), decipherOnly (8) } */
54 class KeyUsage
: public AsnBits
57 KeyUsage(): AsnBits() {}
58 KeyUsage (const size_t bits
): AsnBits (bits
) {}
59 KeyUsage (const char *str
, const size_t bitLen
): AsnBits (str
, bitLen
) {}
60 KeyUsage (const AsnBits
&b
): AsnBits (b
) {}
76 /* OBJECT IDENTIFIER */
77 typedef AsnOid KeyPurposeId
;
79 /* OBJECT IDENTIFIER */
80 typedef AsnOid CertPolicyId
;
82 /* INTEGER (0..MAX) */
83 typedef AsnInt BaseDistance
;
85 /* INTEGER (0..MAX) */
86 typedef AsnInt SkipCerts
;
88 /* INTEGER (0..MAX) */
89 typedef AsnInt CRLNumber
;
91 /* ENUMERATED { unspecified (0), keyCompromise (1), cACompromise (2), affiliationChanged (3), superseded (4), cessationOfOperation (5), certificateHold (6), removeFromCRL (8) } */
92 class CRLReason
: public AsnEnum
95 CRLReason(): AsnEnum() {}
96 CRLReason (int i
): AsnEnum (i
) {}
102 affiliationChanged
= 3,
104 cessationOfOperation
= 5,
111 /* OBJECT IDENTIFIER */
112 typedef AsnOid HoldInstruction
;
114 /* BIT STRING { unused (0), keyCompromise (1), caCompromise (2), affiliationChanged (3), superseded (4), cessationOfOperation (5), certificateHold (6) } */
115 class ReasonFlags
: public AsnBits
118 ReasonFlags(): AsnBits() {}
119 ReasonFlags (const size_t bits
): AsnBits (bits
) {}
120 ReasonFlags (const char *str
, const size_t bitLen
): AsnBits (str
, bitLen
) {}
121 ReasonFlags (const AsnBits
&b
): AsnBits (b
) {}
127 affiliationChanged
= 3,
129 cessationOfOperation
= 5,
135 class PolicyQualifierInfo
: public AsnType
138 AsnOid policyQualifierId
;
141 PolicyQualifierInfo();
142 PolicyQualifierInfo (const PolicyQualifierInfo
&);
143 virtual ~PolicyQualifierInfo();
144 virtual AsnType
*Clone() const;
146 virtual AsnType
*Copy() const;
148 PolicyQualifierInfo
&operator = (const PolicyQualifierInfo
&);
149 AsnLen
BEncContent (BUF_TYPE b
);
150 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
152 AsnLen
BEnc (BUF_TYPE b
);
153 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
154 int BEncPdu (BUF_TYPE b
, AsnLen
&bytesEncoded
);
155 int BDecPdu (BUF_TYPE b
, AsnLen
&bytesDecoded
);
157 void Print (ostream
&os
) const;
161 class AttributesSyntax
: public AsnType
164 unsigned long int count
;
170 } *first
, *curr
, *last
;
173 AttributesSyntax() { count
= 0; first
= curr
= last
= NULL
; }
174 AttributesSyntax (const AttributesSyntax
&);
175 virtual ~AttributesSyntax();
176 virtual AsnType
*Clone() const;
178 virtual AsnType
*Copy() const;
180 AttributesSyntax
&operator = (const AttributesSyntax
&);
181 void SetCurrElmt (unsigned long int index
);
182 unsigned long int GetCurrElmtIndex();
183 void SetCurrToFirst() { curr
= first
; }
184 void SetCurrToLast() { curr
= last
; }
185 // reading member fcns
186 int Count() const { return count
; }
187 // NOTE: if your compiler complains about these NULLs, its definition of NULL is broken (and you better change it there!)
188 Attribute
*First() const { return count
> 0 ? first
->elmt
: NULL
; }
189 Attribute
*Last() const { return count
> 0 ? last
->elmt
: NULL
; }
190 Attribute
*Curr() const { return curr
? curr
->elmt
: NULL
; }
191 Attribute
*Next() const { return curr
&& curr
->next
? curr
->next
->elmt
: NULL
; }
192 Attribute
*Prev() const { return curr
&& curr
->prev
? curr
->prev
->elmt
: NULL
; }
194 // routines that move the curr elmt
195 Attribute
*GoNext() { if (curr
) curr
= curr
->next
; return Curr(); }
196 Attribute
*GoPrev() { if (curr
) curr
= curr
->prev
; return Curr(); }
198 // write & alloc fcns - returns new elmt
199 Attribute
*Append(); // add elmt to end of list
200 Attribute
*Prepend(); // add elmt to beginning of list
201 Attribute
*InsertBefore(); //insert elmt before current elmt
202 Attribute
*InsertAfter(); //insert elmt after current elmt
204 // write & alloc & copy - returns list after copying elmt
205 AttributesSyntax
&AppendCopy (Attribute
&elmt
); // add elmt to end of list
206 AttributesSyntax
&PrependCopy (Attribute
&elmt
); // add elmt to beginning of list
207 AttributesSyntax
&InsertBeforeAndCopy (Attribute
&elmt
); //insert elmt before current elmt
208 AttributesSyntax
&InsertAfterAndCopy (Attribute
&elmt
); //insert elmt after current elmt
210 // removing the current elmt from the list
211 void RemoveCurrFromList();
213 // encode and decode routines
214 AsnLen
BEnc (BUF_TYPE b
);
215 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
216 AsnLen
BEncContent (BUF_TYPE b
);
217 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
220 void Print (ostream
&os
) const;
224 class DistributionPointName
: public AsnType
230 nameRelativeToCRLIssuerCid
= 1
233 enum ChoiceIdEnum choiceId
;
236 GeneralNames
*fullName
;
237 RelativeDistinguishedName
*nameRelativeToCRLIssuer
;
241 DistributionPointName();
242 DistributionPointName (const DistributionPointName
&);
243 virtual ~DistributionPointName();
245 virtual AsnType
*Clone() const;
247 virtual AsnType
*Copy() const;
249 DistributionPointName
&operator = (const DistributionPointName
&);
250 AsnLen
BEncContent (BUF_TYPE b
);
251 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
252 AsnLen
BEnc (BUF_TYPE b
);
253 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
254 int BEncPdu (BUF_TYPE b
, AsnLen
&bytesEncoded
);
255 int BDecPdu (BUF_TYPE b
, AsnLen
&bytesDecoded
);
257 void Print (ostream
&os
) const;
261 class PolicyMappingsSyntaxSeq
: public AsnType
264 CertPolicyId issuerDomainPolicy
;
265 CertPolicyId subjectDomainPolicy
;
267 PolicyMappingsSyntaxSeq();
268 PolicyMappingsSyntaxSeq (const PolicyMappingsSyntaxSeq
&);
269 virtual ~PolicyMappingsSyntaxSeq();
270 virtual AsnType
*Clone() const;
272 virtual AsnType
*Copy() const;
274 PolicyMappingsSyntaxSeq
&operator = (const PolicyMappingsSyntaxSeq
&);
275 AsnLen
BEncContent (BUF_TYPE b
);
276 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
278 AsnLen
BEnc (BUF_TYPE b
);
279 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
280 int BEncPdu (BUF_TYPE b
, AsnLen
&bytesEncoded
);
281 int BDecPdu (BUF_TYPE b
, AsnLen
&bytesDecoded
);
283 void Print (ostream
&os
) const;
287 class PolicyInformationSeqOf
: public AsnType
290 unsigned long int count
;
295 PolicyQualifierInfo
*elmt
;
296 } *first
, *curr
, *last
;
299 PolicyInformationSeqOf() { count
= 0; first
= curr
= last
= NULL
; }
300 PolicyInformationSeqOf (const PolicyInformationSeqOf
&);
301 virtual ~PolicyInformationSeqOf();
302 virtual AsnType
*Clone() const;
304 virtual AsnType
*Copy() const;
306 PolicyInformationSeqOf
&operator = (const PolicyInformationSeqOf
&);
307 void SetCurrElmt (unsigned long int index
);
308 unsigned long int GetCurrElmtIndex();
309 void SetCurrToFirst() { curr
= first
; }
310 void SetCurrToLast() { curr
= last
; }
311 // reading member fcns
312 int Count() const { return count
; }
313 // NOTE: if your compiler complains about these NULLs, its definition of NULL is broken (and you better change it there!)
314 PolicyQualifierInfo
*First() const { return count
> 0 ? first
->elmt
: NULL
; }
315 PolicyQualifierInfo
*Last() const { return count
> 0 ? last
->elmt
: NULL
; }
316 PolicyQualifierInfo
*Curr() const { return curr
? curr
->elmt
: NULL
; }
317 PolicyQualifierInfo
*Next() const { return curr
&& curr
->next
? curr
->next
->elmt
: NULL
; }
318 PolicyQualifierInfo
*Prev() const { return curr
&& curr
->prev
? curr
->prev
->elmt
: NULL
; }
320 // routines that move the curr elmt
321 PolicyQualifierInfo
*GoNext() { if (curr
) curr
= curr
->next
; return Curr(); }
322 PolicyQualifierInfo
*GoPrev() { if (curr
) curr
= curr
->prev
; return Curr(); }
324 // write & alloc fcns - returns new elmt
325 PolicyQualifierInfo
*Append(); // add elmt to end of list
326 PolicyQualifierInfo
*Prepend(); // add elmt to beginning of list
327 PolicyQualifierInfo
*InsertBefore(); //insert elmt before current elmt
328 PolicyQualifierInfo
*InsertAfter(); //insert elmt after current elmt
330 // write & alloc & copy - returns list after copying elmt
331 PolicyInformationSeqOf
&AppendCopy (PolicyQualifierInfo
&elmt
); // add elmt to end of list
332 PolicyInformationSeqOf
&PrependCopy (PolicyQualifierInfo
&elmt
); // add elmt to beginning of list
333 PolicyInformationSeqOf
&InsertBeforeAndCopy (PolicyQualifierInfo
&elmt
); //insert elmt before current elmt
334 PolicyInformationSeqOf
&InsertAfterAndCopy (PolicyQualifierInfo
&elmt
); //insert elmt after current elmt
336 // removing the current elmt from the list
337 void RemoveCurrFromList();
339 // encode and decode routines
340 AsnLen
BEnc (BUF_TYPE b
);
341 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
342 AsnLen
BEncContent (BUF_TYPE b
);
343 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
346 void Print (ostream
&os
) const;
350 class PolicyInformation
: public AsnType
353 CertPolicyId policyIdentifier
;
354 PolicyInformationSeqOf
*policyQualifiers
;
357 PolicyInformation (const PolicyInformation
&);
358 virtual ~PolicyInformation();
359 virtual AsnType
*Clone() const;
361 virtual AsnType
*Copy() const;
363 PolicyInformation
&operator = (const PolicyInformation
&);
364 AsnLen
BEncContent (BUF_TYPE b
);
365 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
367 AsnLen
BEnc (BUF_TYPE b
);
368 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
369 int BEncPdu (BUF_TYPE b
, AsnLen
&bytesEncoded
);
370 int BDecPdu (BUF_TYPE b
, AsnLen
&bytesDecoded
);
372 void Print (ostream
&os
) const;
376 class GeneralSubtree
: public AsnType
380 BaseDistance
*minimum
;
381 BaseDistance
*maximum
;
384 GeneralSubtree (const GeneralSubtree
&);
385 virtual ~GeneralSubtree();
386 virtual AsnType
*Clone() const;
388 virtual AsnType
*Copy() const;
390 GeneralSubtree
&operator = (const GeneralSubtree
&);
391 AsnLen
BEncContent (BUF_TYPE b
);
392 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
394 AsnLen
BEnc (BUF_TYPE b
);
395 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
396 int BEncPdu (BUF_TYPE b
, AsnLen
&bytesEncoded
);
397 int BDecPdu (BUF_TYPE b
, AsnLen
&bytesDecoded
);
399 void Print (ostream
&os
) const;
403 class DistributionPoint
: public AsnType
406 DistributionPointName
*distributionPoint
;
407 ReasonFlags
*reasons
;
408 GeneralNames
*cRLIssuer
;
411 DistributionPoint (const DistributionPoint
&);
412 virtual ~DistributionPoint();
413 virtual AsnType
*Clone() const;
415 virtual AsnType
*Copy() const;
417 DistributionPoint
&operator = (const DistributionPoint
&);
418 AsnLen
BEncContent (BUF_TYPE b
);
419 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
421 AsnLen
BEnc (BUF_TYPE b
);
422 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
423 int BEncPdu (BUF_TYPE b
, AsnLen
&bytesEncoded
);
424 int BDecPdu (BUF_TYPE b
, AsnLen
&bytesDecoded
);
426 void Print (ostream
&os
) const;
430 class CertificatePoliciesSyntax
: public AsnType
433 unsigned long int count
;
438 PolicyInformation
*elmt
;
439 } *first
, *curr
, *last
;
442 CertificatePoliciesSyntax() { count
= 0; first
= curr
= last
= NULL
; }
443 CertificatePoliciesSyntax (const CertificatePoliciesSyntax
&);
444 virtual ~CertificatePoliciesSyntax();
445 virtual AsnType
*Clone() const;
447 virtual AsnType
*Copy() const;
449 CertificatePoliciesSyntax
&operator = (const CertificatePoliciesSyntax
&);
450 void SetCurrElmt (unsigned long int index
);
451 unsigned long int GetCurrElmtIndex();
452 void SetCurrToFirst() { curr
= first
; }
453 void SetCurrToLast() { curr
= last
; }
454 // reading member fcns
455 int Count() const { return count
; }
456 // NOTE: if your compiler complains about these NULLs, its definition of NULL is broken (and you better change it there!)
457 PolicyInformation
*First() const { return count
> 0 ? first
->elmt
: NULL
; }
458 PolicyInformation
*Last() const { return count
> 0 ? last
->elmt
: NULL
; }
459 PolicyInformation
*Curr() const { return curr
? curr
->elmt
: NULL
; }
460 PolicyInformation
*Next() const { return curr
&& curr
->next
? curr
->next
->elmt
: NULL
; }
461 PolicyInformation
*Prev() const { return curr
&& curr
->prev
? curr
->prev
->elmt
: NULL
; }
463 // routines that move the curr elmt
464 PolicyInformation
*GoNext() { if (curr
) curr
= curr
->next
; return Curr(); }
465 PolicyInformation
*GoPrev() { if (curr
) curr
= curr
->prev
; return Curr(); }
467 // write & alloc fcns - returns new elmt
468 PolicyInformation
*Append(); // add elmt to end of list
469 PolicyInformation
*Prepend(); // add elmt to beginning of list
470 PolicyInformation
*InsertBefore(); //insert elmt before current elmt
471 PolicyInformation
*InsertAfter(); //insert elmt after current elmt
473 // write & alloc & copy - returns list after copying elmt
474 CertificatePoliciesSyntax
&AppendCopy (PolicyInformation
&elmt
); // add elmt to end of list
475 CertificatePoliciesSyntax
&PrependCopy (PolicyInformation
&elmt
); // add elmt to beginning of list
476 CertificatePoliciesSyntax
&InsertBeforeAndCopy (PolicyInformation
&elmt
); //insert elmt before current elmt
477 CertificatePoliciesSyntax
&InsertAfterAndCopy (PolicyInformation
&elmt
); //insert elmt after current elmt
479 // removing the current elmt from the list
480 void RemoveCurrFromList();
482 // encode and decode routines
483 AsnLen
BEnc (BUF_TYPE b
);
484 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
485 AsnLen
BEncContent (BUF_TYPE b
);
486 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
489 void Print (ostream
&os
) const;
493 class GeneralSubtrees
: public AsnType
496 unsigned long int count
;
501 GeneralSubtree
*elmt
;
502 } *first
, *curr
, *last
;
505 GeneralSubtrees() { count
= 0; first
= curr
= last
= NULL
; }
506 GeneralSubtrees (const GeneralSubtrees
&);
507 virtual ~GeneralSubtrees();
508 virtual AsnType
*Clone() const;
510 virtual AsnType
*Copy() const;
512 GeneralSubtrees
&operator = (const GeneralSubtrees
&);
513 void SetCurrElmt (unsigned long int index
);
514 unsigned long int GetCurrElmtIndex();
515 void SetCurrToFirst() { curr
= first
; }
516 void SetCurrToLast() { curr
= last
; }
517 // reading member fcns
518 int Count() const { return count
; }
519 // NOTE: if your compiler complains about these NULLs, its definition of NULL is broken (and you better change it there!)
520 GeneralSubtree
*First() const { return count
> 0 ? first
->elmt
: NULL
; }
521 GeneralSubtree
*Last() const { return count
> 0 ? last
->elmt
: NULL
; }
522 GeneralSubtree
*Curr() const { return curr
? curr
->elmt
: NULL
; }
523 GeneralSubtree
*Next() const { return curr
&& curr
->next
? curr
->next
->elmt
: NULL
; }
524 GeneralSubtree
*Prev() const { return curr
&& curr
->prev
? curr
->prev
->elmt
: NULL
; }
526 // routines that move the curr elmt
527 GeneralSubtree
*GoNext() { if (curr
) curr
= curr
->next
; return Curr(); }
528 GeneralSubtree
*GoPrev() { if (curr
) curr
= curr
->prev
; return Curr(); }
530 // write & alloc fcns - returns new elmt
531 GeneralSubtree
*Append(); // add elmt to end of list
532 GeneralSubtree
*Prepend(); // add elmt to beginning of list
533 GeneralSubtree
*InsertBefore(); //insert elmt before current elmt
534 GeneralSubtree
*InsertAfter(); //insert elmt after current elmt
536 // write & alloc & copy - returns list after copying elmt
537 GeneralSubtrees
&AppendCopy (GeneralSubtree
&elmt
); // add elmt to end of list
538 GeneralSubtrees
&PrependCopy (GeneralSubtree
&elmt
); // add elmt to beginning of list
539 GeneralSubtrees
&InsertBeforeAndCopy (GeneralSubtree
&elmt
); //insert elmt before current elmt
540 GeneralSubtrees
&InsertAfterAndCopy (GeneralSubtree
&elmt
); //insert elmt after current elmt
542 // removing the current elmt from the list
543 void RemoveCurrFromList();
545 // encode and decode routines
546 AsnLen
BEnc (BUF_TYPE b
);
547 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
548 AsnLen
BEncContent (BUF_TYPE b
);
549 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
552 void Print (ostream
&os
) const;
556 class AuthorityKeyIdentifier
: public AsnType
559 KeyIdentifier
*keyIdentifier
;
560 GeneralNames
*authorityCertIssuer
;
561 CertificateSerialNumber
*authorityCertSerialNumber
;
563 AuthorityKeyIdentifier();
564 AuthorityKeyIdentifier (const AuthorityKeyIdentifier
&);
565 virtual ~AuthorityKeyIdentifier();
566 virtual AsnType
*Clone() const;
568 virtual AsnType
*Copy() const;
570 AuthorityKeyIdentifier
&operator = (const AuthorityKeyIdentifier
&);
571 AsnLen
BEncContent (BUF_TYPE b
);
572 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
574 AsnLen
BEnc (BUF_TYPE b
);
575 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
576 int BEncPdu (BUF_TYPE b
, AsnLen
&bytesEncoded
);
577 int BDecPdu (BUF_TYPE b
, AsnLen
&bytesDecoded
);
579 void Print (ostream
&os
) const;
584 typedef KeyIdentifier SubjectKeyIdentifier
;
586 class ExtKeyUsageSyntax
: public AsnType
589 unsigned long int count
;
595 } *first
, *curr
, *last
;
598 ExtKeyUsageSyntax() { count
= 0; first
= curr
= last
= NULL
; }
599 ExtKeyUsageSyntax (const ExtKeyUsageSyntax
&);
600 virtual ~ExtKeyUsageSyntax();
601 virtual AsnType
*Clone() const;
603 virtual AsnType
*Copy() const;
605 ExtKeyUsageSyntax
&operator = (const ExtKeyUsageSyntax
&);
606 void SetCurrElmt (unsigned long int index
);
607 unsigned long int GetCurrElmtIndex();
608 void SetCurrToFirst() { curr
= first
; }
609 void SetCurrToLast() { curr
= last
; }
610 // reading member fcns
611 int Count() const { return count
; }
612 // NOTE: if your compiler complains about these NULLs, its definition of NULL is broken (and you better change it there!)
613 KeyPurposeId
*First() const { return count
> 0 ? first
->elmt
: NULL
; }
614 KeyPurposeId
*Last() const { return count
> 0 ? last
->elmt
: NULL
; }
615 KeyPurposeId
*Curr() const { return curr
? curr
->elmt
: NULL
; }
616 KeyPurposeId
*Next() const { return curr
&& curr
->next
? curr
->next
->elmt
: NULL
; }
617 KeyPurposeId
*Prev() const { return curr
&& curr
->prev
? curr
->prev
->elmt
: NULL
; }
619 // routines that move the curr elmt
620 KeyPurposeId
*GoNext() { if (curr
) curr
= curr
->next
; return Curr(); }
621 KeyPurposeId
*GoPrev() { if (curr
) curr
= curr
->prev
; return Curr(); }
623 // write & alloc fcns - returns new elmt
624 KeyPurposeId
*Append(); // add elmt to end of list
625 KeyPurposeId
*Prepend(); // add elmt to beginning of list
626 KeyPurposeId
*InsertBefore(); //insert elmt before current elmt
627 KeyPurposeId
*InsertAfter(); //insert elmt after current elmt
629 // write & alloc & copy - returns list after copying elmt
630 ExtKeyUsageSyntax
&AppendCopy (KeyPurposeId
&elmt
); // add elmt to end of list
631 ExtKeyUsageSyntax
&PrependCopy (KeyPurposeId
&elmt
); // add elmt to beginning of list
632 ExtKeyUsageSyntax
&InsertBeforeAndCopy (KeyPurposeId
&elmt
); //insert elmt before current elmt
633 ExtKeyUsageSyntax
&InsertAfterAndCopy (KeyPurposeId
&elmt
); //insert elmt after current elmt
635 // removing the current elmt from the list
636 void RemoveCurrFromList();
638 // encode and decode routines
639 AsnLen
BEnc (BUF_TYPE b
);
640 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
641 AsnLen
BEncContent (BUF_TYPE b
);
642 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
645 void Print (ostream
&os
) const;
649 class PrivateKeyUsagePeriod
: public AsnType
652 GeneralizedTime
*notBefore
;
653 GeneralizedTime
*notAfter
;
655 PrivateKeyUsagePeriod();
656 PrivateKeyUsagePeriod (const PrivateKeyUsagePeriod
&);
657 virtual ~PrivateKeyUsagePeriod();
658 virtual AsnType
*Clone() const;
660 virtual AsnType
*Copy() const;
662 PrivateKeyUsagePeriod
&operator = (const PrivateKeyUsagePeriod
&);
663 AsnLen
BEncContent (BUF_TYPE b
);
664 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
666 AsnLen
BEnc (BUF_TYPE b
);
667 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
668 int BEncPdu (BUF_TYPE b
, AsnLen
&bytesEncoded
);
669 int BDecPdu (BUF_TYPE b
, AsnLen
&bytesDecoded
);
671 void Print (ostream
&os
) const;
675 class PolicyMappingsSyntax
: public AsnType
678 unsigned long int count
;
683 PolicyMappingsSyntaxSeq
*elmt
;
684 } *first
, *curr
, *last
;
687 PolicyMappingsSyntax() { count
= 0; first
= curr
= last
= NULL
; }
688 PolicyMappingsSyntax (const PolicyMappingsSyntax
&);
689 virtual ~PolicyMappingsSyntax();
690 virtual AsnType
*Clone() const;
692 virtual AsnType
*Copy() const;
694 PolicyMappingsSyntax
&operator = (const PolicyMappingsSyntax
&);
695 void SetCurrElmt (unsigned long int index
);
696 unsigned long int GetCurrElmtIndex();
697 void SetCurrToFirst() { curr
= first
; }
698 void SetCurrToLast() { curr
= last
; }
699 // reading member fcns
700 int Count() const { return count
; }
701 // NOTE: if your compiler complains about these NULLs, its definition of NULL is broken (and you better change it there!)
702 PolicyMappingsSyntaxSeq
*First() const { return count
> 0 ? first
->elmt
: NULL
; }
703 PolicyMappingsSyntaxSeq
*Last() const { return count
> 0 ? last
->elmt
: NULL
; }
704 PolicyMappingsSyntaxSeq
*Curr() const { return curr
? curr
->elmt
: NULL
; }
705 PolicyMappingsSyntaxSeq
*Next() const { return curr
&& curr
->next
? curr
->next
->elmt
: NULL
; }
706 PolicyMappingsSyntaxSeq
*Prev() const { return curr
&& curr
->prev
? curr
->prev
->elmt
: NULL
; }
708 // routines that move the curr elmt
709 PolicyMappingsSyntaxSeq
*GoNext() { if (curr
) curr
= curr
->next
; return Curr(); }
710 PolicyMappingsSyntaxSeq
*GoPrev() { if (curr
) curr
= curr
->prev
; return Curr(); }
712 // write & alloc fcns - returns new elmt
713 PolicyMappingsSyntaxSeq
*Append(); // add elmt to end of list
714 PolicyMappingsSyntaxSeq
*Prepend(); // add elmt to beginning of list
715 PolicyMappingsSyntaxSeq
*InsertBefore(); //insert elmt before current elmt
716 PolicyMappingsSyntaxSeq
*InsertAfter(); //insert elmt after current elmt
718 // write & alloc & copy - returns list after copying elmt
719 PolicyMappingsSyntax
&AppendCopy (PolicyMappingsSyntaxSeq
&elmt
); // add elmt to end of list
720 PolicyMappingsSyntax
&PrependCopy (PolicyMappingsSyntaxSeq
&elmt
); // add elmt to beginning of list
721 PolicyMappingsSyntax
&InsertBeforeAndCopy (PolicyMappingsSyntaxSeq
&elmt
); //insert elmt before current elmt
722 PolicyMappingsSyntax
&InsertAfterAndCopy (PolicyMappingsSyntaxSeq
&elmt
); //insert elmt after current elmt
724 // removing the current elmt from the list
725 void RemoveCurrFromList();
727 // encode and decode routines
728 AsnLen
BEnc (BUF_TYPE b
);
729 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
730 AsnLen
BEncContent (BUF_TYPE b
);
731 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
734 void Print (ostream
&os
) const;
738 class SupportedAlgorithm
: public AsnType
741 AlgorithmIdentifier
*algorithmIdentifier
;
742 KeyUsage
*intendedUsage
;
743 CertificatePoliciesSyntax
*intendedCertificatePolicies
;
745 SupportedAlgorithm();
746 SupportedAlgorithm (const SupportedAlgorithm
&);
747 virtual ~SupportedAlgorithm();
748 virtual AsnType
*Clone() const;
750 virtual AsnType
*Copy() const;
752 SupportedAlgorithm
&operator = (const SupportedAlgorithm
&);
753 AsnLen
BEncContent (BUF_TYPE b
);
754 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
756 AsnLen
BEnc (BUF_TYPE b
);
757 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
758 int BEncPdu (BUF_TYPE b
, AsnLen
&bytesEncoded
);
759 int BDecPdu (BUF_TYPE b
, AsnLen
&bytesDecoded
);
761 void Print (ostream
&os
) const;
766 typedef GeneralNames SubjectName
;
769 typedef GeneralNames IssuerAltName
;
771 /* AttributesSyntax */
772 typedef AttributesSyntax SubjectDirectoryAttributes
;
774 class BasicConstraintsSyntax
: public AsnType
778 AsnInt
*pathLenConstraint
;
780 BasicConstraintsSyntax();
781 BasicConstraintsSyntax (const BasicConstraintsSyntax
&);
782 virtual ~BasicConstraintsSyntax();
783 virtual AsnType
*Clone() const;
785 virtual AsnType
*Copy() const;
787 BasicConstraintsSyntax
&operator = (const BasicConstraintsSyntax
&);
788 AsnLen
BEncContent (BUF_TYPE b
);
789 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
791 AsnLen
BEnc (BUF_TYPE b
);
792 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
793 int BEncPdu (BUF_TYPE b
, AsnLen
&bytesEncoded
);
794 int BDecPdu (BUF_TYPE b
, AsnLen
&bytesDecoded
);
796 void Print (ostream
&os
) const;
800 class NameConstraintsSyntax
: public AsnType
803 GeneralSubtrees
*permittedSubtrees
;
804 GeneralSubtrees
*excludedSubtrees
;
806 NameConstraintsSyntax();
807 NameConstraintsSyntax (const NameConstraintsSyntax
&);
808 virtual ~NameConstraintsSyntax();
809 virtual AsnType
*Clone() const;
811 virtual AsnType
*Copy() const;
813 NameConstraintsSyntax
&operator = (const NameConstraintsSyntax
&);
814 AsnLen
BEncContent (BUF_TYPE b
);
815 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
817 AsnLen
BEnc (BUF_TYPE b
);
818 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
819 int BEncPdu (BUF_TYPE b
, AsnLen
&bytesEncoded
);
820 int BDecPdu (BUF_TYPE b
, AsnLen
&bytesDecoded
);
822 void Print (ostream
&os
) const;
826 class PolicyConstraintsSyntax
: public AsnType
829 SkipCerts
*requireExplicitPolicy
;
830 SkipCerts
*inhibitPolicyMapping
;
832 PolicyConstraintsSyntax();
833 PolicyConstraintsSyntax (const PolicyConstraintsSyntax
&);
834 virtual ~PolicyConstraintsSyntax();
835 virtual AsnType
*Clone() const;
837 virtual AsnType
*Copy() const;
839 PolicyConstraintsSyntax
&operator = (const PolicyConstraintsSyntax
&);
840 AsnLen
BEncContent (BUF_TYPE b
);
841 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
843 AsnLen
BEnc (BUF_TYPE b
);
844 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
845 int BEncPdu (BUF_TYPE b
, AsnLen
&bytesEncoded
);
846 int BDecPdu (BUF_TYPE b
, AsnLen
&bytesDecoded
);
848 void Print (ostream
&os
) const;
852 class CertPolicySet
: public AsnType
855 unsigned long int count
;
861 } *first
, *curr
, *last
;
864 CertPolicySet() { count
= 0; first
= curr
= last
= NULL
; }
865 CertPolicySet (const CertPolicySet
&);
866 virtual ~CertPolicySet();
867 virtual AsnType
*Clone() const;
869 virtual AsnType
*Copy() const;
871 CertPolicySet
&operator = (const CertPolicySet
&);
872 void SetCurrElmt (unsigned long int index
);
873 unsigned long int GetCurrElmtIndex();
874 void SetCurrToFirst() { curr
= first
; }
875 void SetCurrToLast() { curr
= last
; }
876 // reading member fcns
877 int Count() const { return count
; }
878 // NOTE: if your compiler complains about these NULLs, its definition of NULL is broken (and you better change it there!)
879 CertPolicyId
*First() const { return count
> 0 ? first
->elmt
: NULL
; }
880 CertPolicyId
*Last() const { return count
> 0 ? last
->elmt
: NULL
; }
881 CertPolicyId
*Curr() const { return curr
? curr
->elmt
: NULL
; }
882 CertPolicyId
*Next() const { return curr
&& curr
->next
? curr
->next
->elmt
: NULL
; }
883 CertPolicyId
*Prev() const { return curr
&& curr
->prev
? curr
->prev
->elmt
: NULL
; }
885 // routines that move the curr elmt
886 CertPolicyId
*GoNext() { if (curr
) curr
= curr
->next
; return Curr(); }
887 CertPolicyId
*GoPrev() { if (curr
) curr
= curr
->prev
; return Curr(); }
889 // write & alloc fcns - returns new elmt
890 CertPolicyId
*Append(); // add elmt to end of list
891 CertPolicyId
*Prepend(); // add elmt to beginning of list
892 CertPolicyId
*InsertBefore(); //insert elmt before current elmt
893 CertPolicyId
*InsertAfter(); //insert elmt after current elmt
895 // write & alloc & copy - returns list after copying elmt
896 CertPolicySet
&AppendCopy (CertPolicyId
&elmt
); // add elmt to end of list
897 CertPolicySet
&PrependCopy (CertPolicyId
&elmt
); // add elmt to beginning of list
898 CertPolicySet
&InsertBeforeAndCopy (CertPolicyId
&elmt
); //insert elmt before current elmt
899 CertPolicySet
&InsertAfterAndCopy (CertPolicyId
&elmt
); //insert elmt after current elmt
901 // removing the current elmt from the list
902 void RemoveCurrFromList();
904 // encode and decode routines
905 AsnLen
BEnc (BUF_TYPE b
);
906 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
907 AsnLen
BEncContent (BUF_TYPE b
);
908 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
911 void Print (ostream
&os
) const;
915 /* GeneralizedTime */
916 typedef GeneralizedTime InvalidityDate
;
918 class CRLDistPointsSyntax
: public AsnType
921 unsigned long int count
;
926 DistributionPoint
*elmt
;
927 } *first
, *curr
, *last
;
930 CRLDistPointsSyntax() { count
= 0; first
= curr
= last
= NULL
; }
931 CRLDistPointsSyntax (const CRLDistPointsSyntax
&);
932 virtual ~CRLDistPointsSyntax();
933 virtual AsnType
*Clone() const;
935 virtual AsnType
*Copy() const;
937 CRLDistPointsSyntax
&operator = (const CRLDistPointsSyntax
&);
938 void SetCurrElmt (unsigned long int index
);
939 unsigned long int GetCurrElmtIndex();
940 void SetCurrToFirst() { curr
= first
; }
941 void SetCurrToLast() { curr
= last
; }
942 // reading member fcns
943 int Count() const { return count
; }
944 // NOTE: if your compiler complains about these NULLs, its definition of NULL is broken (and you better change it there!)
945 DistributionPoint
*First() const { return count
> 0 ? first
->elmt
: NULL
; }
946 DistributionPoint
*Last() const { return count
> 0 ? last
->elmt
: NULL
; }
947 DistributionPoint
*Curr() const { return curr
? curr
->elmt
: NULL
; }
948 DistributionPoint
*Next() const { return curr
&& curr
->next
? curr
->next
->elmt
: NULL
; }
949 DistributionPoint
*Prev() const { return curr
&& curr
->prev
? curr
->prev
->elmt
: NULL
; }
951 // routines that move the curr elmt
952 DistributionPoint
*GoNext() { if (curr
) curr
= curr
->next
; return Curr(); }
953 DistributionPoint
*GoPrev() { if (curr
) curr
= curr
->prev
; return Curr(); }
955 // write & alloc fcns - returns new elmt
956 DistributionPoint
*Append(); // add elmt to end of list
957 DistributionPoint
*Prepend(); // add elmt to beginning of list
958 DistributionPoint
*InsertBefore(); //insert elmt before current elmt
959 DistributionPoint
*InsertAfter(); //insert elmt after current elmt
961 // write & alloc & copy - returns list after copying elmt
962 CRLDistPointsSyntax
&AppendCopy (DistributionPoint
&elmt
); // add elmt to end of list
963 CRLDistPointsSyntax
&PrependCopy (DistributionPoint
&elmt
); // add elmt to beginning of list
964 CRLDistPointsSyntax
&InsertBeforeAndCopy (DistributionPoint
&elmt
); //insert elmt before current elmt
965 CRLDistPointsSyntax
&InsertAfterAndCopy (DistributionPoint
&elmt
); //insert elmt after current elmt
967 // removing the current elmt from the list
968 void RemoveCurrFromList();
970 // encode and decode routines
971 AsnLen
BEnc (BUF_TYPE b
);
972 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
973 AsnLen
BEncContent (BUF_TYPE b
);
974 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
977 void Print (ostream
&os
) const;
981 class IssuingDistPointSyntax
: public AsnType
984 DistributionPointName
*distributionPoint
;
985 AsnBool
*onlyContainsUserCerts
;
986 AsnBool
*onlyContainsCACerts
;
987 ReasonFlags
*onlySomeReasons
;
988 AsnBool
*indirectCRL
;
990 IssuingDistPointSyntax();
991 IssuingDistPointSyntax (const IssuingDistPointSyntax
&);
992 virtual ~IssuingDistPointSyntax();
993 virtual AsnType
*Clone() const;
995 virtual AsnType
*Copy() const;
997 IssuingDistPointSyntax
&operator = (const IssuingDistPointSyntax
&);
998 AsnLen
BEncContent (BUF_TYPE b
);
999 void BDecContent (BUF_TYPE b
, AsnTag tag
, AsnLen elmtLen
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
1001 AsnLen
BEnc (BUF_TYPE b
);
1002 void BDec (BUF_TYPE b
, AsnLen
&bytesDecoded
, ENV_TYPE env
);
1003 int BEncPdu (BUF_TYPE b
, AsnLen
&bytesEncoded
);
1004 int BDecPdu (BUF_TYPE b
, AsnLen
&bytesDecoded
);
1006 void Print (ostream
&os
) const;
1011 typedef GeneralNames CertificateIssuer
;
1014 typedef CRLNumber BaseCRLNumber
;
1016 /* CertificateList */
1017 typedef CertificateList DeltaRevocationList
;
1019 //------------------------------------------------------------------------------
1020 // externs for value defs
1022 #define id_at_supportedAlgorithms_arc 2, 5, 4, 52
1023 #define id_at_supportedAlgorithms AsnOid(id_at_supportedAlgorithms_arc)
1024 #define id_at_deltaRevocationList_arc 2, 5, 4, 53
1025 #define id_at_deltaRevocationList AsnOid(id_at_deltaRevocationList_arc)
1026 #define id_ce_subjectDirectoryAttributes_arc 2, 5, 29, 9
1027 #define id_ce_subjectDirectoryAttributes AsnOid(id_ce_subjectDirectoryAttributes_arc)
1028 #define id_ce_subjectKeyIdentifier_arc 2, 5, 29, 14
1029 #define id_ce_subjectKeyIdentifier AsnOid(id_ce_subjectKeyIdentifier_arc)
1030 #define id_ce_keyUsage_arc 2, 5, 29, 15
1031 #define id_ce_keyUsage AsnOid(id_ce_keyUsage_arc)
1032 #define id_ce_privateKeyUsagePeriod_arc 2, 5, 29, 16
1033 #define id_ce_privateKeyUsagePeriod AsnOid(id_ce_privateKeyUsagePeriod_arc)
1034 #define id_ce_subjectAltName_arc 2, 5, 29, 17
1035 #define id_ce_subjectAltName AsnOid(id_ce_subjectAltName_arc)
1036 #define id_ce_issuerAltName_arc 2, 5, 29, 18
1037 #define id_ce_issuerAltName AsnOid(id_ce_issuerAltName_arc)
1038 #define id_ce_basicConstraints_arc 2, 5, 29, 19
1039 #define id_ce_basicConstraints AsnOid(id_ce_basicConstraints_arc)
1040 #define id_ce_cRLNumber_arc 2, 5, 29, 20
1041 #define id_ce_cRLNumber AsnOid(id_ce_cRLNumber_arc)
1042 #define id_ce_reasonCode_arc 2, 5, 29, 21
1043 #define id_ce_reasonCode AsnOid(id_ce_reasonCode_arc)
1044 #define id_ce_instructionCode_arc 2, 5, 29, 23
1045 #define id_ce_instructionCode AsnOid(id_ce_instructionCode_arc)
1046 #define id_ce_invalidityDate_arc 2, 5, 29, 24
1047 #define id_ce_invalidityDate AsnOid(id_ce_invalidityDate_arc)
1048 #define id_ce_deltaCRLIndicator_arc 2, 5, 29, 27
1049 #define id_ce_deltaCRLIndicator AsnOid(id_ce_deltaCRLIndicator_arc)
1050 #define id_ce_issuingDistributionPoint_arc 2, 5, 29, 28
1051 #define id_ce_issuingDistributionPoint AsnOid(id_ce_issuingDistributionPoint_arc)
1052 #define id_ce_certificateIssuer_arc 2, 5, 29, 29
1053 #define id_ce_certificateIssuer AsnOid(id_ce_certificateIssuer_arc)
1054 #define id_ce_nameConstraints_arc 2, 5, 29, 30
1055 #define id_ce_nameConstraints AsnOid(id_ce_nameConstraints_arc)
1056 #define id_ce_cRLDistributionPoints_arc 2, 5, 29, 31
1057 #define id_ce_cRLDistributionPoints AsnOid(id_ce_cRLDistributionPoints_arc)
1058 #define id_ce_certificatePolicies_arc 2, 5, 29, 32
1059 #define id_ce_certificatePolicies AsnOid(id_ce_certificatePolicies_arc)
1060 #define id_ce_policyMappings_arc 2, 5, 29, 33
1061 #define id_ce_policyMappings AsnOid(id_ce_policyMappings_arc)
1062 #define id_ce_authorityKeyIdentifier_arc 2, 5, 29, 35
1063 #define id_ce_authorityKeyIdentifier AsnOid(id_ce_authorityKeyIdentifier_arc)
1064 #define id_ce_policyConstraints_arc 2, 5, 29, 36
1065 #define id_ce_policyConstraints AsnOid(id_ce_policyConstraints_arc)
1066 #define id_ce_extKeyUsage_arc 2, 5, 29, 37
1067 #define id_ce_extKeyUsage AsnOid(id_ce_extKeyUsage_arc)
1068 #define id_mr_certificateExactMatch_arc 2, 5, 13, 34
1069 #define id_mr_certificateExactMatch AsnOid(id_mr_certificateExactMatch_arc)
1070 #define id_mr_certificateMatch_arc 2, 5, 13, 35
1071 #define id_mr_certificateMatch AsnOid(id_mr_certificateMatch_arc)
1072 #define id_mr_certificatePairExactMatch_arc 2, 5, 13, 36
1073 #define id_mr_certificatePairExactMatch AsnOid(id_mr_certificatePairExactMatch_arc)
1074 #define id_mr_certificatePairMatch_arc 2, 5, 13, 37
1075 #define id_mr_certificatePairMatch AsnOid(id_mr_certificatePairMatch_arc)
1076 #define id_mr_certificateListExactMatch_arc 2, 5, 13, 38
1077 #define id_mr_certificateListExactMatch AsnOid(id_mr_certificateListExactMatch_arc)
1078 #define id_mr_certificateListMatch_arc 2, 5, 13, 39
1079 #define id_mr_certificateListMatch AsnOid(id_mr_certificateListMatch_arc)
1080 #define id_mr_algorithmIdentifierMatch_arc 2, 5, 13, 40
1081 #define id_mr_algorithmIdentifierMatch AsnOid(id_mr_algorithmIdentifierMatch_arc)
1082 #define id_kp_arc 1, 3, 6, 1, 5, 5, 7, 3
1083 #define id_kp AsnOid(id_kp_arc)
1084 #define id_kp_serverAuth_arc 1, 3, 6, 1, 5, 5, 7, 3, 1
1085 #define id_kp_serverAuth AsnOid(id_kp_serverAuth_arc)
1086 #define id_kp_clientAuth_arc 1, 3, 6, 1, 5, 5, 7, 3, 2
1087 #define id_kp_clientAuth AsnOid(id_kp_clientAuth_arc)
1088 #define id_kp_codeSigning_arc 1, 3, 6, 1, 5, 5, 7, 3, 3
1089 #define id_kp_codeSigning AsnOid(id_kp_codeSigning_arc)
1090 #define id_kp_emailProtection_arc 1, 3, 6, 1, 5, 5, 7, 3, 4
1091 #define id_kp_emailProtection AsnOid(id_kp_emailProtection_arc)
1092 #define id_kp_timeStamping_arc 1, 3, 6, 1, 5, 5, 7, 3, 8
1093 #define id_kp_timeStamping AsnOid(id_kp_timeStamping_arc)
1094 #define id_netscape_cert_type_arc 2, 16, 840, 1, 113730, 1, 1
1095 #define id_netscape_cert_type AsnOid(id_netscape_cert_type_arc)
1096 //------------------------------------------------------------------------------
1098 #endif /* conditional include of sm_x509ce.h */