From d420729b9e709b7a6fc227a073f526d86d8767e6 Mon Sep 17 00:00:00 2001 From: FdaSilvaYY Date: Thu, 8 Mar 2018 10:32:34 -0500 Subject: [PATCH] Duplicate entries ssl_handshake_tbl trace entries... ... and add some missing known values. Sort ssl/tls extension array list Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/5304) --- apps/s_cb.c | 4 ++-- include/openssl/ssl3.h | 2 ++ ssl/t1_trce.c | 30 +++++++++++++++++------------- 3 files changed, 21 insertions(+), 15 deletions(-) diff --git a/apps/s_cb.c b/apps/s_cb.c index ae15f554f4..412442db23 100644 --- a/apps/s_cb.c +++ b/apps/s_cb.c @@ -536,9 +536,9 @@ static STRINT_PAIR handshakes[] = { {", CertificateVerify", SSL3_MT_CERTIFICATE_VERIFY}, {", ClientKeyExchange", SSL3_MT_CLIENT_KEY_EXCHANGE}, {", Finished", SSL3_MT_FINISHED}, - {", CertificateUrl", 21}, + {", CertificateUrl", SSL3_MT_CERTIFICATE_URL}, {", CertificateStatus", SSL3_MT_CERTIFICATE_STATUS}, - {", SupplementalData", 23}, + {", SupplementalData", SSL3_MT_SUPPLEMENTAL_DATA}, {", KeyUpdate", SSL3_MT_KEY_UPDATE}, #ifndef OPENSSL_NO_NEXTPROTONEG {", NextProto", SSL3_MT_NEXT_PROTO}, diff --git a/include/openssl/ssl3.h b/include/openssl/ssl3.h index 7518f68126..6d0ed11bd8 100644 --- a/include/openssl/ssl3.h +++ b/include/openssl/ssl3.h @@ -299,7 +299,9 @@ extern "C" { # define SSL3_MT_CERTIFICATE_VERIFY 15 # define SSL3_MT_CLIENT_KEY_EXCHANGE 16 # define SSL3_MT_FINISHED 20 +# define SSL3_MT_CERTIFICATE_URL 21 # define SSL3_MT_CERTIFICATE_STATUS 22 +# define SSL3_MT_SUPPLEMENTAL_DATA 23 # define SSL3_MT_KEY_UPDATE 24 # ifndef OPENSSL_NO_NEXTPROTONEG # define SSL3_MT_NEXT_PROTO 67 diff --git a/ssl/t1_trce.c b/ssl/t1_trce.c index ba5225849b..601ab025c3 100644 --- a/ssl/t1_trce.c +++ b/ssl/t1_trce.c @@ -79,7 +79,7 @@ static const ssl_trace_tbl ssl_content_tbl[] = { {SSL3_RT_APPLICATION_DATA, "ApplicationData"}, }; -/* Handshake types */ +/* Handshake types, sorted by ascending id */ static const ssl_trace_tbl ssl_handshake_tbl[] = { {SSL3_MT_HELLO_REQUEST, "HelloRequest"}, {SSL3_MT_CLIENT_HELLO, "ClientHello"}, @@ -94,10 +94,10 @@ static const ssl_trace_tbl ssl_handshake_tbl[] = { {SSL3_MT_SERVER_DONE, "ServerHelloDone"}, {SSL3_MT_CERTIFICATE_VERIFY, "CertificateVerify"}, {SSL3_MT_CLIENT_KEY_EXCHANGE, "ClientKeyExchange"}, - {SSL3_MT_CERTIFICATE_STATUS, "CertificateStatus"}, - {SSL3_MT_CLIENT_KEY_EXCHANGE, "ClientKeyExchange"}, {SSL3_MT_FINISHED, "Finished"}, + {SSL3_MT_CERTIFICATE_URL, "CertificateUrl"}, {SSL3_MT_CERTIFICATE_STATUS, "CertificateStatus"}, + {SSL3_MT_SUPPLEMENTAL_DATA, "SupplementalData"}, {SSL3_MT_KEY_UPDATE, "KeyUpdate"}, # ifndef OPENSSL_NO_NEXTPROTONEG {SSL3_MT_NEXT_PROTO, "NextProto"}, @@ -449,7 +449,7 @@ static const ssl_trace_tbl ssl_comp_tbl[] = { {0x0001, "Zlib Compression"} }; -/* Extensions */ +/* Extensions sorted by ascending id */ static const ssl_trace_tbl ssl_exts_tbl[] = { {TLSEXT_TYPE_server_name, "server_name"}, {TLSEXT_TYPE_max_fragment_length, "max_fragment_length"}, @@ -461,28 +461,32 @@ static const ssl_trace_tbl ssl_exts_tbl[] = { {TLSEXT_TYPE_client_authz, "client_authz"}, {TLSEXT_TYPE_server_authz, "server_authz"}, {TLSEXT_TYPE_cert_type, "cert_type"}, - {TLSEXT_TYPE_key_share, "key_share"}, - {TLSEXT_TYPE_psk, "psk"}, - {TLSEXT_TYPE_psk_kex_modes, "psk_key_exchange_modes"}, {TLSEXT_TYPE_supported_groups, "supported_groups"}, {TLSEXT_TYPE_ec_point_formats, "ec_point_formats"}, {TLSEXT_TYPE_srp, "srp"}, {TLSEXT_TYPE_signature_algorithms, "signature_algorithms"}, {TLSEXT_TYPE_use_srtp, "use_srtp"}, - {TLSEXT_TYPE_session_ticket, "session_ticket"}, - {TLSEXT_TYPE_supported_versions, "supported_versions"}, - {TLSEXT_TYPE_renegotiate, "renegotiate"}, -# ifndef OPENSSL_NO_NEXTPROTONEG - {TLSEXT_TYPE_next_proto_neg, "next_proto_neg"}, -# endif + {TLSEXT_TYPE_heartbeat, "tls_heartbeat"}, {TLSEXT_TYPE_application_layer_protocol_negotiation, "application_layer_protocol_negotiation"}, {TLSEXT_TYPE_signed_certificate_timestamp, "signed_certificate_timestamps"}, {TLSEXT_TYPE_padding, "padding"}, {TLSEXT_TYPE_encrypt_then_mac, "encrypt_then_mac"}, {TLSEXT_TYPE_extended_master_secret, "extended_master_secret"}, + {TLSEXT_TYPE_session_ticket, "session_ticket"}, + {TLSEXT_TYPE_psk, "psk"}, {TLSEXT_TYPE_early_data, "early_data"}, + {TLSEXT_TYPE_supported_versions, "supported_versions"}, + {TLSEXT_TYPE_cookie, "cookie_ext"}, + {TLSEXT_TYPE_psk_kex_modes, "psk_key_exchange_modes"}, + {TLSEXT_TYPE_certificate_authorities, "certificate_authorities"}, {TLSEXT_TYPE_post_handshake_auth, "post_handshake_auth"} + {TLSEXT_TYPE_signature_algorithms_cert, "signature_algorithms_cert"} + {TLSEXT_TYPE_key_share, "key_share"}, + {TLSEXT_TYPE_renegotiate, "renegotiate"} +# ifndef OPENSSL_NO_NEXTPROTONEG + , {TLSEXT_TYPE_next_proto_neg, "next_proto_neg"} +# endif }; static const ssl_trace_tbl ssl_groups_tbl[] = { -- GitLab