mbed TLS  Version 2.6.0
SSL/TLS Library for the Embedded Space
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Asn1_module

ASN1 Error codes

These error codes are OR'ed to X509 error codes for higher error granularity.

ASN1 is a standard to specify data structures.

#define MBEDTLS_ERR_ASN1_OUT_OF_DATA   -0x0060
 Out of data when parsing an ASN1 data structure. More...
 
#define MBEDTLS_ERR_ASN1_UNEXPECTED_TAG   -0x0062
 ASN1 tag was of an unexpected value. More...
 
#define MBEDTLS_ERR_ASN1_INVALID_LENGTH   -0x0064
 Error when trying to determine the length or invalid length. More...
 
#define MBEDTLS_ERR_ASN1_LENGTH_MISMATCH   -0x0066
 Actual length differs from expected length. More...
 
#define MBEDTLS_ERR_ASN1_INVALID_DATA   -0x0068
 Data is invalid. More...
 
#define MBEDTLS_ERR_ASN1_ALLOC_FAILED   -0x006A
 Memory allocation failed.
 
#define MBEDTLS_ERR_ASN1_BUF_TOO_SMALL   -0x006C
 Buffer too small when writing ASN.1 data structure. More...
 

DER constants

These constants comply with DER encoded the ANS1 type tags.

DER encoding uses hexadecimal representation. An example DER sequence is:

  • 0x02 – tag indicating INTEGER
  • 0x01 – length in octets
  • 0x05 – value Such sequences are typically read into mbedtls_x509_buf.
#define MBEDTLS_ASN1_BOOLEAN   0x01
 
#define MBEDTLS_ASN1_INTEGER   0x02
 
#define MBEDTLS_ASN1_BIT_STRING   0x03
 
#define MBEDTLS_ASN1_OCTET_STRING   0x04
 
#define MBEDTLS_ASN1_NULL   0x05
 
#define MBEDTLS_ASN1_OID   0x06
 
#define MBEDTLS_ASN1_UTF8_STRING   0x0C
 
#define MBEDTLS_ASN1_SEQUENCE   0x10
 
#define MBEDTLS_ASN1_SET   0x11
 
#define MBEDTLS_ASN1_PRINTABLE_STRING   0x13
 
#define MBEDTLS_ASN1_T61_STRING   0x14
 
#define MBEDTLS_ASN1_IA5_STRING   0x16
 
#define MBEDTLS_ASN1_UTC_TIME   0x17
 
#define MBEDTLS_ASN1_GENERALIZED_TIME   0x18
 
#define MBEDTLS_ASN1_UNIVERSAL_STRING   0x1C
 
#define MBEDTLS_ASN1_BMP_STRING   0x1E
 
#define MBEDTLS_ASN1_PRIMITIVE   0x00
 
#define MBEDTLS_ASN1_CONSTRUCTED   0x20
 
#define MBEDTLS_ASN1_CONTEXT_SPECIFIC   0x80
 

Description

Macro Definition Documentation

#define MBEDTLS_ERR_ASN1_BUF_TOO_SMALL   -0x006C

Buffer too small when writing ASN.1 data structure.

#define MBEDTLS_ERR_ASN1_INVALID_DATA   -0x0068

Data is invalid.

(not used)

#define MBEDTLS_ERR_ASN1_INVALID_LENGTH   -0x0064

Error when trying to determine the length or invalid length.

#define MBEDTLS_ERR_ASN1_LENGTH_MISMATCH   -0x0066

Actual length differs from expected length.

#define MBEDTLS_ERR_ASN1_OUT_OF_DATA   -0x0060

Out of data when parsing an ASN1 data structure.

#define MBEDTLS_ERR_ASN1_UNEXPECTED_TAG   -0x0062

ASN1 tag was of an unexpected value.