Types and Values
ASN1_API
# define ASN1_API __attribute__((__visibility__("default")))
ASN1_VERSION
# define ASN1_VERSION "4.18.0"
Version of the library as a string.
ASN1_VERSION_MAJOR
# define ASN1_VERSION_MAJOR 4
Major version number of the library.
ASN1_VERSION_MINOR
# define ASN1_VERSION_MINOR 18
Minor version number of the library.
ASN1_VERSION_PATCH
# define ASN1_VERSION_PATCH 0
Patch version number of the library.
ASN1_VERSION_NUMBER
# define ASN1_VERSION_NUMBER 0x041200
Version number of the library as a number.
ASN1_SUCCESS
# define ASN1_SUCCESS 0
ASN1_FILE_NOT_FOUND
# define ASN1_FILE_NOT_FOUND 1
ASN1_ELEMENT_NOT_FOUND
# define ASN1_ELEMENT_NOT_FOUND 2
ASN1_IDENTIFIER_NOT_FOUND
# define ASN1_IDENTIFIER_NOT_FOUND 3
ASN1_DER_ERROR
# define ASN1_DER_ERROR 4
ASN1_VALUE_NOT_FOUND
# define ASN1_VALUE_NOT_FOUND 5
ASN1_GENERIC_ERROR
# define ASN1_GENERIC_ERROR 6
ASN1_VALUE_NOT_VALID
# define ASN1_VALUE_NOT_VALID 7
ASN1_TAG_ERROR
# define ASN1_TAG_ERROR 8
ASN1_TAG_IMPLICIT
# define ASN1_TAG_IMPLICIT 9
ASN1_ERROR_TYPE_ANY
# define ASN1_ERROR_TYPE_ANY 10
ASN1_SYNTAX_ERROR
# define ASN1_SYNTAX_ERROR 11
ASN1_MEM_ERROR
# define ASN1_MEM_ERROR 12
ASN1_MEM_ALLOC_ERROR
# define ASN1_MEM_ALLOC_ERROR 13
ASN1_DER_OVERFLOW
# define ASN1_DER_OVERFLOW 14
ASN1_NAME_TOO_LONG
# define ASN1_NAME_TOO_LONG 15
ASN1_ARRAY_ERROR
# define ASN1_ARRAY_ERROR 16
ASN1_ELEMENT_NOT_EMPTY
# define ASN1_ELEMENT_NOT_EMPTY 17
ASN1_TIME_ENCODING_ERROR
# define ASN1_TIME_ENCODING_ERROR 18
ASN1_RECURSION
# define ASN1_RECURSION 19
ASN1_PRINT_NAME
# define ASN1_PRINT_NAME 1
ASN1_PRINT_NAME_TYPE
# define ASN1_PRINT_NAME_TYPE 2
ASN1_PRINT_NAME_TYPE_VALUE
# define ASN1_PRINT_NAME_TYPE_VALUE 3
ASN1_PRINT_ALL
# define ASN1_PRINT_ALL 4
ASN1_CLASS_UNIVERSAL
# define ASN1_CLASS_UNIVERSAL 0x00 /* old: 1 */
ASN1_CLASS_APPLICATION
# define ASN1_CLASS_APPLICATION 0x40 /* old: 2 */
ASN1_CLASS_CONTEXT_SPECIFIC
# define ASN1_CLASS_CONTEXT_SPECIFIC 0x80 /* old: 3 */
ASN1_CLASS_PRIVATE
# define ASN1_CLASS_PRIVATE 0xC0 /* old: 4 */
ASN1_CLASS_STRUCTURED
# define ASN1_CLASS_STRUCTURED 0x20
ASN1_TAG_BOOLEAN
# define ASN1_TAG_BOOLEAN 0x01
ASN1_TAG_INTEGER
# define ASN1_TAG_INTEGER 0x02
ASN1_TAG_SEQUENCE
# define ASN1_TAG_SEQUENCE 0x10
ASN1_TAG_SET
# define ASN1_TAG_SET 0x11
ASN1_TAG_OCTET_STRING
# define ASN1_TAG_OCTET_STRING 0x04
ASN1_TAG_BIT_STRING
# define ASN1_TAG_BIT_STRING 0x03
ASN1_TAG_UTCTime
# define ASN1_TAG_UTCTime 0x17
ASN1_TAG_GENERALIZEDTime
# define ASN1_TAG_GENERALIZEDTime 0x18
ASN1_TAG_OBJECT_ID
# define ASN1_TAG_OBJECT_ID 0x06
ASN1_TAG_ENUMERATED
# define ASN1_TAG_ENUMERATED 0x0A
ASN1_TAG_NULL
# define ASN1_TAG_NULL 0x05
ASN1_TAG_GENERALSTRING
# define ASN1_TAG_GENERALSTRING 0x1B
ASN1_TAG_NUMERIC_STRING
# define ASN1_TAG_NUMERIC_STRING 0x12
ASN1_TAG_IA5_STRING
# define ASN1_TAG_IA5_STRING 0x16
ASN1_TAG_TELETEX_STRING
# define ASN1_TAG_TELETEX_STRING 0x14
ASN1_TAG_PRINTABLE_STRING
# define ASN1_TAG_PRINTABLE_STRING 0x13
ASN1_TAG_UNIVERSAL_STRING
# define ASN1_TAG_UNIVERSAL_STRING 0x1C
ASN1_TAG_BMP_STRING
# define ASN1_TAG_BMP_STRING 0x1E
ASN1_TAG_UTF8_STRING
# define ASN1_TAG_UTF8_STRING 0x0C
ASN1_TAG_VISIBLE_STRING
# define ASN1_TAG_VISIBLE_STRING 0x1A
asn1_node_st
typedef struct asn1_node_st asn1_node_st;
asn1_node
typedef asn1_node_st *asn1_node;
Structure definition used for the node of the tree
that represents an ASN.1 DEFINITION.
asn1_node_const
typedef const asn1_node_st *asn1_node_const;
ASN1_MAX_NAME_SIZE
# define ASN1_MAX_NAME_SIZE 64
Maximum number of characters of a name
inside a file with ASN1 definitions.
ASN1_ETYPE_INVALID
# define ASN1_ETYPE_INVALID 0
ASN1_ETYPE_CONSTANT
# define ASN1_ETYPE_CONSTANT 1
ASN1_ETYPE_IDENTIFIER
# define ASN1_ETYPE_IDENTIFIER 2
ASN1_ETYPE_INTEGER
# define ASN1_ETYPE_INTEGER 3
ASN1_ETYPE_BOOLEAN
# define ASN1_ETYPE_BOOLEAN 4
ASN1_ETYPE_SEQUENCE
# define ASN1_ETYPE_SEQUENCE 5
ASN1_ETYPE_BIT_STRING
# define ASN1_ETYPE_BIT_STRING 6
ASN1_ETYPE_OCTET_STRING
# define ASN1_ETYPE_OCTET_STRING 7
ASN1_ETYPE_TAG
# define ASN1_ETYPE_TAG 8
ASN1_ETYPE_DEFAULT
# define ASN1_ETYPE_DEFAULT 9
ASN1_ETYPE_SIZE
# define ASN1_ETYPE_SIZE 10
ASN1_ETYPE_SEQUENCE_OF
# define ASN1_ETYPE_SEQUENCE_OF 11
ASN1_ETYPE_OBJECT_ID
# define ASN1_ETYPE_OBJECT_ID 12
ASN1_ETYPE_ANY
# define ASN1_ETYPE_ANY 13
ASN1_ETYPE_SET
# define ASN1_ETYPE_SET 14
ASN1_ETYPE_SET_OF
# define ASN1_ETYPE_SET_OF 15
ASN1_ETYPE_DEFINITIONS
# define ASN1_ETYPE_DEFINITIONS 16
ASN1_ETYPE_CHOICE
# define ASN1_ETYPE_CHOICE 18
ASN1_ETYPE_IMPORTS
# define ASN1_ETYPE_IMPORTS 19
ASN1_ETYPE_NULL
# define ASN1_ETYPE_NULL 20
ASN1_ETYPE_ENUMERATED
# define ASN1_ETYPE_ENUMERATED 21
ASN1_ETYPE_GENERALSTRING
# define ASN1_ETYPE_GENERALSTRING 27
ASN1_ETYPE_NUMERIC_STRING
# define ASN1_ETYPE_NUMERIC_STRING 28
ASN1_ETYPE_IA5_STRING
# define ASN1_ETYPE_IA5_STRING 29
ASN1_ETYPE_TELETEX_STRING
# define ASN1_ETYPE_TELETEX_STRING 30
ASN1_ETYPE_PRINTABLE_STRING
# define ASN1_ETYPE_PRINTABLE_STRING 31
ASN1_ETYPE_UNIVERSAL_STRING
# define ASN1_ETYPE_UNIVERSAL_STRING 32
ASN1_ETYPE_BMP_STRING
# define ASN1_ETYPE_BMP_STRING 33
ASN1_ETYPE_UTF8_STRING
# define ASN1_ETYPE_UTF8_STRING 34
ASN1_ETYPE_VISIBLE_STRING
# define ASN1_ETYPE_VISIBLE_STRING 35
ASN1_ETYPE_UTC_TIME
# define ASN1_ETYPE_UTC_TIME 36
ASN1_ETYPE_GENERALIZED_TIME
# define ASN1_ETYPE_GENERALIZED_TIME 37
ASN1_DELETE_FLAG_ZEROIZE
# define ASN1_DELETE_FLAG_ZEROIZE 1
Used by: asn1_delete_structure2()
Zeroize values prior to deinitialization.
ASN1_DECODE_FLAG_ALLOW_PADDING
# define ASN1_DECODE_FLAG_ALLOW_PADDING 1
Used by: asn1_der_decoding2()
This flag would allow arbitrary data past the DER data.
ASN1_DECODE_FLAG_STRICT_DER
# define ASN1_DECODE_FLAG_STRICT_DER (1<<1)
Used by: asn1_der_decoding2()
This flag would ensure that no BER decoding takes place.
ASN1_DECODE_FLAG_ALLOW_INCORRECT_TIME
# define ASN1_DECODE_FLAG_ALLOW_INCORRECT_TIME (1<<2)
Used by: asn1_der_decoding2()
This flag will tolerate Time encoding errors when in strict DER.