Go to the documentation of this file.
29 #ifndef SSL_MBEDTLS_H_
30 #define SSL_MBEDTLS_H_
34 #include <mbedtls/ssl.h>
35 #include <mbedtls/x509_crt.h>
36 #include <mbedtls/version.h>
38 #if defined(ENABLE_PKCS11)
39 #include <pkcs11-helper-1.0/pkcs11h-certificate.h>
77 void *sign_ctx,
const void *src,
size_t src_size,
78 void *dst,
size_t dst_size);
87 #ifdef HAVE_EXPORT_KEYING_MATERIAL
92 unsigned char client_server_random[64];
93 mbedtls_tls_prf_types tls_prf_type;
94 unsigned char master_secret[48];
119 pkcs11h_certificate_t pkcs11_cert;
struct external_context external_key
External key context.
Context used by external_pkcs1_sign()
mbedtls_x509_crt_profile cert_profile
Allowed certificate types.
mbedtls_x509_crt * ca_chain
CA chain for remote verification.
time_t crl_last_mtime
CRL last modification time.
buffer_entry * next_block
mbedtls_compat_group_id * groups
List of allowed groups for this connection.
mbedtls_dhm_context * dhm_ctx
Diffie-Helmann-Merkle context.
mbedtls_ssl_config * ssl_config
mbedTLS global ssl config
bool(* external_sign_func)(void *sign_ctx, const void *src, size_t src_size, void *dst, size_t dst_size)
External signing function prototype.
off_t crl_last_size
size of last loaded CRL
mbedtls_pk_context * priv_key
Local private key.
buffer_entry * first_block
mbedtls_x509_crt * crt_chain
Local Certificate chain.
static void tls_clear_error(void)
bool initialised
True if the context has been initialised.
int endpoint
Whether or not this is a server or a client.
buffer_entry * last_block
mbedtls_x509_crl * crl
Certificate Revocation List.
Structure that wraps the TLS context.
int * allowed_ciphers
List of allowed ciphers for this connection.
mbedtls_ssl_context * ctx
mbedTLS connection context
int tls_ctx_use_external_signing_func(struct tls_root_ctx *ctx, external_sign_func sign_func, void *sign_ctx)
Call the supplied signing function to create a TLS signature during the TLS handshake.
mbedtls_ecp_group_id mbedtls_compat_group_id