#include <ssl.h>
Definition at line 149 of file ssl.h.
verification mode
Definition at line 220 of file ssl.h.
Referenced by ssl_parse_certificate(), ssl_set_authmode(), and ssl_write_certificate_request().
own trusted CA chain
Definition at line 215 of file ssl.h.
Referenced by ssl_parse_certificate(), ssl_set_ca_chain(), and ssl_write_certificate_request().
allowed ciphersuites
Definition at line 232 of file ssl.h.
Referenced by ssl_parse_client_hello(), ssl_parse_server_hello(), ssl_set_ciphers(), and ssl_write_client_hello().
flag for client auth.
Definition at line 221 of file ssl.h.
Referenced by ssl_parse_certificate_request(), ssl_parse_server_hello_done(), ssl_write_certificate(), and ssl_write_certificate_verify().
unsigned long _ssl_context::ctx_dec[128] |
decryption context
Definition at line 249 of file ssl.h.
Referenced by ssl_decrypt_buf(), and ssl_derive_keys().
unsigned long _ssl_context::ctx_enc[128] |
encryption context
Definition at line 248 of file ssl.h.
Referenced by ssl_derive_keys(), and ssl_encrypt_buf().
DHM key exchange
Definition at line 227 of file ssl.h.
Referenced by ssl_free(), ssl_parse_client_key_exchange(), ssl_parse_server_key_exchange(), ssl_set_dh_param(), ssl_write_client_key_exchange(), and ssl_write_server_key_exchange().
en(de)cryption flag
Definition at line 231 of file ssl.h.
Referenced by ssl_parse_change_cipher_spec(), ssl_parse_finished(), ssl_read_record(), ssl_write_change_cipher_spec(), ssl_write_finished(), and ssl_write_record().
0: client, 1: server
Definition at line 219 of file ssl.h.
Referenced by ssl_derive_keys(), ssl_handshake(), ssl_parse_certificate(), ssl_parse_finished(), ssl_set_endpoint(), ssl_write_certificate(), and ssl_write_finished().
void(* _ssl_context::f_dbg)(void *, int, char *) |
Definition at line 166 of file ssl.h.
Referenced by debug_print_buf(), debug_print_crt(), debug_print_mpi(), debug_print_msg(), debug_print_ret(), and ssl_set_dbg().
int(* _ssl_context::f_recv)(void *, unsigned char *, int) |
Definition at line 167 of file ssl.h.
Referenced by ssl_fetch_input(), and ssl_set_bio().
int(* _ssl_context::f_rng)(void *) |
Definition at line 165 of file ssl.h.
Referenced by ssl_parse_client_key_exchange(), ssl_set_rng(), ssl_write_client_hello(), ssl_write_client_key_exchange(), ssl_write_server_hello(), and ssl_write_server_key_exchange().
int(* _ssl_context::f_send)(void *, unsigned char *, int) |
Definition at line 168 of file ssl.h.
Referenced by ssl_flush_output(), and ssl_set_bio().
Finished MD5 checksum
Definition at line 228 of file ssl.h.
Referenced by ssl_calc_verify(), ssl_init(), ssl_parse_client_hello(), ssl_parse_finished(), ssl_read_record(), ssl_write_finished(), and ssl_write_record().
Finished SHA-1 checksum
Definition at line 229 of file ssl.h.
Referenced by ssl_calc_verify(), ssl_init(), ssl_parse_client_hello(), ssl_parse_finished(), ssl_read_record(), ssl_write_finished(), and ssl_write_record().
unsigned char* _ssl_context::hostname |
Definition at line 254 of file ssl.h.
Referenced by ssl_free(), ssl_init(), ssl_set_hostname(), and ssl_write_client_hello().
unsigned long _ssl_context::hostname_len |
Definition at line 255 of file ssl.h.
Referenced by ssl_free(), ssl_init(), ssl_set_hostname(), and ssl_write_client_hello().
unsigned char* _ssl_context::in_ctr |
64-bit incoming message counter
Definition at line 187 of file ssl.h.
Referenced by ssl_decrypt_buf(), ssl_free(), and ssl_init().
unsigned char* _ssl_context::in_hdr |
5-byte record header (in_ctr+8)
Definition at line 188 of file ssl.h.
Referenced by ssl_decrypt_buf(), ssl_fetch_input(), ssl_init(), ssl_parse_client_hello(), and ssl_read_record().
current handshake message length
Definition at line 196 of file ssl.h.
Referenced by ssl_parse_certificate(), ssl_parse_certificate_verify(), ssl_parse_client_key_exchange(), ssl_parse_finished(), ssl_parse_server_hello(), ssl_parse_server_hello_done(), ssl_parse_server_key_exchange(), and ssl_read_record().
amount of data read so far
Definition at line 194 of file ssl.h.
Referenced by ssl_fetch_input(), ssl_parse_client_hello(), and ssl_read_record().
unsigned char* _ssl_context::in_msg |
the message contents (in_hdr+5)
Definition at line 189 of file ssl.h.
Referenced by ssl_decrypt_buf(), ssl_init(), ssl_parse_certificate(), ssl_parse_certificate_request(), ssl_parse_certificate_verify(), ssl_parse_change_cipher_spec(), ssl_parse_client_hello(), ssl_parse_client_key_exchange(), ssl_parse_finished(), ssl_parse_server_hello(), ssl_parse_server_hello_done(), ssl_parse_server_key_exchange(), ssl_read(), and ssl_read_record().
record header: message length
Definition at line 193 of file ssl.h.
Referenced by ssl_decrypt_buf(), ssl_get_bytes_avail(), ssl_parse_certificate(), ssl_parse_change_cipher_spec(), ssl_read(), and ssl_read_record().
record header: message type
Definition at line 192 of file ssl.h.
Referenced by ssl_decrypt_buf(), ssl_parse_certificate(), ssl_parse_certificate_request(), ssl_parse_certificate_verify(), ssl_parse_change_cipher_spec(), ssl_parse_client_key_exchange(), ssl_parse_finished(), ssl_parse_server_hello(), ssl_parse_server_hello_done(), ssl_parse_server_key_exchange(), ssl_read(), and ssl_read_record().
unsigned char* _ssl_context::in_offt |
read offset in application data
Definition at line 190 of file ssl.h.
Referenced by ssl_get_bytes_avail(), and ssl_read().
unsigned char _ssl_context::iv_dec[16] |
IV (decryption)
Definition at line 243 of file ssl.h.
Referenced by ssl_decrypt_buf(), and ssl_derive_keys().
unsigned char _ssl_context::iv_enc[16] |
IV (encryption)
Definition at line 242 of file ssl.h.
Referenced by ssl_derive_keys(), and ssl_encrypt_buf().
IV length
Definition at line 236 of file ssl.h.
Referenced by ssl_decrypt_buf(), ssl_derive_keys(), and ssl_encrypt_buf().
unsigned char _ssl_context::mac_dec[32] |
MAC (decryption)
Definition at line 246 of file ssl.h.
Referenced by ssl_decrypt_buf(), and ssl_derive_keys().
unsigned char _ssl_context::mac_enc[32] |
MAC (encryption)
Definition at line 245 of file ssl.h.
Referenced by ssl_derive_keys(), and ssl_encrypt_buf().
MAC length
Definition at line 237 of file ssl.h.
Referenced by ssl_decrypt_buf(), ssl_derive_keys(), and ssl_encrypt_buf().
equal to SSL_MAJOR_VERSION_3
Definition at line 156 of file ssl.h.
Referenced by ssl_parse_client_hello(), ssl_read_record(), ssl_write_client_hello(), ssl_write_record(), and ssl_write_server_hello().
max. major version from client
Definition at line 159 of file ssl.h.
Referenced by ssl_parse_client_hello(), ssl_parse_client_key_exchange(), ssl_write_client_hello(), and ssl_write_client_key_exchange().
max. minor version from client
Definition at line 160 of file ssl.h.
Referenced by ssl_parse_client_hello(), ssl_parse_client_key_exchange(), ssl_write_client_hello(), and ssl_write_client_key_exchange().
min. ciphertext length
Definition at line 235 of file ssl.h.
Referenced by ssl_decrypt_buf(), ssl_derive_keys(), and ssl_read_record().
either 0 (SSL3) or 1 (TLS1.0)
Definition at line 157 of file ssl.h.
Referenced by ssl_calc_finished(), ssl_calc_verify(), ssl_decrypt_buf(), ssl_derive_keys(), ssl_encrypt_buf(), ssl_parse_certificate(), ssl_parse_client_hello(), ssl_parse_client_key_exchange(), ssl_parse_finished(), ssl_parse_server_hello(), ssl_read_record(), ssl_write_certificate(), ssl_write_client_hello(), ssl_write_client_key_exchange(), ssl_write_finished(), ssl_write_record(), and ssl_write_server_hello().
# of 0-length encrypted messages
Definition at line 197 of file ssl.h.
Referenced by ssl_decrypt_buf().
unsigned char* _ssl_context::out_ctr |
64-bit outgoing message counter
Definition at line 202 of file ssl.h.
Referenced by ssl_encrypt_buf(), ssl_free(), and ssl_init().
unsigned char* _ssl_context::out_hdr |
5-byte record header (out_ctr+8)
Definition at line 203 of file ssl.h.
Referenced by ssl_flush_output(), ssl_init(), and ssl_write_record().
amount of data not yet written
Definition at line 208 of file ssl.h.
Referenced by ssl_flush_output(), ssl_write(), and ssl_write_record().
unsigned char* _ssl_context::out_msg |
the message contents (out_hdr+5)
Definition at line 204 of file ssl.h.
Referenced by ssl_close_notify(), ssl_encrypt_buf(), ssl_init(), ssl_write(), ssl_write_certificate(), ssl_write_certificate_request(), ssl_write_certificate_verify(), ssl_write_change_cipher_spec(), ssl_write_client_hello(), ssl_write_client_key_exchange(), ssl_write_finished(), ssl_write_record(), ssl_write_server_hello(), ssl_write_server_hello_done(), and ssl_write_server_key_exchange().
record header: message length
Definition at line 207 of file ssl.h.
Referenced by ssl_close_notify(), ssl_encrypt_buf(), ssl_flush_output(), ssl_write(), ssl_write_certificate(), ssl_write_certificate_request(), ssl_write_certificate_verify(), ssl_write_change_cipher_spec(), ssl_write_client_hello(), ssl_write_client_key_exchange(), ssl_write_finished(), ssl_write_record(), ssl_write_server_hello(), ssl_write_server_hello_done(), and ssl_write_server_key_exchange().
record header: message type
Definition at line 206 of file ssl.h.
Referenced by ssl_close_notify(), ssl_encrypt_buf(), ssl_write(), ssl_write_certificate(), ssl_write_certificate_request(), ssl_write_certificate_verify(), ssl_write_change_cipher_spec(), ssl_write_client_hello(), ssl_write_client_key_exchange(), ssl_write_finished(), ssl_write_record(), ssl_write_server_hello(), ssl_write_server_hello_done(), and ssl_write_server_key_exchange().
own X.509 certificate
Definition at line 214 of file ssl.h.
Referenced by ssl_set_own_cert(), and ssl_write_certificate().
void* _ssl_context::p_dbg |
context for the debug function
Definition at line 171 of file ssl.h.
Referenced by debug_print_buf(), debug_print_crt(), debug_print_mpi(), debug_print_msg(), debug_print_ret(), and ssl_set_dbg().
void* _ssl_context::p_recv |
context for reading operations
Definition at line 172 of file ssl.h.
Referenced by ssl_fetch_input(), and ssl_set_bio().
void* _ssl_context::p_rng |
context for the RNG function
Definition at line 170 of file ssl.h.
Referenced by ssl_parse_client_key_exchange(), ssl_set_rng(), ssl_write_client_hello(), ssl_write_client_key_exchange(), ssl_write_server_hello(), and ssl_write_server_key_exchange().
void* _ssl_context::p_send |
context for writing operations
Definition at line 173 of file ssl.h.
Referenced by ssl_flush_output(), and ssl_set_bio().
peer X.509 cert chain
Definition at line 216 of file ssl.h.
Referenced by main(), ssl_free(), ssl_parse_certificate(), ssl_parse_certificate_verify(), ssl_parse_server_key_exchange(), and ssl_write_client_key_exchange().
char* _ssl_context::peer_cn |
expected peer CN
Definition at line 217 of file ssl.h.
Referenced by ssl_parse_certificate(), and ssl_set_ca_chain().
premaster length
Definition at line 233 of file ssl.h.
Referenced by ssl_derive_keys(), ssl_parse_client_key_exchange(), and ssl_write_client_key_exchange().
unsigned char _ssl_context::premaster[256] |
premaster secret
Definition at line 240 of file ssl.h.
Referenced by ssl_derive_keys(), ssl_parse_client_key_exchange(), and ssl_write_client_key_exchange().
unsigned char _ssl_context::randbytes[64] |
random bytes
Definition at line 239 of file ssl.h.
Referenced by ssl_derive_keys(), ssl_parse_client_hello(), ssl_parse_server_hello(), ssl_parse_server_key_exchange(), ssl_write_client_hello(), ssl_write_server_hello(), and ssl_write_server_key_exchange().
session resuming flag
Definition at line 178 of file ssl.h.
Referenced by my_get_session(), ssl_derive_keys(), ssl_parse_finished(), ssl_parse_server_hello(), ssl_set_session(), ssl_write_client_hello(), ssl_write_finished(), and ssl_write_server_hello().
own RSA private key
Definition at line 213 of file ssl.h.
Referenced by ssl_parse_client_key_exchange(), ssl_set_own_cert(), ssl_write_certificate_verify(), and ssl_write_server_key_exchange().
(server) get callback
Definition at line 181 of file ssl.h.
Referenced by ssl_set_scb(), and ssl_write_server_hello().
(server) set callback
Definition at line 182 of file ssl.h.
Referenced by ssl_parse_client_key_exchange(), and ssl_set_scb().
current session data
Definition at line 180 of file ssl.h.
Referenced by my_get_session(), my_set_session(), ssl_calc_finished(), ssl_calc_verify(), ssl_derive_keys(), ssl_get_cipher(), ssl_parse_client_hello(), ssl_parse_client_key_exchange(), ssl_parse_server_hello(), ssl_parse_server_key_exchange(), ssl_set_session(), ssl_write_client_hello(), ssl_write_client_key_exchange(), ssl_write_server_hello(), and ssl_write_server_key_exchange().
SSL handshake: current state
Definition at line 154 of file ssl.h.
Referenced by ssl_close_notify(), ssl_handshake_client(), ssl_handshake_server(), ssl_parse_certificate(), ssl_parse_certificate_request(), ssl_parse_certificate_verify(), ssl_parse_change_cipher_spec(), ssl_parse_client_hello(), ssl_parse_client_key_exchange(), ssl_parse_finished(), ssl_parse_server_hello(), ssl_parse_server_hello_done(), ssl_parse_server_key_exchange(), ssl_read(), ssl_write(), ssl_write_certificate(), ssl_write_certificate_request(), ssl_write_certificate_verify(), ssl_write_change_cipher_spec(), ssl_write_client_hello(), ssl_write_client_key_exchange(), ssl_write_finished(), ssl_write_server_hello(), ssl_write_server_hello_done(), and ssl_write_server_key_exchange().
sess. expiration time
Definition at line 179 of file ssl.h.
Referenced by my_get_session(), my_set_session(), ssl_set_session(), and ssl_write_client_hello().
verification result
Definition at line 222 of file ssl.h.
Referenced by ssl_get_verify_result(), and ssl_parse_certificate().