FIX TLS 1.2 renegotiation_info

This commit is contained in:
Zhi Guan
2026-06-20 16:13:41 +08:00
parent 56c9904fdd
commit c47ae26730
6 changed files with 58 additions and 8 deletions

View File

@@ -32,10 +32,32 @@ if(TEST_CASE STREQUAL tls12_openssl_server)
SERVER_COMMAND "${SERVER_COMMAND}"
CLIENT_COMMAND "${CLIENT_COMMAND}"
EXPECT_CLIENT_LOG "Connection established")
elseif(TEST_CASE STREQUAL tls12_openssl_server_renegotiation_info)
set(TEST_NAME tls12_openssl_server_renegotiation_info)
set(TEST_PORT 4459)
set(SERVER_COMMAND "${OPENSSL_EXECUTABLE} s_server -accept ${TEST_PORT} -cert p256_tls_server_cert.pem -cert_chain p256_tls_server_cert_chain.pem -key p256_tls_server_key.exp -tls1_2 -cipher ECDHE-ECDSA-AES128-SHA256 -named_curve prime256v1 -www -naccept 1 -quiet")
set(CLIENT_COMMAND "bin/gmssl tls12_client -host 127.0.0.1 -port ${TEST_PORT} -server_name localhost -cacert p256_root_ca_cert.pem -cipher_suite TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 -supported_group prime256v1 -sig_alg ecdsa_secp256r1_sha256 -renegotiation_info -get /")
gmssl_run_command_interop_test(
TEST_NAME ${TEST_NAME}
PORT ${TEST_PORT}
SERVER_COMMAND "${SERVER_COMMAND}"
CLIENT_COMMAND "${CLIENT_COMMAND}"
EXPECT_CLIENT_LOG "Connection established")
elseif(TEST_CASE STREQUAL tls12_openssl_server_renegotiation_info_scsv)
set(TEST_NAME tls12_openssl_server_renegotiation_info_scsv)
set(TEST_PORT 4460)
set(SERVER_COMMAND "${OPENSSL_EXECUTABLE} s_server -accept ${TEST_PORT} -cert p256_tls_server_cert.pem -cert_chain p256_tls_server_cert_chain.pem -key p256_tls_server_key.exp -tls1_2 -cipher ECDHE-ECDSA-AES128-SHA256 -named_curve prime256v1 -www -naccept 1 -quiet")
set(CLIENT_COMMAND "bin/gmssl tls12_client -host 127.0.0.1 -port ${TEST_PORT} -server_name localhost -cacert p256_root_ca_cert.pem -cipher_suite TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 -supported_group prime256v1 -sig_alg ecdsa_secp256r1_sha256 -renegotiation_info_scsv -get /")
gmssl_run_command_interop_test(
TEST_NAME ${TEST_NAME}
PORT ${TEST_PORT}
SERVER_COMMAND "${SERVER_COMMAND}"
CLIENT_COMMAND "${CLIENT_COMMAND}"
EXPECT_CLIENT_LOG "Connection established")
elseif(TEST_CASE STREQUAL tls12_openssl_client)
set(TEST_NAME tls12_openssl_client)
set(TEST_PORT 4451)
set(SERVER_COMMAND "bin/gmssl tls12_server -port ${TEST_PORT} -cert p256_tls_server_certs.pem -key p256_tls_server_key.pem -pass P@ssw0rd -cipher_suite TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 -supported_group prime256v1 -sig_alg ecdsa_secp256r1_sha256 -renegotiation_info")
set(SERVER_COMMAND "bin/gmssl tls12_server -port ${TEST_PORT} -cert p256_tls_server_certs.pem -key p256_tls_server_key.pem -pass P@ssw0rd -cipher_suite TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 -supported_group prime256v1 -sig_alg ecdsa_secp256r1_sha256")
set(CLIENT_COMMAND "printf 'GET / HTTP/1.0\\r\\n\\r\\n' | ${OPENSSL_EXECUTABLE} s_client -connect 127.0.0.1:${TEST_PORT} -tls1_2 -CAfile p256_root_ca_cert.pem -cipher ECDHE-ECDSA-AES128-SHA256 -groups prime256v1 -servername localhost -brief")
gmssl_run_command_interop_test(
TEST_NAME ${TEST_NAME}

View File

@@ -15,6 +15,18 @@ if(TEST_CASE STREQUAL tls12_sm4_gcm_sni)
set(TEST_PORT 4434)
set(TEST_CIPHER_SUITE TLS_ECDHE_SM4_GCM_SM3)
set(TEST_CLIENT_CERT OFF)
elseif(TEST_CASE STREQUAL tls12_sm4_gcm_renegotiation_info)
set(TEST_NAME tls12_sm4_gcm_renegotiation_info)
set(TEST_PORT 4461)
set(TEST_CIPHER_SUITE TLS_ECDHE_SM4_GCM_SM3)
set(TEST_CLIENT_CERT OFF)
set(TEST_RENEGOTIATION_ARG -renegotiation_info)
elseif(TEST_CASE STREQUAL tls12_sm4_gcm_renegotiation_info_scsv)
set(TEST_NAME tls12_sm4_gcm_renegotiation_info_scsv)
set(TEST_PORT 4462)
set(TEST_CIPHER_SUITE TLS_ECDHE_SM4_GCM_SM3)
set(TEST_CLIENT_CERT OFF)
set(TEST_RENEGOTIATION_ARG -renegotiation_info_scsv)
elseif(TEST_CASE STREQUAL tls12_sm4_cbc_sni)
set(TEST_NAME tls12_sm4_cbc_sni)
set(TEST_PORT 4432)
@@ -50,6 +62,10 @@ set(TEST_CLIENT_ARGS
-sig_alg sm2sig_sm3
-in ${TEST_NAME}_message.txt)
if(TEST_RENEGOTIATION_ARG)
list(APPEND TEST_CLIENT_ARGS ${TEST_RENEGOTIATION_ARG})
endif()
if(TEST_CLIENT_CERT)
list(APPEND TEST_SERVER_ARGS
-cacert sm2_root_ca_cert.pem