X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=ssl%2Fssl_locl.h;h=f53293109b4613a0da8e273249a859f096e093d1;hp=98f77ceac9847f6679997201aef679b61f5e69db;hb=fa7c263747cb73f03b321399a1452cc40516d9a4;hpb=f7f2a01d6364f10f353652e29555e6c66aec9b6d diff --git a/ssl/ssl_locl.h b/ssl/ssl_locl.h index 98f77ceac9..f53293109b 100644 --- a/ssl/ssl_locl.h +++ b/ssl/ssl_locl.h @@ -542,7 +542,7 @@ struct ssl_session_st { /* This is the cert and type for the other end. */ X509 *peer; int peer_type; - /* Certificate chain peer sent */ + /* Certificate chain peer sent. */ STACK_OF(X509) *peer_chain; /* * when app_verify_callback accepts a session where the peer's @@ -790,8 +790,12 @@ struct ssl_ctx_st { /* used if SSL's info_callback is NULL */ void (*info_callback) (const SSL *ssl, int type, int val); - /* what we put in client cert requests */ - STACK_OF(X509_NAME) *client_CA; + /* + * What we put in certificate_authorities extension for TLS 1.3 + * (ClientHello and CertificateRequest) or just client cert requests for + * earlier versions. + */ + STACK_OF(X509_NAME) *ca_names; /* * Default values to use in SSL structures follow (these are copied by @@ -1115,7 +1119,7 @@ struct ssl_st { /* extra application data */ CRYPTO_EX_DATA ex_data; /* for server side, keep the list of CA_dn we can use */ - STACK_OF(X509_NAME) *client_CA; + STACK_OF(X509_NAME) *ca_names; CRYPTO_REF_COUNT references; /* protocol behaviour */ uint32_t options; @@ -1371,7 +1375,8 @@ typedef struct ssl3_state_st { /* Certificate types in certificate request message. */ uint8_t *ctype; size_t ctype_len; - STACK_OF(X509_NAME) *ca_names; + /* Certificate authorities list peer sent */ + STACK_OF(X509_NAME) *peer_ca_names; size_t key_block_length; unsigned char *key_block; const EVP_CIPHER *new_sym_enc; @@ -1865,6 +1870,9 @@ typedef enum tlsext_index_en { /* A dummy signature value not valid for TLSv1.2 signature algs */ #define TLSEXT_signature_rsa_pss 0x0101 +/* TLSv1.3 downgrade protection sentinel values */ +extern const unsigned char tls11downgrade[8]; +extern const unsigned char tls12downgrade[8]; extern SSL3_ENC_METHOD ssl3_undef_enc_method; @@ -2175,7 +2183,8 @@ __owur int ssl_check_version_downgrade(SSL *s); __owur int ssl_set_version_bound(int method_version, int version, int *bound); __owur int ssl_choose_server_version(SSL *s, CLIENTHELLO_MSG *hello, DOWNGRADE *dgrd); -__owur int ssl_choose_client_version(SSL *s, int version); +__owur int ssl_choose_client_version(SSL *s, int version, int checkdgrd, + int *al); int ssl_get_client_min_max_version(const SSL *s, int *min_version, int *max_version);