File x509_csr.h

X.509 certificate signing request parsing and writing.

struct mbedtls_x509_csr
#include <x509_csr.h>

Certificate Signing Request (CSR) structure.

Some fields of this structure are publicly readable. Do not modify them except via Mbed TLS library functions: the effect of modifying those fields or the data that those fields point to is unspecified.

Public Members

mbedtls_x509_buf raw

The raw CSR data (DER).

mbedtls_x509_buf cri

The raw CertificateRequestInfo body (DER).

int version

CSR version (1=v1).

mbedtls_x509_buf subject_raw

The raw subject data (DER).

mbedtls_x509_name subject

The parsed subject data (named information object).

mbedtls_pk_context pk

Container for the public key context.

unsigned int key_usage

Optional key usage extension value: See the values in x509.h

unsigned char ns_cert_type

Optional Netscape certificate type extension value: See the values in x509.h

mbedtls_x509_sequence subject_alt_names

Optional list of raw entries of Subject Alternative Names extension. These can be later parsed by mbedtls_x509_parse_subject_alt_name.

int private_ext_types

Bit string containing detected and parsed extensions

mbedtls_x509_buf sig_oid
mbedtls_x509_buf private_sig
mbedtls_md_type_t private_sig_md

Internal representation of the MD algorithm of the signature algorithm, e.g. MBEDTLS_MD_SHA256

mbedtls_pk_type_t private_sig_pk

Internal representation of the Public Key algorithm of the signature algorithm, e.g. MBEDTLS_PK_RSA

void *private_sig_opts

Signature options to be passed to mbedtls_pk_verify_ext(), e.g. for RSASSA-PSS

struct mbedtls_x509write_csr
#include <x509_csr.h>

Container for writing a CSR

Public Members

mbedtls_pk_context *private_key
mbedtls_asn1_named_data *private_subject
mbedtls_md_type_t private_md_alg
mbedtls_asn1_named_data *private_extensions