]> git.saurik.com Git - apple/security.git/blame - OSX/include/security_asn1/SecAsn1Templates.h
Security-57336.1.9.tar.gz
[apple/security.git] / OSX / include / security_asn1 / SecAsn1Templates.h
CommitLineData
b1ab9ed8 1/*
d8f41ccd 2 * Copyright (c) 2003-2006,2008,2010-2012 Apple Inc. All Rights Reserved.
b1ab9ed8
A
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 *
23 * SecAsn1Templates.h - Common ASN1 primitive templates for use with SecAsn1Coder.
24 */
25
26#ifndef _SEC_ASN1_TEMPLATES_H_
27#define _SEC_ASN1_TEMPLATES_H_
28
29#include <Security/SecAsn1Types.h>
30
31#ifdef __cplusplus
32extern "C" {
33#endif
34
5c19dc3a
A
35CF_ASSUME_NONNULL_BEGIN
36
b1ab9ed8
A
37/************************************************************************/
38
39/*
40 * Generic Templates
41 * One for each of the simple types, plus a special one for ANY, plus:
42 * - a pointer to each one of those
43 * - a set of each one of those
44 * - a sequence of each one of those
45 */
46
47extern const SecAsn1Template kSecAsn1AnyTemplate[];
48extern const SecAsn1Template kSecAsn1BitStringTemplate[];
49extern const SecAsn1Template kSecAsn1BMPStringTemplate[];
50extern const SecAsn1Template kSecAsn1BooleanTemplate[];
51extern const SecAsn1Template kSecAsn1EnumeratedTemplate[];
52extern const SecAsn1Template kSecAsn1GeneralizedTimeTemplate[];
53extern const SecAsn1Template kSecAsn1IA5StringTemplate[];
54extern const SecAsn1Template kSecAsn1IntegerTemplate[];
55extern const SecAsn1Template kSecAsn1UnsignedIntegerTemplate[];
56extern const SecAsn1Template kSecAsn1NullTemplate[];
57extern const SecAsn1Template kSecAsn1ObjectIDTemplate[];
58extern const SecAsn1Template kSecAsn1OctetStringTemplate[];
59extern const SecAsn1Template kSecAsn1PrintableStringTemplate[];
60extern const SecAsn1Template kSecAsn1T61StringTemplate[];
61extern const SecAsn1Template kSecAsn1UniversalStringTemplate[];
62extern const SecAsn1Template kSecAsn1UTCTimeTemplate[];
63extern const SecAsn1Template kSecAsn1UTF8StringTemplate[];
64extern const SecAsn1Template kSecAsn1VisibleStringTemplate[];
65extern const SecAsn1Template kSecAsn1TeletexStringTemplate[];
66
67extern const SecAsn1Template kSecAsn1PointerToAnyTemplate[];
68extern const SecAsn1Template kSecAsn1PointerToBitStringTemplate[];
69extern const SecAsn1Template kSecAsn1PointerToBMPStringTemplate[];
70extern const SecAsn1Template kSecAsn1PointerToBooleanTemplate[];
71extern const SecAsn1Template kSecAsn1PointerToEnumeratedTemplate[];
72extern const SecAsn1Template kSecAsn1PointerToGeneralizedTimeTemplate[];
73extern const SecAsn1Template kSecAsn1PointerToIA5StringTemplate[];
74extern const SecAsn1Template kSecAsn1PointerToIntegerTemplate[];
75extern const SecAsn1Template kSecAsn1PointerToNullTemplate[];
76extern const SecAsn1Template kSecAsn1PointerToObjectIDTemplate[];
77extern const SecAsn1Template kSecAsn1PointerToOctetStringTemplate[];
78extern const SecAsn1Template kSecAsn1PointerToPrintableStringTemplate[];
79extern const SecAsn1Template kSecAsn1PointerToT61StringTemplate[];
80extern const SecAsn1Template kSecAsn1PointerToUniversalStringTemplate[];
81extern const SecAsn1Template kSecAsn1PointerToUTCTimeTemplate[];
82extern const SecAsn1Template kSecAsn1PointerToUTF8StringTemplate[];
83extern const SecAsn1Template kSecAsn1PointerToVisibleStringTemplate[];
84extern const SecAsn1Template kSecAsn1PointerToTeletexStringTemplate[];
85
86extern const SecAsn1Template kSecAsn1SequenceOfAnyTemplate[];
87extern const SecAsn1Template kSecAsn1SequenceOfBitStringTemplate[];
88extern const SecAsn1Template kSecAsn1SequenceOfBMPStringTemplate[];
89extern const SecAsn1Template kSecAsn1SequenceOfBooleanTemplate[];
90extern const SecAsn1Template kSecAsn1SequenceOfEnumeratedTemplate[];
91extern const SecAsn1Template kSecAsn1SequenceOfGeneralizedTimeTemplate[];
92extern const SecAsn1Template kSecAsn1SequenceOfIA5StringTemplate[];
93extern const SecAsn1Template kSecAsn1SequenceOfIntegerTemplate[];
94extern const SecAsn1Template kSecAsn1SequenceOfNullTemplate[];
95extern const SecAsn1Template kSecAsn1SequenceOfObjectIDTemplate[];
96extern const SecAsn1Template kSecAsn1SequenceOfOctetStringTemplate[];
97extern const SecAsn1Template kSecAsn1SequenceOfPrintableStringTemplate[];
98extern const SecAsn1Template kSecAsn1SequenceOfT61StringTemplate[];
99extern const SecAsn1Template kSecAsn1SequenceOfUniversalStringTemplate[];
100extern const SecAsn1Template kSecAsn1SequenceOfUTCTimeTemplate[];
101extern const SecAsn1Template kSecAsn1SequenceOfUTF8StringTemplate[];
102extern const SecAsn1Template kSecAsn1SequenceOfVisibleStringTemplate[];
103extern const SecAsn1Template kSecAsn1SequenceOfTeletexStringTemplate[];
104
105extern const SecAsn1Template kSecAsn1SetOfAnyTemplate[];
106extern const SecAsn1Template kSecAsn1SetOfBitStringTemplate[];
107extern const SecAsn1Template kSecAsn1SetOfBMPStringTemplate[];
108extern const SecAsn1Template kSecAsn1SetOfBooleanTemplate[];
109extern const SecAsn1Template kSecAsn1SetOfEnumeratedTemplate[];
110extern const SecAsn1Template kSecAsn1SetOfGeneralizedTimeTemplate[];
111extern const SecAsn1Template kSecAsn1SetOfIA5StringTemplate[];
112extern const SecAsn1Template kSecAsn1SetOfIntegerTemplate[];
113extern const SecAsn1Template kSecAsn1SetOfNullTemplate[];
114extern const SecAsn1Template kSecAsn1SetOfObjectIDTemplate[];
115extern const SecAsn1Template kSecAsn1SetOfOctetStringTemplate[];
116extern const SecAsn1Template kSecAsn1SetOfPrintableStringTemplate[];
117extern const SecAsn1Template kSecAsn1SetOfT61StringTemplate[];
118extern const SecAsn1Template kSecAsn1SetOfUniversalStringTemplate[];
119extern const SecAsn1Template kSecAsn1SetOfUTCTimeTemplate[];
120extern const SecAsn1Template kSecAsn1SetOfUTF8StringTemplate[];
121extern const SecAsn1Template kSecAsn1SetOfVisibleStringTemplate[];
122extern const SecAsn1Template kSecAsn1SetOfTeletexStringTemplate[];
123
124/*
125 * Template for skipping a subitem; only used when decoding.
126 */
127extern const SecAsn1Template kSecAsn1SkipTemplate[];
128
5c19dc3a
A
129CF_ASSUME_NONNULL_END
130
b1ab9ed8
A
131#ifdef __cplusplus
132}
133#endif
134
135#endif /* _SEC_ASN1_TEMPLATES_H_ */