1
1

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>
Этот коммит содержится в:
Jakub Jelen 2019-05-29 17:34:53 +02:00 коммит произвёл Andreas Schneider
родитель c7c3c16fc8
Коммит b6aef1fdd5
2 изменённых файлов: 38 добавлений и 38 удалений

Просмотреть файл

@ -117,14 +117,14 @@ static void torture_knownhosts_port(void **state) {
TORTURE_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);
assert_int_equal(rc, SSH_OK);
assert_ssh_return_code(session, rc);
session->opts.port = 1234;
rc = ssh_write_knownhost(session);
assert_int_equal(rc, SSH_OK);
assert_ssh_return_code(session, rc);
file = fopen(known_hosts_file, "r");
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);
rc = ssh_connect(session);
assert_int_equal(rc, SSH_OK);
assert_ssh_return_code(session, rc);
session->opts.port = 1234;
rc = ssh_is_server_known(session);
@ -231,10 +231,10 @@ static void torture_knownhosts_fail(void **state) {
TORTURE_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");
assert_int_equal(rc, SSH_OK);
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "rsa-sha2-256");
assert_ssh_return_code(session, rc);
file = fopen(known_hosts_file, "w");
assert_non_null(file);
@ -243,7 +243,7 @@ static void torture_knownhosts_fail(void **state) {
fclose(file);
rc = ssh_connect(session);
assert_int_equal(rc, SSH_OK);
assert_ssh_return_code(session, rc);
rc = ssh_is_server_known(session);
assert_int_equal(rc, SSH_SERVER_KNOWN_CHANGED);
@ -263,10 +263,10 @@ static void torture_knownhosts_other(void **state) {
TORTURE_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");
assert_int_equal(rc, SSH_OK);
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ecdsa-sha2-nistp521");
assert_ssh_return_code(session, rc);
file = fopen(known_hosts_file, "w");
assert_non_null(file);
@ -274,7 +274,7 @@ static void torture_knownhosts_other(void **state) {
fclose(file);
rc = ssh_connect(session);
assert_int_equal(rc, SSH_OK);
assert_ssh_return_code(session, rc);
rc = ssh_is_server_known(session);
assert_int_equal(rc, SSH_SERVER_FOUND_OTHER);
@ -293,22 +293,22 @@ static void torture_knownhosts_other_auto(void **state) {
TORTURE_KNOWN_HOSTS_FILE);
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);
assert_int_equal(rc, SSH_OK);
assert_ssh_return_code(session, rc);
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ssh-ed25519");
assert_int_equal(rc, SSH_OK);
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ecdsa-sha2-nistp521");
assert_ssh_return_code(session, rc);
rc = ssh_connect(session);
assert_true(rc==SSH_OK);
assert_ssh_return_code(session, rc);
rc = ssh_is_server_known(session);
assert_int_equal(rc, SSH_SERVER_NOT_KNOWN);
rc = ssh_write_knownhost(session);
assert_int_equal(rc, SSH_OK);
assert_ssh_return_code(session, rc);
ssh_disconnect(session);
ssh_free(session);
@ -320,13 +320,13 @@ static void torture_knownhosts_other_auto(void **state) {
s->ssh.session = session;
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);
assert_int_equal(rc, SSH_OK);
assert_ssh_return_code(session, rc);
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 */
rc = ssh_is_server_known(session);
@ -349,13 +349,13 @@ static void torture_knownhosts_conflict(void **state) {
TORTURE_KNOWN_HOSTS_FILE);
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);
assert_int_equal(rc, SSH_OK);
assert_ssh_return_code(session, rc);
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ssh-rsa");
assert_int_equal(rc, SSH_OK);
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "rsa-sha2-256");
assert_ssh_return_code(session, rc);
file = fopen(known_hosts_file, "w");
assert_non_null(file);
@ -364,13 +364,13 @@ static void torture_knownhosts_conflict(void **state) {
fclose(file);
rc = ssh_connect(session);
assert_true(rc==SSH_OK);
assert_ssh_return_code(session, rc);
rc = ssh_is_server_known(session);
assert_int_equal(rc, SSH_SERVER_KNOWN_CHANGED);
rc = ssh_write_knownhost(session);
assert_true(rc==SSH_OK);
assert_ssh_return_code(session, rc);
ssh_disconnect(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_KNOWNHOSTS, known_hosts_file);
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "ssh-rsa");
assert_int_equal(rc, SSH_OK);
rc = ssh_options_set(session, SSH_OPTIONS_HOSTKEYS, "rsa-sha2-256");
assert_ssh_return_code(session, rc);
rc = ssh_connect(session);
assert_int_equal(rc, SSH_OK);
assert_ssh_return_code(session, rc);
rc = ssh_is_server_known(session);
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);
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);
rc = ssh_connect(session);

Просмотреть файл

@ -33,7 +33,7 @@
#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)
{
@ -273,7 +273,7 @@ static void torture_knownhosts_other(void **state)
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
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);
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);
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);
rc = ssh_connect(session);
@ -368,14 +368,14 @@ static void torture_knownhosts_conflict(void **state)
assert_non_null(file);
fprintf(file,
"127.0.0.10 %s %s\n",
"ssh-ed25519",
BAD_ED25519);
"ssh-rsa",
BAD_RSA);
fclose(file);
rc = ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, known_hosts_file);
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);
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);
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);
rc = ssh_connect(session);