diff options
author | Jakub Jelen <jjelen@redhat.com> | 2019-05-30 14:04:46 +0200 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2019-06-13 11:00:56 +0200 |
commit | 9f178be1fa8b78333941099017e9ef3791cace35 (patch) | |
tree | aef091cd66f65290b67414b482d9c1192f7cdff3 /tests | |
parent | 1f66414805bee4faf801e1bd2d221a990f7d25d3 (diff) | |
download | libssh-9f178be1fa8b78333941099017e9ef3791cace35.tar.gz libssh-9f178be1fa8b78333941099017e9ef3791cace35.tar.xz libssh-9f178be1fa8b78333941099017e9ef3791cace35.zip |
tests: Cover comparison of public keys, which was missing
Signed-off-by: Jakub Jelen <jjelen@redhat.com>
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/unittests/torture_pki_dsa.c | 14 | ||||
-rw-r--r-- | tests/unittests/torture_pki_ecdsa.c | 12 | ||||
-rw-r--r-- | tests/unittests/torture_pki_rsa.c | 12 |
3 files changed, 25 insertions, 13 deletions
diff --git a/tests/unittests/torture_pki_dsa.c b/tests/unittests/torture_pki_dsa.c index ce469671..b88aa84e 100644 --- a/tests/unittests/torture_pki_dsa.c +++ b/tests/unittests/torture_pki_dsa.c @@ -682,6 +682,7 @@ static void torture_pki_dsa_duplicate_key(void **state) char *b64_key = NULL; char *b64_key_gen = NULL; ssh_key pubkey = NULL; + ssh_key pubkey_dup = NULL; ssh_key privkey = NULL; ssh_key privkey_dup = NULL; @@ -694,8 +695,6 @@ static void torture_pki_dsa_duplicate_key(void **state) rc = ssh_pki_export_pubkey_base64(pubkey, &b64_key); assert_true(rc == 0); assert_non_null(b64_key); - SSH_KEY_FREE(pubkey); - rc = ssh_pki_import_privkey_file(LIBSSH_DSA_TESTKEY, NULL, NULL, @@ -707,11 +706,11 @@ static void torture_pki_dsa_duplicate_key(void **state) privkey_dup = ssh_key_dup(privkey); assert_non_null(privkey_dup); - rc = ssh_pki_export_privkey_to_pubkey(privkey, &pubkey); + rc = ssh_pki_export_privkey_to_pubkey(privkey, &pubkey_dup); assert_true(rc == SSH_OK); - assert_non_null(pubkey); + assert_non_null(pubkey_dup); - rc = ssh_pki_export_pubkey_base64(pubkey, &b64_key_gen); + rc = ssh_pki_export_pubkey_base64(pubkey_dup, &b64_key_gen); assert_true(rc == 0); assert_non_null(b64_key_gen); @@ -720,7 +719,12 @@ static void torture_pki_dsa_duplicate_key(void **state) rc = ssh_key_cmp(privkey, privkey_dup, SSH_KEY_CMP_PRIVATE); assert_true(rc == 0); + rc = ssh_key_cmp(pubkey, pubkey_dup, SSH_KEY_CMP_PUBLIC); + assert_true(rc == 0); + SSH_KEY_FREE(pubkey); + SSH_KEY_FREE(pubkey_dup); + SSH_KEY_FREE(privkey); SSH_KEY_FREE(privkey_dup); SSH_STRING_FREE_CHAR(b64_key); diff --git a/tests/unittests/torture_pki_ecdsa.c b/tests/unittests/torture_pki_ecdsa.c index 7f65d9a6..959c714e 100644 --- a/tests/unittests/torture_pki_ecdsa.c +++ b/tests/unittests/torture_pki_ecdsa.c @@ -380,6 +380,7 @@ static void torture_pki_ecdsa_duplicate_key(void **state) char *b64_key = NULL; char *b64_key_gen = NULL; ssh_key pubkey = NULL; + ssh_key pubkey_dup = NULL; ssh_key privkey = NULL; ssh_key privkey_dup = NULL; @@ -391,7 +392,6 @@ static void torture_pki_ecdsa_duplicate_key(void **state) rc = ssh_pki_export_pubkey_base64(pubkey, &b64_key); assert_true(rc == 0); - SSH_KEY_FREE(pubkey); assert_non_null(b64_key); rc = ssh_pki_import_privkey_file(LIBSSH_ECDSA_TESTKEY, @@ -405,11 +405,11 @@ static void torture_pki_ecdsa_duplicate_key(void **state) privkey_dup = ssh_key_dup(privkey); assert_non_null(privkey_dup); - rc = ssh_pki_export_privkey_to_pubkey(privkey, &pubkey); + rc = ssh_pki_export_privkey_to_pubkey(privkey, &pubkey_dup); assert_true(rc == SSH_OK); - assert_non_null(pubkey); + assert_non_null(pubkey_dup); - rc = ssh_pki_export_pubkey_base64(pubkey, &b64_key_gen); + rc = ssh_pki_export_pubkey_base64(pubkey_dup, &b64_key_gen); assert_true(rc == 0); assert_non_null(b64_key_gen); @@ -418,7 +418,11 @@ static void torture_pki_ecdsa_duplicate_key(void **state) rc = ssh_key_cmp(privkey, privkey_dup, SSH_KEY_CMP_PRIVATE); assert_true(rc == 0); + rc = ssh_key_cmp(pubkey, pubkey_dup, SSH_KEY_CMP_PUBLIC); + assert_true(rc == 0); + SSH_KEY_FREE(pubkey); + SSH_KEY_FREE(pubkey_dup); SSH_KEY_FREE(privkey); SSH_KEY_FREE(privkey_dup); SSH_STRING_FREE_CHAR(b64_key); diff --git a/tests/unittests/torture_pki_rsa.c b/tests/unittests/torture_pki_rsa.c index 861a6b50..b4a12396 100644 --- a/tests/unittests/torture_pki_rsa.c +++ b/tests/unittests/torture_pki_rsa.c @@ -411,6 +411,7 @@ static void torture_pki_rsa_duplicate_key(void **state) char *b64_key = NULL; char *b64_key_gen = NULL; ssh_key pubkey = NULL; + ssh_key pubkey_dup = NULL; ssh_key privkey = NULL; ssh_key privkey_dup = NULL; @@ -422,7 +423,6 @@ static void torture_pki_rsa_duplicate_key(void **state) rc = ssh_pki_export_pubkey_base64(pubkey, &b64_key); assert_true(rc == 0); - SSH_KEY_FREE(pubkey); assert_non_null(b64_key); rc = ssh_pki_import_privkey_file(LIBSSH_RSA_TESTKEY, @@ -436,11 +436,11 @@ static void torture_pki_rsa_duplicate_key(void **state) privkey_dup = ssh_key_dup(privkey); assert_non_null(privkey_dup); - rc = ssh_pki_export_privkey_to_pubkey(privkey, &pubkey); + rc = ssh_pki_export_privkey_to_pubkey(privkey, &pubkey_dup); assert_true(rc == SSH_OK); - assert_non_null(pubkey); + assert_non_null(pubkey_dup); - rc = ssh_pki_export_pubkey_base64(pubkey, &b64_key_gen); + rc = ssh_pki_export_pubkey_base64(pubkey_dup, &b64_key_gen); assert_true(rc == 0); assert_non_null(b64_key_gen); @@ -449,7 +449,11 @@ static void torture_pki_rsa_duplicate_key(void **state) rc = ssh_key_cmp(privkey, privkey_dup, SSH_KEY_CMP_PRIVATE); assert_true(rc == 0); + rc = ssh_key_cmp(pubkey, pubkey_dup, SSH_KEY_CMP_PUBLIC); + assert_true(rc == 0); + SSH_KEY_FREE(pubkey); + SSH_KEY_FREE(pubkey_dup); SSH_KEY_FREE(privkey); SSH_KEY_FREE(privkey_dup); SSH_STRING_FREE_CHAR(b64_key); |