Merge pull request #5033 from haydenroche5/ec_key_print_fp

Add wolfSSL_EC_KEY_print_fp to compat layer.
This commit is contained in:
Sean Parkinson
2022-04-26 09:51:37 +10:00
committed by GitHub
3 changed files with 170 additions and 53 deletions
+34
View File
@@ -45183,6 +45183,39 @@ static void test_wolfSSL_EC_KEY_set_conv_form(void)
#endif
}
static void test_wolfSSL_EC_KEY_print_fp(void)
{
#if defined(HAVE_ECC) && ((defined(HAVE_ECC224) && defined(HAVE_ECC256)) || \
defined(HAVE_ALL_CURVES)) && ECC_MIN_KEY_SZ <= 256 && \
defined(OPENSSL_EXTRA) && defined(XFPRINTF) && !defined(NO_FILESYSTEM) && \
!defined(NO_STDIO_FILESYSTEM)
EC_KEY* key = NULL;
printf(testingFmt, "test_wolfSSL_EC_KEY_print_fp");
/* Bad file pointer. */
AssertIntEQ(wolfSSL_EC_KEY_print_fp(NULL, key, 0), WOLFSSL_FAILURE);
/* NULL key. */
AssertIntEQ(wolfSSL_EC_KEY_print_fp(stdout, NULL, 0), WOLFSSL_FAILURE);
AssertNotNull((key = wolfSSL_EC_KEY_new_by_curve_name(NID_secp224r1)));
/* Negative indent. */
AssertIntEQ(wolfSSL_EC_KEY_print_fp(stdout, key, -1), WOLFSSL_FAILURE);
AssertIntEQ(wolfSSL_EC_KEY_print_fp(stdout, key, 4), WOLFSSL_SUCCESS);
AssertIntEQ(wolfSSL_EC_KEY_generate_key(key), WOLFSSL_SUCCESS);
AssertIntEQ(wolfSSL_EC_KEY_print_fp(stdout, key, 4), WOLFSSL_SUCCESS);
wolfSSL_EC_KEY_free(key);
AssertNotNull((key = wolfSSL_EC_KEY_new_by_curve_name(
NID_X9_62_prime256v1)));
AssertIntEQ(wolfSSL_EC_KEY_generate_key(key), WOLFSSL_SUCCESS);
AssertIntEQ(wolfSSL_EC_KEY_print_fp(stdout, key, 4), WOLFSSL_SUCCESS);
wolfSSL_EC_KEY_free(key);
printf(resultFmt, passed);
#endif
}
static void test_wolfSSL_X509V3_EXT_get(void) {
#if !defined(NO_FILESYSTEM) && defined(OPENSSL_ALL) && !defined(NO_RSA)
FILE* f;
@@ -53906,6 +53939,7 @@ void ApiTest(void)
test_ENGINE_cleanup();
test_wolfSSL_EC_KEY_set_group();
test_wolfSSL_EC_KEY_set_conv_form();
test_wolfSSL_EC_KEY_print_fp();
#if defined(OPENSSL_ALL)
test_wolfSSL_X509_PUBKEY_get();
test_wolfSSL_sk_CIPHER_description();