diff options
author | Aris Adamantiadis <aris@0xbadc0de.be> | 2019-10-19 23:41:06 +0200 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2019-12-23 14:31:32 +0100 |
commit | 177e76f7539aa9ba1769c2d46fd91fc776883dbe (patch) | |
tree | 7b9a88cd3ec4c478f1c6972ba78dd94971522104 | |
parent | 3d2570ff5ffa5be69df01dfcf46d1213a3acfbd4 (diff) | |
download | libssh-177e76f7539aa9ba1769c2d46fd91fc776883dbe.tar.gz libssh-177e76f7539aa9ba1769c2d46fd91fc776883dbe.tar.xz libssh-177e76f7539aa9ba1769c2d46fd91fc776883dbe.zip |
tests: search for netcat binary
Signed-off-by: Aris Adamantiadis <aris@0xbadc0de.be>
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
-rw-r--r-- | tests/client/torture_proxycommand.c | 17 | ||||
-rw-r--r-- | tests/tests_config.h.cmake | 4 | ||||
-rw-r--r-- | tests/torture.h | 1 |
3 files changed, 19 insertions, 3 deletions
diff --git a/tests/client/torture_proxycommand.c b/tests/client/torture_proxycommand.c index 91b2d836..e606d935 100644 --- a/tests/client/torture_proxycommand.c +++ b/tests/client/torture_proxycommand.c @@ -59,6 +59,7 @@ static int session_teardown(void **state) return 0; } +#ifdef NC_EXECUTABLE static void torture_options_set_proxycommand(void **state) { struct torture_state *s = *state; @@ -70,13 +71,13 @@ static void torture_options_set_proxycommand(void **state) int rc; socket_t fd; - rc = stat("/bin/nc", &sb); + rc = stat(NC_EXECUTABLE, &sb); if (rc != 0 || (sb.st_mode & S_IXOTH) == 0) { - SSH_LOG(SSH_LOG_WARNING, "Could not find /bin/nc: Skipping the test"); + SSH_LOG(SSH_LOG_WARNING, "Could not find " NC_EXECUTABLE ": Skipping the test"); skip(); } - rc = snprintf(command, sizeof(command), "/bin/nc %s %d", address, port); + rc = snprintf(command, sizeof(command), NC_EXECUTABLE " %s %d", address, port); assert_true((size_t)rc < sizeof(command)); rc = ssh_options_set(session, SSH_OPTIONS_PROXYCOMMAND, command); @@ -89,6 +90,16 @@ static void torture_options_set_proxycommand(void **state) assert_int_equal(rc & O_RDWR, O_RDWR); } +#else /* NC_EXECUTABLE */ + +static void torture_options_set_proxycommand(void **state) +{ + (void) state; + skip(); +} + +#endif /* NC_EXECUTABLE */ + static void torture_options_set_proxycommand_notexist(void **state) { struct torture_state *s = *state; ssh_session session = s->ssh.session; diff --git a/tests/tests_config.h.cmake b/tests/tests_config.h.cmake index 5c727759..ffaff946 100644 --- a/tests/tests_config.h.cmake +++ b/tests/tests_config.h.cmake @@ -61,3 +61,7 @@ #cmakedefine OPENSSH_ECDSA_SHA2_NISTP256_CERT_V01_OPENSSH_COM 1 #cmakedefine OPENSSH_ECDSA_SHA2_NISTP384_CERT_V01_OPENSSH_COM 1 #cmakedefine OPENSSH_ECDSA_SHA2_NISTP521_CERT_V01_OPENSSH_COM 1 + +/* Available programs */ + +#cmakedefine NC_EXECUTABLE "${NC_EXECUTABLE}" diff --git a/tests/torture.h b/tests/torture.h index da406cce..69a0139a 100644 --- a/tests/torture.h +++ b/tests/torture.h @@ -41,6 +41,7 @@ #include <cmocka.h> #include "torture_cmocka.h" +#include "tests_config.h" #ifndef assert_return_code /* hack for older versions of cmocka */ |