aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAndreas Schneider <asn@cryptomilk.org>2018-02-03 16:54:58 +0100
committerAndreas Schneider <asn@cryptomilk.org>2018-06-04 11:20:28 +0200
commita209f928d2f4dfde96c04423df9cc246d4accdb0 (patch)
tree3a730df3f42997624ad59a93a04d4a8e4c581b58 /tests
parentf23dbe6f4221fd59337087298ed9536c1a05ea63 (diff)
downloadlibssh-a209f928d2f4dfde96c04423df9cc246d4accdb0.tar.gz
libssh-a209f928d2f4dfde96c04423df9cc246d4accdb0.tar.xz
libssh-a209f928d2f4dfde96c04423df9cc246d4accdb0.zip
kwonhosts: Add functions to check if servers public key is known
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'tests')
-rw-r--r--tests/client/torture_knownhosts_verify.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/client/torture_knownhosts_verify.c b/tests/client/torture_knownhosts_verify.c
index a266e92a..323b8e2b 100644
--- a/tests/client/torture_knownhosts_verify.c
+++ b/tests/client/torture_knownhosts_verify.c
@@ -103,12 +103,32 @@ static void torture_knownhosts_export(void **state)
SAFE_FREE(entry);
}
+static void torture_knownhosts_write_and_verify(void **state)
+{
+ struct torture_state *s = *state;
+ ssh_session session = s->ssh.session;
+ enum ssh_known_hosts_e found;
+ int rc;
+
+ rc = ssh_connect(session);
+ assert_int_equal(rc, SSH_OK);
+
+ rc = ssh_session_update_known_hosts(session);
+ assert_int_equal(rc, SSH_OK);
+
+ found = ssh_session_is_known_server(session);
+ assert_int_equal(found, SSH_KNOWN_HOSTS_OK);
+}
+
int torture_run_tests(void) {
int rc;
struct CMUnitTest tests[] = {
cmocka_unit_test_setup_teardown(torture_knownhosts_export,
session_setup,
session_teardown),
+ cmocka_unit_test_setup_teardown(torture_knownhosts_write_and_verify,
+ session_setup,
+ session_teardown),
};
ssh_init();