mirror of
https://git.libssh.org/projects/libssh.git
synced 2025-08-05 20:55:46 +03:00
tests: Update negative test cases to use EC instead of ED keys
Also systematically use assert_ssh_return_code() instead of various checks for return codes. Signed-off-by: Jakub Jelen <jjelen@redhat.com> Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
This commit is contained in:
committed by
Andreas Schneider
parent
c7c3c16fc8
commit
b6aef1fdd5
@@ -117,14 +117,14 @@ static void torture_knownhosts_port(void **state) {
|
|||||||
TORTURE_KNOWN_HOSTS_FILE);
|
TORTURE_KNOWN_HOSTS_FILE);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_connect(session);
|
rc = ssh_connect(session);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
session->opts.port = 1234;
|
session->opts.port = 1234;
|
||||||
rc = ssh_write_knownhost(session);
|
rc = ssh_write_knownhost(session);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
file = fopen(known_hosts_file, "r");
|
file = fopen(known_hosts_file, "r");
|
||||||
assert_non_null(file);
|
assert_non_null(file);
|
||||||
@@ -144,7 +144,7 @@ static void torture_knownhosts_port(void **state) {
|
|||||||
ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
||||||
|
|
||||||
rc = ssh_connect(session);
|
rc = ssh_connect(session);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
session->opts.port = 1234;
|
session->opts.port = 1234;
|
||||||
rc = ssh_is_server_known(session);
|
rc = ssh_is_server_known(session);
|
||||||
@@ -231,10 +231,10 @@ static void torture_knownhosts_fail(void **state) {
|
|||||||
TORTURE_KNOWN_HOSTS_FILE);
|
TORTURE_KNOWN_HOSTS_FILE);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ssh-rsa");
|
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "rsa-sha2-256");
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
file = fopen(known_hosts_file, "w");
|
file = fopen(known_hosts_file, "w");
|
||||||
assert_non_null(file);
|
assert_non_null(file);
|
||||||
@@ -243,7 +243,7 @@ static void torture_knownhosts_fail(void **state) {
|
|||||||
fclose(file);
|
fclose(file);
|
||||||
|
|
||||||
rc = ssh_connect(session);
|
rc = ssh_connect(session);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_is_server_known(session);
|
rc = ssh_is_server_known(session);
|
||||||
assert_int_equal(rc, SSH_SERVER_KNOWN_CHANGED);
|
assert_int_equal(rc, SSH_SERVER_KNOWN_CHANGED);
|
||||||
@@ -263,10 +263,10 @@ static void torture_knownhosts_other(void **state) {
|
|||||||
TORTURE_KNOWN_HOSTS_FILE);
|
TORTURE_KNOWN_HOSTS_FILE);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ssh-ed25519");
|
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ecdsa-sha2-nistp521");
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
file = fopen(known_hosts_file, "w");
|
file = fopen(known_hosts_file, "w");
|
||||||
assert_non_null(file);
|
assert_non_null(file);
|
||||||
@@ -274,7 +274,7 @@ static void torture_knownhosts_other(void **state) {
|
|||||||
fclose(file);
|
fclose(file);
|
||||||
|
|
||||||
rc = ssh_connect(session);
|
rc = ssh_connect(session);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_is_server_known(session);
|
rc = ssh_is_server_known(session);
|
||||||
assert_int_equal(rc, SSH_SERVER_FOUND_OTHER);
|
assert_int_equal(rc, SSH_SERVER_FOUND_OTHER);
|
||||||
@@ -293,22 +293,22 @@ static void torture_knownhosts_other_auto(void **state) {
|
|||||||
TORTURE_KNOWN_HOSTS_FILE);
|
TORTURE_KNOWN_HOSTS_FILE);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_HOST, TORTURE_SSH_SERVER);
|
rc = ssh_options_set(session, SSH_OPTIONS_HOST, TORTURE_SSH_SERVER);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ssh-ed25519");
|
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ecdsa-sha2-nistp521");
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_connect(session);
|
rc = ssh_connect(session);
|
||||||
assert_true(rc==SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_is_server_known(session);
|
rc = ssh_is_server_known(session);
|
||||||
assert_int_equal(rc, SSH_SERVER_NOT_KNOWN);
|
assert_int_equal(rc, SSH_SERVER_NOT_KNOWN);
|
||||||
|
|
||||||
rc = ssh_write_knownhost(session);
|
rc = ssh_write_knownhost(session);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
ssh_disconnect(session);
|
ssh_disconnect(session);
|
||||||
ssh_free(session);
|
ssh_free(session);
|
||||||
@@ -320,13 +320,13 @@ static void torture_knownhosts_other_auto(void **state) {
|
|||||||
s->ssh.session = session;
|
s->ssh.session = session;
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_HOST, TORTURE_SSH_SERVER);
|
rc = ssh_options_set(session, SSH_OPTIONS_HOST, TORTURE_SSH_SERVER);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_connect(session);
|
rc = ssh_connect(session);
|
||||||
assert_true(rc==SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
/* ssh-rsa is the default but libssh should try ssh-ed25519 instead */
|
/* ssh-rsa is the default but libssh should try ssh-ed25519 instead */
|
||||||
rc = ssh_is_server_known(session);
|
rc = ssh_is_server_known(session);
|
||||||
@@ -349,13 +349,13 @@ static void torture_knownhosts_conflict(void **state) {
|
|||||||
TORTURE_KNOWN_HOSTS_FILE);
|
TORTURE_KNOWN_HOSTS_FILE);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_HOST, TORTURE_SSH_SERVER);
|
rc = ssh_options_set(session, SSH_OPTIONS_HOST, TORTURE_SSH_SERVER);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ssh-rsa");
|
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "rsa-sha2-256");
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
file = fopen(known_hosts_file, "w");
|
file = fopen(known_hosts_file, "w");
|
||||||
assert_non_null(file);
|
assert_non_null(file);
|
||||||
@@ -364,13 +364,13 @@ static void torture_knownhosts_conflict(void **state) {
|
|||||||
fclose(file);
|
fclose(file);
|
||||||
|
|
||||||
rc = ssh_connect(session);
|
rc = ssh_connect(session);
|
||||||
assert_true(rc==SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_is_server_known(session);
|
rc = ssh_is_server_known(session);
|
||||||
assert_int_equal(rc, SSH_SERVER_KNOWN_CHANGED);
|
assert_int_equal(rc, SSH_SERVER_KNOWN_CHANGED);
|
||||||
|
|
||||||
rc = ssh_write_knownhost(session);
|
rc = ssh_write_knownhost(session);
|
||||||
assert_true(rc==SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
ssh_disconnect(session);
|
ssh_disconnect(session);
|
||||||
ssh_free(session);
|
ssh_free(session);
|
||||||
@@ -383,11 +383,11 @@ static void torture_knownhosts_conflict(void **state) {
|
|||||||
|
|
||||||
ssh_options_set(session, SSH_OPTIONS_HOST, TORTURE_SSH_SERVER);
|
ssh_options_set(session, SSH_OPTIONS_HOST, TORTURE_SSH_SERVER);
|
||||||
ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ssh-rsa");
|
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "rsa-sha2-256");
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_connect(session);
|
rc = ssh_connect(session);
|
||||||
assert_int_equal(rc, SSH_OK);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_is_server_known(session);
|
rc = ssh_is_server_known(session);
|
||||||
assert_int_equal(rc, SSH_SERVER_KNOWN_OK);
|
assert_int_equal(rc, SSH_SERVER_KNOWN_OK);
|
||||||
@@ -414,7 +414,7 @@ static void torture_knownhosts_no_hostkeychecking(void **state)
|
|||||||
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
||||||
assert_ssh_return_code(session, rc);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ssh-ed25519");
|
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ecdsa-sha2-nistp521");
|
||||||
assert_ssh_return_code(session, rc);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_connect(session);
|
rc = ssh_connect(session);
|
||||||
|
@@ -33,7 +33,7 @@
|
|||||||
|
|
||||||
#define TORTURE_KNOWN_HOSTS_FILE "libssh_torture_knownhosts"
|
#define TORTURE_KNOWN_HOSTS_FILE "libssh_torture_knownhosts"
|
||||||
|
|
||||||
#define BAD_ED25519 "AAAAC3NzaC1lZDI1NTE5AAAAIE74wHmKKkrxpW/dZ69pKPlMoWG9VvWfrNnUkWRQqaDa"
|
#define BAD_RSA "AAAAB3NzaC1yc2EAAAADAQABAAABAQDXvXuawzaArEwkLIXTz/EWywLOCtqQL3P9yKkrhz6AplXP2PhOh5pyxa1VfGKe453jNeYBJ0ROto3BshXgZXbo86oLXTkbe0gO5xi3r5WjXxjOFvRRTLot5fPLNDOv9+TnsPmkNn0iIeyPnfrcPIyjWt5zSWUfkNC8oNHxsiSshjpbJvTXSDipukpUy41d7jg4uWGuonMTF7yu7HfuHqq7lhb0WlwSpfbqAbfYARBddcdcARyhix4RMWZZqVY20H3Vsjq8bjKC+NJXFce1PRg+qcOWQdlXEei4dkzAvHvfQRx1TjzkrBZ6B6thmZtyeb9IsiB0tg2g0JN2VTAGkxqp"
|
||||||
|
|
||||||
static int sshd_group_setup(void **state)
|
static int sshd_group_setup(void **state)
|
||||||
{
|
{
|
||||||
@@ -273,7 +273,7 @@ static void torture_knownhosts_other(void **state)
|
|||||||
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
||||||
assert_ssh_return_code(session, rc);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ssh-ed25519");
|
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ecdsa-sha2-nistp521");
|
||||||
assert_ssh_return_code(session, rc);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
file = fopen(known_hosts_file, "w");
|
file = fopen(known_hosts_file, "w");
|
||||||
@@ -307,7 +307,7 @@ static void torture_knownhosts_unknown(void **state)
|
|||||||
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
||||||
assert_ssh_return_code(session, rc);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ssh-ed25519");
|
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ecdsa-sha2-nistp521");
|
||||||
assert_ssh_return_code(session, rc);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_connect(session);
|
rc = ssh_connect(session);
|
||||||
@@ -368,14 +368,14 @@ static void torture_knownhosts_conflict(void **state)
|
|||||||
assert_non_null(file);
|
assert_non_null(file);
|
||||||
fprintf(file,
|
fprintf(file,
|
||||||
"127.0.0.10 %s %s\n",
|
"127.0.0.10 %s %s\n",
|
||||||
"ssh-ed25519",
|
"ssh-rsa",
|
||||||
BAD_ED25519);
|
BAD_RSA);
|
||||||
fclose(file);
|
fclose(file);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
||||||
assert_ssh_return_code(session, rc);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ssh-ed25519");
|
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "rsa-sha2-256");
|
||||||
assert_ssh_return_code(session, rc);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_connect(session);
|
rc = ssh_connect(session);
|
||||||
@@ -402,7 +402,7 @@ static void torture_knownhosts_conflict(void **state)
|
|||||||
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
|
||||||
assert_ssh_return_code(session, rc);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ssh-ed25519");
|
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "rsa-sha2-256");
|
||||||
assert_ssh_return_code(session, rc);
|
assert_ssh_return_code(session, rc);
|
||||||
|
|
||||||
rc = ssh_connect(session);
|
rc = ssh_connect(session);
|
||||||
|
Reference in New Issue
Block a user