Microchip® Advanced Software Framework

_ssl_context Struct Reference

#include <ssl.h>

Data Fields

int authmode
int * ciphers
int client_auth
unsigned long ctx_dec [128]
unsigned long ctx_enc [128]
dhm_context dhm_ctx
int do_crypt
int endpoint
void(* f_dbg )(void *, int, const char *)
int(* f_recv )(void *, unsigned char *, int)
int(* f_rng )(void *)
int(* f_send )(void *, unsigned char *, int)
md5_context fin_md5
sha1_context fin_sha1
unsigned char * hostname
unsigned long hostname_len
unsigned char * in_ctr
unsigned char * in_hdr
int in_hslen
int in_left
unsigned char * in_msg
int in_msglen
int in_msgtype
unsigned char * in_offt
unsigned char iv_dec [16]
unsigned char iv_enc [16]
int ivlen
int keylen
unsigned char mac_dec [32]
unsigned char mac_enc [32]
int maclen
int major_ver
int max_major_ver
int max_minor_ver
int minlen
int minor_ver
int nb_zero
unsigned char * out_ctr
unsigned char * out_hdr
int out_left
unsigned char * out_msg
int out_msglen
int out_msgtype
void * p_dbg
void * p_recv
void * p_rng
void * p_send
const char * peer_cn
int pmslen
unsigned char premaster [256]
unsigned char randbytes [64]
int resume
int(* s_get )(ssl_context *)
int(* s_set )(ssl_context *)
int state
int timeout
int verify_result

int _ssl_context::authmode

verification mode

x509_cert* _ssl_context::ca_chain

own trusted CA chain

x509_crl* _ssl_context::ca_crl

trusted CA CRLs

int* _ssl_context::ciphers

allowed ciphersuites

int _ssl_context::client_auth

flag for client auth.

unsigned long _ssl_context::ctx_dec[128]

decryption context

unsigned long _ssl_context::ctx_enc[128]

encryption context

dhm_context _ssl_context::dhm_ctx

DHM key exchange

int _ssl_context::do_crypt

en(de)cryption flag

int _ssl_context::endpoint

0: client, 1: server

void(* _ssl_context::f_dbg)(void *, int, const char *)
int(* _ssl_context::f_recv)(void *, unsigned char *, int)
int(* _ssl_context::f_rng)(void *)
int(* _ssl_context::f_send)(void *, unsigned char *, int)
md5_context _ssl_context::fin_md5

Finished MD5 checksum

sha1_context _ssl_context::fin_sha1

Finished SHA-1 checksum

unsigned char* _ssl_context::hostname
unsigned long _ssl_context::hostname_len
unsigned char* _ssl_context::in_ctr

64-bit incoming message counter

unsigned char* _ssl_context::in_hdr

5-byte record header (in_ctr+8)

int _ssl_context::in_hslen

current handshake message length

int _ssl_context::in_left

amount of data read so far

unsigned char* _ssl_context::in_msg

the message contents (in_hdr+5)

int _ssl_context::in_msglen

record header: message length

int _ssl_context::in_msgtype

record header: message type

unsigned char* _ssl_context::in_offt

read offset in application data

unsigned char _ssl_context::iv_dec[16]

IV (decryption)

unsigned char _ssl_context::iv_enc[16]

IV (encryption)

int _ssl_context::ivlen

IV length

int _ssl_context::keylen

symmetric key length

unsigned char _ssl_context::mac_dec[32]

MAC (decryption)

unsigned char _ssl_context::mac_enc[32]

MAC (encryption)

int _ssl_context::maclen

MAC length

int _ssl_context::major_ver


int _ssl_context::max_major_ver

max. major version from client

int _ssl_context::max_minor_ver

max. minor version from client

int _ssl_context::minlen

min. ciphertext length

int _ssl_context::minor_ver

either 0 (SSL3) or 1 (TLS1.0)

int _ssl_context::nb_zero

of 0-length encrypted messages

unsigned char* _ssl_context::out_ctr

64-bit outgoing message counter

unsigned char* _ssl_context::out_hdr

5-byte record header (out_ctr+8)

int _ssl_context::out_left

amount of data not yet written

unsigned char* _ssl_context::out_msg

the message contents (out_hdr+5)

int _ssl_context::out_msglen

record header: message length

int _ssl_context::out_msgtype

record header: message type

x509_cert* _ssl_context::own_cert

own X.509 certificate

void* _ssl_context::p_dbg

context for the debug function

void* _ssl_context::p_recv

context for reading operations

void* _ssl_context::p_rng

context for the RNG function

void* _ssl_context::p_send

context for writing operations

x509_cert* _ssl_context::peer_cert

peer X.509 cert chain

const char* _ssl_context::peer_cn

expected peer CN

int _ssl_context::pmslen

premaster length

unsigned char _ssl_context::premaster[256]

premaster secret

unsigned char _ssl_context::randbytes[64]

random bytes

int _ssl_context::resume

session resuming flag

rsa_context* _ssl_context::rsa_key

own RSA private key

int(* _ssl_context::s_get)(ssl_context *)

(server) get callback

int(* _ssl_context::s_set)(ssl_context *)

(server) set callback

ssl_session* _ssl_context::session

current session data

int _ssl_context::state

SSL handshake: current state

int _ssl_context::timeout

sess. expiration time

int _ssl_context::verify_result

verification result