mirror of
https://github.com/cuberite/polarssl.git
synced 2025-09-23 04:26:46 -04:00
Move certificate and key parsing to auxiliary functions
No behavior change. Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
This commit is contained in:
parent
fb2ce055a3
commit
6e4d245b00
@ -653,6 +653,68 @@ static void test_ssl_endpoint_certificate_free(mbedtls_test_ssl_endpoint *ep)
|
||||
}
|
||||
}
|
||||
|
||||
static int load_endpoint_rsa(mbedtls_test_ssl_endpoint *ep)
|
||||
{
|
||||
int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED;
|
||||
if (ep->conf.endpoint == MBEDTLS_SSL_IS_SERVER) {
|
||||
ret = mbedtls_x509_crt_parse(
|
||||
ep->cert,
|
||||
(const unsigned char *) mbedtls_test_srv_crt_rsa_sha256_der,
|
||||
mbedtls_test_srv_crt_rsa_sha256_der_len);
|
||||
TEST_EQUAL(ret, 0);
|
||||
ret = mbedtls_pk_parse_key(
|
||||
ep->pkey,
|
||||
(const unsigned char *) mbedtls_test_srv_key_rsa_der,
|
||||
mbedtls_test_srv_key_rsa_der_len, NULL, 0);
|
||||
TEST_EQUAL(ret, 0);
|
||||
} else {
|
||||
ret = mbedtls_x509_crt_parse(
|
||||
ep->cert,
|
||||
(const unsigned char *) mbedtls_test_cli_crt_rsa_der,
|
||||
mbedtls_test_cli_crt_rsa_der_len);
|
||||
TEST_EQUAL(ret, 0);
|
||||
ret = mbedtls_pk_parse_key(
|
||||
ep->pkey,
|
||||
(const unsigned char *) mbedtls_test_cli_key_rsa_der,
|
||||
mbedtls_test_cli_key_rsa_der_len, NULL, 0);
|
||||
TEST_EQUAL(ret, 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int load_endpoint_ecc(mbedtls_test_ssl_endpoint *ep)
|
||||
{
|
||||
int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED;
|
||||
if (ep->conf.endpoint == MBEDTLS_SSL_IS_SERVER) {
|
||||
ret = mbedtls_x509_crt_parse(
|
||||
ep->cert,
|
||||
(const unsigned char *) mbedtls_test_srv_crt_ec_der,
|
||||
mbedtls_test_srv_crt_ec_der_len);
|
||||
TEST_EQUAL(ret, 0);
|
||||
ret = mbedtls_pk_parse_key(
|
||||
ep->pkey,
|
||||
(const unsigned char *) mbedtls_test_srv_key_ec_der,
|
||||
mbedtls_test_srv_key_ec_der_len, NULL, 0);
|
||||
TEST_EQUAL(ret, 0);
|
||||
} else {
|
||||
ret = mbedtls_x509_crt_parse(
|
||||
ep->cert,
|
||||
(const unsigned char *) mbedtls_test_cli_crt_ec_der,
|
||||
mbedtls_test_cli_crt_ec_len);
|
||||
TEST_EQUAL(ret, 0);
|
||||
ret = mbedtls_pk_parse_key(
|
||||
ep->pkey,
|
||||
(const unsigned char *) mbedtls_test_cli_key_ec_der,
|
||||
mbedtls_test_cli_key_ec_der_len, NULL, 0);
|
||||
TEST_EQUAL(ret, 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
return ret;
|
||||
}
|
||||
|
||||
int mbedtls_test_ssl_endpoint_certificate_init(mbedtls_test_ssl_endpoint *ep,
|
||||
int pk_alg,
|
||||
int opaque_alg, int opaque_alg2,
|
||||
@ -689,58 +751,10 @@ int mbedtls_test_ssl_endpoint_certificate_init(mbedtls_test_ssl_endpoint *ep,
|
||||
|
||||
/* Load own certificate and private key */
|
||||
|
||||
if (ep->conf.endpoint == MBEDTLS_SSL_IS_SERVER) {
|
||||
if (pk_alg == MBEDTLS_PK_RSA) {
|
||||
ret = mbedtls_x509_crt_parse(
|
||||
ep->cert,
|
||||
(const unsigned char *) mbedtls_test_srv_crt_rsa_sha256_der,
|
||||
mbedtls_test_srv_crt_rsa_sha256_der_len);
|
||||
TEST_EQUAL(ret, 0);
|
||||
|
||||
ret = mbedtls_pk_parse_key(
|
||||
ep->pkey,
|
||||
(const unsigned char *) mbedtls_test_srv_key_rsa_der,
|
||||
mbedtls_test_srv_key_rsa_der_len, NULL, 0);
|
||||
TEST_EQUAL(ret, 0);
|
||||
} else {
|
||||
ret = mbedtls_x509_crt_parse(
|
||||
ep->cert,
|
||||
(const unsigned char *) mbedtls_test_srv_crt_ec_der,
|
||||
mbedtls_test_srv_crt_ec_der_len);
|
||||
TEST_EQUAL(ret, 0);
|
||||
|
||||
ret = mbedtls_pk_parse_key(
|
||||
ep->pkey,
|
||||
(const unsigned char *) mbedtls_test_srv_key_ec_der,
|
||||
mbedtls_test_srv_key_ec_der_len, NULL, 0);
|
||||
TEST_EQUAL(ret, 0);
|
||||
}
|
||||
if (pk_alg == MBEDTLS_PK_RSA) {
|
||||
TEST_EQUAL(load_endpoint_rsa(ep), 0);
|
||||
} else {
|
||||
if (pk_alg == MBEDTLS_PK_RSA) {
|
||||
ret = mbedtls_x509_crt_parse(
|
||||
ep->cert,
|
||||
(const unsigned char *) mbedtls_test_cli_crt_rsa_der,
|
||||
mbedtls_test_cli_crt_rsa_der_len);
|
||||
TEST_EQUAL(ret, 0);
|
||||
|
||||
ret = mbedtls_pk_parse_key(
|
||||
ep->pkey,
|
||||
(const unsigned char *) mbedtls_test_cli_key_rsa_der,
|
||||
mbedtls_test_cli_key_rsa_der_len, NULL, 0);
|
||||
TEST_EQUAL(ret, 0);
|
||||
} else {
|
||||
ret = mbedtls_x509_crt_parse(
|
||||
ep->cert,
|
||||
(const unsigned char *) mbedtls_test_cli_crt_ec_der,
|
||||
mbedtls_test_cli_crt_ec_len);
|
||||
TEST_EQUAL(ret, 0);
|
||||
|
||||
ret = mbedtls_pk_parse_key(
|
||||
ep->pkey,
|
||||
(const unsigned char *) mbedtls_test_cli_key_ec_der,
|
||||
mbedtls_test_cli_key_ec_der_len, NULL, 0);
|
||||
TEST_EQUAL(ret, 0);
|
||||
}
|
||||
TEST_EQUAL(load_endpoint_ecc(ep), 0);
|
||||
}
|
||||
|
||||
#if defined(MBEDTLS_USE_PSA_CRYPTO)
|
||||
|
Loading…
x
Reference in New Issue
Block a user