sync with OpenBSD -current
This commit is contained in:
parent
caf62be22c
commit
b3ecf9fa9a
56 changed files with 383 additions and 289 deletions
|
@ -1,4 +1,4 @@
|
|||
/* $OpenBSD: test_sshkey.c,v 1.23 2023/01/04 22:48:57 tb Exp $ */
|
||||
/* $OpenBSD: test_sshkey.c,v 1.24 2024/01/11 01:45:58 djm Exp $ */
|
||||
/*
|
||||
* Regress test for sshkey.h key management API
|
||||
*
|
||||
|
@ -170,8 +170,9 @@ get_private(const char *n)
|
|||
void
|
||||
sshkey_tests(void)
|
||||
{
|
||||
struct sshkey *k1, *k2, *k3, *k4, *kr, *kd, *ke, *kf;
|
||||
struct sshbuf *b;
|
||||
struct sshkey *k1 = NULL, *k2 = NULL, *k3 = NULL, *k4 = NULL;
|
||||
struct sshkey *kr = NULL, *kd = NULL, *ke = NULL, *kf = NULL;
|
||||
struct sshbuf *b = NULL;
|
||||
|
||||
TEST_START("new invalid");
|
||||
k1 = sshkey_new(-42);
|
||||
|
@ -191,12 +192,14 @@ sshkey_tests(void)
|
|||
sshkey_free(k1);
|
||||
TEST_DONE();
|
||||
|
||||
#ifdef WiTH_DSA
|
||||
TEST_START("new/free KEY_DSA");
|
||||
k1 = sshkey_new(KEY_DSA);
|
||||
ASSERT_PTR_NE(k1, NULL);
|
||||
ASSERT_PTR_NE(k1->dsa, NULL);
|
||||
sshkey_free(k1);
|
||||
TEST_DONE();
|
||||
#endif
|
||||
|
||||
TEST_START("new/free KEY_ECDSA");
|
||||
k1 = sshkey_new(KEY_ECDSA);
|
||||
|
@ -226,12 +229,14 @@ sshkey_tests(void)
|
|||
ASSERT_PTR_EQ(k1, NULL);
|
||||
TEST_DONE();
|
||||
|
||||
#ifdef WITH_DSA
|
||||
TEST_START("generate KEY_DSA wrong bits");
|
||||
ASSERT_INT_EQ(sshkey_generate(KEY_DSA, 2048, &k1),
|
||||
SSH_ERR_KEY_LENGTH);
|
||||
ASSERT_PTR_EQ(k1, NULL);
|
||||
sshkey_free(k1);
|
||||
TEST_DONE();
|
||||
#endif
|
||||
|
||||
TEST_START("generate KEY_ECDSA wrong bits");
|
||||
ASSERT_INT_EQ(sshkey_generate(KEY_ECDSA, 42, &k1),
|
||||
|
@ -252,6 +257,7 @@ sshkey_tests(void)
|
|||
ASSERT_INT_EQ(BN_num_bits(rsa_n(kr)), 1024);
|
||||
TEST_DONE();
|
||||
|
||||
#ifdef WITH_DSA
|
||||
TEST_START("generate KEY_DSA");
|
||||
ASSERT_INT_EQ(sshkey_generate(KEY_DSA, 1024, &kd), 0);
|
||||
ASSERT_PTR_NE(kd, NULL);
|
||||
|
@ -259,6 +265,7 @@ sshkey_tests(void)
|
|||
ASSERT_PTR_NE(dsa_g(kd), NULL);
|
||||
ASSERT_PTR_NE(dsa_priv_key(kd), NULL);
|
||||
TEST_DONE();
|
||||
#endif
|
||||
|
||||
TEST_START("generate KEY_ECDSA");
|
||||
ASSERT_INT_EQ(sshkey_generate(KEY_ECDSA, 256, &ke), 0);
|
||||
|
@ -292,6 +299,7 @@ sshkey_tests(void)
|
|||
sshkey_free(k1);
|
||||
TEST_DONE();
|
||||
|
||||
#ifdef WITH_DSA
|
||||
TEST_START("demote KEY_DSA");
|
||||
ASSERT_INT_EQ(sshkey_from_private(kd, &k1), 0);
|
||||
ASSERT_PTR_NE(k1, NULL);
|
||||
|
@ -306,6 +314,7 @@ sshkey_tests(void)
|
|||
ASSERT_INT_EQ(sshkey_equal(kd, k1), 1);
|
||||
sshkey_free(k1);
|
||||
TEST_DONE();
|
||||
#endif
|
||||
|
||||
TEST_START("demote KEY_ECDSA");
|
||||
ASSERT_INT_EQ(sshkey_from_private(ke, &k1), 0);
|
||||
|
@ -349,9 +358,6 @@ sshkey_tests(void)
|
|||
ASSERT_INT_EQ(sshkey_generate(KEY_RSA, 1024, &k1), 0);
|
||||
ASSERT_INT_EQ(sshkey_equal(kr, k1), 0);
|
||||
sshkey_free(k1);
|
||||
ASSERT_INT_EQ(sshkey_generate(KEY_DSA, 1024, &k1), 0);
|
||||
ASSERT_INT_EQ(sshkey_equal(kd, k1), 0);
|
||||
sshkey_free(k1);
|
||||
ASSERT_INT_EQ(sshkey_generate(KEY_ECDSA, 256, &k1), 0);
|
||||
ASSERT_INT_EQ(sshkey_equal(ke, k1), 0);
|
||||
sshkey_free(k1);
|
||||
|
@ -438,6 +444,7 @@ sshkey_tests(void)
|
|||
sshkey_free(k2);
|
||||
TEST_DONE();
|
||||
|
||||
#ifdef WITH_DSA
|
||||
TEST_START("sign and verify DSA");
|
||||
k1 = get_private("dsa_1");
|
||||
ASSERT_INT_EQ(sshkey_load_public(test_data_file("dsa_2.pub"), &k2,
|
||||
|
@ -446,6 +453,7 @@ sshkey_tests(void)
|
|||
sshkey_free(k1);
|
||||
sshkey_free(k2);
|
||||
TEST_DONE();
|
||||
#endif
|
||||
|
||||
TEST_START("sign and verify ECDSA");
|
||||
k1 = get_private("ecdsa_1");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue