mirror of
https://github.com/openssl/openssl.git
synced 2025-02-23 14:42:15 +08:00
Add a test for creating ECX private keys that are too short
We expect attempting to create such short keys to fail Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/17041)
This commit is contained in:
parent
50938aec35
commit
8c08c8b37c
@ -4231,6 +4231,28 @@ static int test_cipher_with_engine(void)
|
||||
# endif /* OPENSSL_NO_DYNAMIC_ENGINE */
|
||||
#endif /* OPENSSL_NO_DEPRECATED_3_0 */
|
||||
|
||||
static int ecxnids[] = {
|
||||
NID_X25519,
|
||||
NID_X448,
|
||||
NID_ED25519,
|
||||
NID_ED448
|
||||
};
|
||||
|
||||
/* Test that creating ECX keys with a short private key fails as expected */
|
||||
static int test_ecx_short_keys(int tst)
|
||||
{
|
||||
unsigned char ecxkeydata = 1;
|
||||
EVP_PKEY *pkey;
|
||||
|
||||
|
||||
pkey = EVP_PKEY_new_raw_private_key(ecxnids[tst], NULL, &ecxkeydata, 1);
|
||||
if (!TEST_ptr_null(pkey)) {
|
||||
EVP_PKEY_free(pkey);
|
||||
return 0;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
typedef enum OPTION_choice {
|
||||
OPT_ERR = -1,
|
||||
OPT_EOF = 0,
|
||||
@ -4374,6 +4396,8 @@ int setup_tests(void)
|
||||
# endif
|
||||
#endif
|
||||
|
||||
ADD_ALL_TESTS(test_ecx_short_keys, OSSL_NELEM(ecxnids));
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user