aboutsummaryrefslogtreecommitdiff
path: root/tests/unittests/torture_pki.c
diff options
context:
space:
mode:
authorAndreas Schneider <asn@cryptomilk.org>2018-01-08 21:47:56 +0100
committerAndreas Schneider <asn@cryptomilk.org>2018-01-10 22:24:11 +0100
commitfd2ef07f372819e4eccbd85b7a0388c9c41eb31d (patch)
tree9d1e5f54f8ad98f6939934f4ee915290d799b3fc /tests/unittests/torture_pki.c
parente19163eabb035ccc4c4c6578dd6fc896c39f23a2 (diff)
downloadlibssh-fd2ef07f372819e4eccbd85b7a0388c9c41eb31d.tar.gz
libssh-fd2ef07f372819e4eccbd85b7a0388c9c41eb31d.tar.xz
libssh-fd2ef07f372819e4eccbd85b7a0388c9c41eb31d.zip
tests: Move helper functions to a common file
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'tests/unittests/torture_pki.c')
-rw-r--r--tests/unittests/torture_pki.c75
1 files changed, 6 insertions, 69 deletions
diff --git a/tests/unittests/torture_pki.c b/tests/unittests/torture_pki.c
index 5493ae3f..350c6b09 100644
--- a/tests/unittests/torture_pki.c
+++ b/tests/unittests/torture_pki.c
@@ -3,6 +3,7 @@
#define LIBSSH_STATIC
#include "torture.h"
+#include "torture_pki.h"
#include "pki.c"
#include <sys/stat.h>
#include <fcntl.h>
@@ -133,70 +134,6 @@ static int teardown(void **state) {
return 0;
}
-static char *read_file(const char *filename) {
- char *key;
- int fd;
- int size;
- int rc;
- struct stat sb;
-
- assert_true(filename != NULL);
- assert_true(*filename != '\0');
-
- fd = open(filename, O_RDONLY);
- assert_true(fd >= 0);
-
- rc = fstat(fd, &sb);
- assert_int_equal(rc, 0);
-
- key = malloc(sb.st_size + 1);
- assert_true(key != NULL);
-
- size = read(fd, key, sb.st_size);
- assert_true(size == sb.st_size);
-
- close(fd);
-
- key[size] = '\0';
- return key;
-}
-
-static int torture_read_one_line(const char *filename, char *buffer, size_t len) {
- FILE *fp;
- size_t nmemb;
-
- fp = fopen(filename, "r");
- if (fp == NULL) {
- return -1;
- }
-
- nmemb = fread(buffer, len - 2, 1, fp);
- if (nmemb != 0 || ferror(fp)) {
- fclose(fp);
- return -1;
- }
- buffer[len - 1] = '\0';
-
- fclose(fp);
-
- return 0;
-}
-
-/** @internal
- * returns the character len of a public key string, omitting the comment part
- */
-static int torture_pubkey_len(const char *pubkey){
- const char *ptr;
- ptr=strchr(pubkey, ' ');
- if (ptr != NULL){
- ptr = strchr(ptr + 1, ' ');
- if (ptr != NULL){
- return ptr - pubkey;
- }
- }
- return 0;
-}
-
static void torture_pki_keytype(void **state) {
enum ssh_keytypes_e type;
const char *type_c;
@@ -240,7 +177,7 @@ static void torture_pki_import_privkey_base64_RSA(void **state) {
(void) state; /* unused */
- key_str = read_file(LIBSSH_RSA_TESTKEY);
+ key_str = torture_pki_read_file(LIBSSH_RSA_TESTKEY);
assert_true(key_str != NULL);
rc = ssh_pki_import_privkey_base64(key_str, passphrase, NULL, NULL, &key);
@@ -317,7 +254,7 @@ static void torture_pki_import_privkey_base64_ECDSA(void **state) {
(void) state; /* unused */
- key_str = read_file(LIBSSH_ECDSA_TESTKEY);
+ key_str = torture_pki_read_file(LIBSSH_ECDSA_TESTKEY);
assert_true(key_str != NULL);
rc = ssh_pki_import_privkey_base64(key_str, passphrase, NULL, NULL, &key);
@@ -442,7 +379,7 @@ static void torture_pki_import_privkey_base64_ed25519(void **state){
(void) state; /* unused */
- key_str = read_file(LIBSSH_ED25519_TESTKEY);
+ key_str = torture_pki_read_file(LIBSSH_ED25519_TESTKEY);
assert_true(key_str != NULL);
rc = ssh_pki_import_privkey_base64(key_str, passphrase, NULL, NULL, &key);
@@ -549,7 +486,7 @@ static void torture_pki_publickey_from_privatekey_ECDSA(void **state) {
(void) state; /* unused */
- key_str = read_file(LIBSSH_ECDSA_TESTKEY);
+ key_str = torture_pki_read_file(LIBSSH_ECDSA_TESTKEY);
assert_true(key_str != NULL);
rc = ssh_pki_import_privkey_base64(key_str, passphrase, NULL, NULL, &key);
@@ -705,7 +642,7 @@ static void torture_pki_publickey_ecdsa_base64(void **state)
(void) state; /* unused */
- key_buf = read_file(LIBSSH_ECDSA_TESTKEY ".pub");
+ key_buf = torture_pki_read_file(LIBSSH_ECDSA_TESTKEY ".pub");
assert_true(key_buf != NULL);
q = p = key_buf;