You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
135 lines
6.3 KiB
135 lines
6.3 KiB
/* |
|
* Copyright (c) 2003-2006,2008,2010-2012 Apple Inc. All Rights Reserved. |
|
* |
|
* @APPLE_LICENSE_HEADER_START@ |
|
* |
|
* This file contains Original Code and/or Modifications of Original Code |
|
* as defined in and that are subject to the Apple Public Source License |
|
* Version 2.0 (the 'License'). You may not use this file except in |
|
* compliance with the License. Please obtain a copy of the License at |
|
* http://www.opensource.apple.com/apsl/ and read it before using this |
|
* file. |
|
* |
|
* The Original Code and all software distributed under the License are |
|
* distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER |
|
* EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, |
|
* INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, |
|
* FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. |
|
* Please see the License for the specific language governing rights and |
|
* limitations under the License. |
|
* |
|
* @APPLE_LICENSE_HEADER_END@ |
|
* |
|
* SecAsn1Templates.h - Common ASN1 primitive templates for use with SecAsn1Coder. |
|
*/ |
|
|
|
#ifndef _SEC_ASN1_TEMPLATES_H_ |
|
#define _SEC_ASN1_TEMPLATES_H_ |
|
|
|
#include <Security/SecAsn1Types.h> |
|
|
|
#ifdef __cplusplus |
|
extern "C" { |
|
#endif |
|
|
|
CF_ASSUME_NONNULL_BEGIN |
|
|
|
/************************************************************************/ |
|
|
|
/* |
|
* Generic Templates |
|
* One for each of the simple types, plus a special one for ANY, plus: |
|
* - a pointer to each one of those |
|
* - a set of each one of those |
|
* - a sequence of each one of those |
|
*/ |
|
|
|
extern const SecAsn1Template kSecAsn1AnyTemplate[]; |
|
extern const SecAsn1Template kSecAsn1BitStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1BMPStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1BooleanTemplate[]; |
|
extern const SecAsn1Template kSecAsn1EnumeratedTemplate[]; |
|
extern const SecAsn1Template kSecAsn1GeneralizedTimeTemplate[]; |
|
extern const SecAsn1Template kSecAsn1IA5StringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1IntegerTemplate[]; |
|
extern const SecAsn1Template kSecAsn1UnsignedIntegerTemplate[]; |
|
extern const SecAsn1Template kSecAsn1NullTemplate[]; |
|
extern const SecAsn1Template kSecAsn1ObjectIDTemplate[]; |
|
extern const SecAsn1Template kSecAsn1OctetStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PrintableStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1T61StringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1UniversalStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1UTCTimeTemplate[]; |
|
extern const SecAsn1Template kSecAsn1UTF8StringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1VisibleStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1TeletexStringTemplate[]; |
|
|
|
extern const SecAsn1Template kSecAsn1PointerToAnyTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToBitStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToBMPStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToBooleanTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToEnumeratedTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToGeneralizedTimeTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToIA5StringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToIntegerTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToNullTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToObjectIDTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToOctetStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToPrintableStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToT61StringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToUniversalStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToUTCTimeTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToUTF8StringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToVisibleStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1PointerToTeletexStringTemplate[]; |
|
|
|
extern const SecAsn1Template kSecAsn1SequenceOfAnyTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfBitStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfBMPStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfBooleanTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfEnumeratedTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfGeneralizedTimeTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfIA5StringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfIntegerTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfNullTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfObjectIDTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfOctetStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfPrintableStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfT61StringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfUniversalStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfUTCTimeTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfUTF8StringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfVisibleStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SequenceOfTeletexStringTemplate[]; |
|
|
|
extern const SecAsn1Template kSecAsn1SetOfAnyTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfBitStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfBMPStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfBooleanTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfEnumeratedTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfGeneralizedTimeTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfIA5StringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfIntegerTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfNullTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfObjectIDTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfOctetStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfPrintableStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfT61StringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfUniversalStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfUTCTimeTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfUTF8StringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfVisibleStringTemplate[]; |
|
extern const SecAsn1Template kSecAsn1SetOfTeletexStringTemplate[]; |
|
|
|
/* |
|
* Template for skipping a subitem; only used when decoding. |
|
*/ |
|
extern const SecAsn1Template kSecAsn1SkipTemplate[]; |
|
|
|
CF_ASSUME_NONNULL_END |
|
|
|
#ifdef __cplusplus |
|
} |
|
#endif |
|
|
|
#endif /* _SEC_ASN1_TEMPLATES_H_ */
|
|
|