Types and Values
ASN1_SMALL_VALUE_SIZE
#define ASN1_SMALL_VALUE_SIZE 16
struct asn1_node_st
struct asn1_node_st {
/* public fields: */
char name[ASN1_MAX_NAME_SIZE + 1]; /* Node name */
unsigned int name_hash;
unsigned int type; /* Node type */
unsigned char *value; /* Node value */
int value_len;
asn1_node down; /* Pointer to the son node */
asn1_node right; /* Pointer to the brother node */
asn1_node left; /* Pointer to the next list element */
/* private fields: */
unsigned char small_value[ASN1_SMALL_VALUE_SIZE]; /* For small values */
/* values used during decoding/coding */
int tmp_ival;
unsigned start; /* the start of the DER sequence - if decoded */
unsigned end; /* the end of the DER sequence - if decoded */
};
CASE_HANDLED_ETYPES
#define CASE_HANDLED_ETYPES
MAX_LOG_SIZE
#define MAX_LOG_SIZE 1024 /* maximum number of characters of a log message */
CONST_UNIVERSAL
#define CONST_UNIVERSAL (1U<<8)
CONST_PRIVATE
#define CONST_PRIVATE (1U<<9)
CONST_APPLICATION
#define CONST_APPLICATION (1U<<10)
CONST_EXPLICIT
#define CONST_EXPLICIT (1U<<11)
CONST_IMPLICIT
#define CONST_IMPLICIT (1U<<12)
CONST_TAG
#define CONST_TAG (1U<<13) /* Used in ASN.1 assignement */
CONST_OPTION
#define CONST_OPTION (1U<<14)
CONST_DEFAULT
#define CONST_DEFAULT (1U<<15)
CONST_TRUE
#define CONST_TRUE (1U<<16)
CONST_FALSE
#define CONST_FALSE (1U<<17)
CONST_LIST
#define CONST_LIST (1U<<18) /* Used with TYPE_INTEGER and TYPE_BIT_STRING */
CONST_MIN_MAX
#define CONST_MIN_MAX (1U<<19)
CONST_1_PARAM
#define CONST_1_PARAM (1U<<20)
CONST_SIZE
#define CONST_SIZE (1U<<21)
CONST_DEFINED_BY
#define CONST_DEFINED_BY (1U<<22)
CONST_GENERALIZED
#define CONST_GENERALIZED (1U<<23)
CONST_UTC
#define CONST_UTC (1U<<24)
CONST_NOT_USED
#define CONST_NOT_USED (1U<<26)
CONST_SET
#define CONST_SET (1U<<27)
CONST_ASSIGN
#define CONST_ASSIGN (1U<<28)
CONST_DOWN
#define CONST_DOWN (1U<<29)
CONST_RIGHT
#define CONST_RIGHT (1U<<30)
ASN1_ETYPE_TIME
#define ASN1_ETYPE_TIME 17
type
unsigned int type = ntype & 0xff;