summaryrefslogtreecommitdiff
path: root/src/lib/libssl/ssl_locl.h
diff options
context:
space:
mode:
authorjsing <>2021-04-21 19:27:56 +0000
committerjsing <>2021-04-21 19:27:56 +0000
commitc0fa404c22925c9af0bc614df8099126ce54eee8 (patch)
tree00c27f46eb336858aa2f95e55eb1b6f71cb3c869 /src/lib/libssl/ssl_locl.h
parent82f5c0f3ecd6365b1fe8cbd40e7c8bf23ee55632 (diff)
downloadopenbsd-c0fa404c22925c9af0bc614df8099126ce54eee8.tar.gz
openbsd-c0fa404c22925c9af0bc614df8099126ce54eee8.tar.bz2
openbsd-c0fa404c22925c9af0bc614df8099126ce54eee8.zip
Clean up TLSv1.2 certificate request handshake data.
Currently cert_req is used by clients and cert_request is used by servers. Replace this by a single cert_request used by either client or server. Remove the certificate types as they are currently unused. This also fixes a bug whereby if the number of certificate types exceeds SSL3_CT_NUMBER the number of bytes read in is insufficient, which will break decoding. ok inoguchi@ tb@
Diffstat (limited to 'src/lib/libssl/ssl_locl.h')
-rw-r--r--src/lib/libssl/ssl_locl.h14
1 files changed, 5 insertions, 9 deletions
diff --git a/src/lib/libssl/ssl_locl.h b/src/lib/libssl/ssl_locl.h
index 86d1b6e10b..27397308ef 100644
--- a/src/lib/libssl/ssl_locl.h
+++ b/src/lib/libssl/ssl_locl.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl_locl.h,v 1.336 2021/04/19 17:26:39 jsing Exp $ */ 1/* $OpenBSD: ssl_locl.h,v 1.337 2021/04/21 19:27:56 jsing Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -427,6 +427,10 @@ typedef struct ssl_handshake_tls12_st {
427 /* Reuse current handshake message. */ 427 /* Reuse current handshake message. */
428 int reuse_message; 428 int reuse_message;
429 429
430 /* Client certificate requests. */
431 int cert_request;
432 STACK_OF(X509_NAME) *ca_names;
433
430 /* Size of the MAC secret. */ 434 /* Size of the MAC secret. */
431 int mac_secret_size; 435 int mac_secret_size;
432 436
@@ -946,14 +950,6 @@ typedef struct ssl3_state_internal_st {
946 int ecdh_nid; 950 int ecdh_nid;
947 951
948 uint8_t *x25519; 952 uint8_t *x25519;
949
950 /* used for certificate requests */
951 int cert_req;
952 int ctype_num;
953 char ctype[SSL3_CT_NUMBER];
954 STACK_OF(X509_NAME) *ca_names;
955
956 int cert_request;
957 } tmp; 953 } tmp;
958 954
959 /* Connection binding to prevent renegotiation attacks */ 955 /* Connection binding to prevent renegotiation attacks */