]> git.ipfire.org Git - thirdparty/strongswan.git/commitdiff
unit-tests: Move ntru_test_rng_t to a utility class in libtest
authorTobias Brunner <tobias@strongswan.org>
Thu, 28 Nov 2013 17:00:33 +0000 (18:00 +0100)
committerAndreas Steffen <andreas.steffen@strongswan.org>
Wed, 4 Dec 2013 19:32:59 +0000 (20:32 +0100)
src/libstrongswan/plugins/ntru/Makefile.am
src/libstrongswan/tests/Makefile.am
src/libstrongswan/tests/suites/test_ntru.c
src/libstrongswan/tests/test_runner.h
src/libstrongswan/tests/utils/test_rng.c [moved from src/libstrongswan/plugins/ntru/ntru_test_rng.c with 67% similarity]
src/libstrongswan/tests/utils/test_rng.h [moved from src/libstrongswan/plugins/ntru/ntru_test_rng.h with 65% similarity]

index 8e4b87812ebafe2a65e6d2c8abb2b2e61b0d5ac6..b11c08132033065cf6bc8ffdf3dc48a407769a58 100644 (file)
@@ -14,7 +14,6 @@ libstrongswan_ntru_la_SOURCES = \
        ntru_plugin.h ntru_plugin.c \
        ntru_drbg.h ntru_drbg.c \
        ntru_ke.h ntru_ke.c \
-       ntru_test_rng.h ntru_test_rng.c \
        ntru_crypto/ntru_crypto.h ntru_crypto/ntru_crypto_error.h \
        ntru_crypto/ntru_crypto_ntru_convert.h \
        ntru_crypto/ntru_crypto_ntru_convert.c \
index 81a80501088ea6f16a6326d04ccbfad49485fc3b..39e03092ea464dcc5760f8a11c30fb18f56d22c8 100644 (file)
@@ -2,7 +2,8 @@ check_LTLIBRARIES = libtest.la
 
 libtest_la_SOURCES = \
   test_suite.c test_suite.h \
-  test_runner.c test_runner.h
+  test_runner.c test_runner.h \
+  utils/test_rng.c utils/test_rng.h
 
 libtest_la_CFLAGS = \
   -I$(top_srcdir)/src/libstrongswan \
index 8dd22a5e4c665ab06b6408234fa2526e50694d00..600e159cbec21093714de0d85bd76682a1d7f0f7 100644 (file)
@@ -15,8 +15,8 @@
 
 #include "test_suite.h"
 
+#include <tests/utils/test_rng.h>
 #include <plugins/ntru/ntru_drbg.h>
-#include <plugins/ntru/ntru_test_rng.h>
 
 /**
  * NTRU parameter sets to test
@@ -47,7 +47,7 @@ START_TEST(test_ntru_test_rng)
        in2 = chunk_from_chars(0x07, 0x08);
        in = chunk_cat("cc", in1, in2);
 
-       entropy = ntru_test_rng_create(in);
+       entropy = test_rng_create(in);
        ck_assert(entropy->allocate_bytes(entropy, 6, &out));
        ck_assert(chunk_equals(in1, out));
        ck_assert(entropy->get_bytes(entropy, 2, out.ptr));
@@ -241,7 +241,7 @@ START_TEST(test_ntru_drbg)
        chunk_t out;
 
        out = chunk_alloc(128);
-       entropy = ntru_test_rng_create(drbg_tests[_i].entropy);
+       entropy = test_rng_create(drbg_tests[_i].entropy);
        drbg = ntru_drbg_create(256, drbg_tests[_i].pers_str, entropy);
        ck_assert(drbg != NULL);
        ck_assert(drbg->reseed(drbg));
@@ -263,7 +263,7 @@ START_TEST(test_ntru_drbg_reseed)
        lib->settings->set_int(lib->settings,
                                                  "libstrongswan.plugins.ntru.max_drbg_requests", 2);
        out = chunk_alloc(128);
-       entropy = ntru_test_rng_create(drbg_tests[0].entropy);
+       entropy = test_rng_create(drbg_tests[0].entropy);
        drbg = ntru_drbg_create(256, chunk_empty, entropy);
 
        /* bad output parameters */
@@ -287,7 +287,7 @@ START_TEST(test_ntru_drbg_reseed)
        entropy->destroy(entropy);
 
        /* one automatic reseeding occurs */
-       entropy = ntru_test_rng_create(drbg_tests[0].entropy);
+       entropy = test_rng_create(drbg_tests[0].entropy);
        drbg = ntru_drbg_create(256, chunk_empty, entropy);
        ck_assert(drbg->generate(drbg, 256, 128, out.ptr));
        ck_assert(drbg->generate(drbg, 256, 128, out.ptr));
@@ -311,7 +311,7 @@ START_TEST(test_ntru_ke)
        char buf[10];
        int n, len;
        status_t status;
-       
+
        len = snprintf(buf, sizeof(buf), "%N", diffie_hellman_group_names,
                                   params[_i].group);
        ck_assert(len == 8);
index 265189812238bc0ab7edfaf936c542a9a08767b2..c895c130ebe3e7007619ccf6fb6f43e0ff29f092 100644 (file)
@@ -16,6 +16,9 @@
 /**
  * @defgroup libtest libtest
  *
+ * @defgroup test_utils test_utils
+ * @ingroup libtest
+ *
  * @defgroup test_runner test_runner
  * @{ @ingroup libtest
  */
similarity index 67%
rename from src/libstrongswan/plugins/ntru/ntru_test_rng.c
rename to src/libstrongswan/tests/utils/test_rng.c
index 82eae1558ca37481f38322e06194acdca958a385..01569509bd467521fac09d58a40e25220745bbbe 100644 (file)
  * for more details.
  */
 
-#include "ntru_test_rng.h"
+#include "test_rng.h"
 
-typedef struct private_ntru_test_rng_t private_ntru_test_rng_t;
+typedef struct private_rng_t private_rng_t;
 
 /**
- * Private data of an ntru_test_rng_t object.
+ * Private data.
  */
-struct private_ntru_test_rng_t {
+struct private_rng_t {
 
        /**
-        * Public ntru_test_rng_t interface.
+        * Public interface.
         */
-       ntru_test_rng_t public;
+       rng_t public;
 
        /**
-        * entropy string
+        * Entropy string.
         */
        chunk_t entropy;
 };
 
 METHOD(rng_t, get_bytes, bool,
-       private_ntru_test_rng_t *this, size_t bytes, u_int8_t *buffer)
+       private_rng_t *this, size_t bytes, u_int8_t *buffer)
 {
        if (bytes > this->entropy.len)
        {
@@ -46,7 +46,7 @@ METHOD(rng_t, get_bytes, bool,
 }
 
 METHOD(rng_t, allocate_bytes, bool,
-       private_ntru_test_rng_t *this, size_t bytes, chunk_t *chunk)
+       private_rng_t *this, size_t bytes, chunk_t *chunk)
 {
        if (bytes > this->entropy.len)
        {
@@ -61,7 +61,7 @@ METHOD(rng_t, allocate_bytes, bool,
 }
 
 METHOD(rng_t, destroy, void,
-       private_ntru_test_rng_t *this)
+       private_rng_t *this)
 {
        free(this);
 }
@@ -69,21 +69,18 @@ METHOD(rng_t, destroy, void,
 /*
  * Described in header.
  */
-rng_t *ntru_test_rng_create(chunk_t entropy)
+rng_t *test_rng_create(chunk_t entropy)
 {
-       private_ntru_test_rng_t *this;
+       private_rng_t *this;
 
        INIT(this,
                .public = {
-                       .rng = {
-                               .get_bytes = _get_bytes,
-                               .allocate_bytes = _allocate_bytes,
-                               .destroy = _destroy,
-                       },
+                       .get_bytes = _get_bytes,
+                       .allocate_bytes = _allocate_bytes,
+                       .destroy = _destroy,
                },
                .entropy = entropy,
        );
 
-       return &this->public.rng;
+       return &this->public;
 }
-
similarity index 65%
rename from src/libstrongswan/plugins/ntru/ntru_test_rng.h
rename to src/libstrongswan/tests/utils/test_rng.h
index 75962a7e6978a2e71121a2900a3353030c171118..e588f3be7e9138b3a6a4f09275cbf1ef71d301c9 100644 (file)
  */
 
 /**
- * @defgroup ntru_test_rng ntru_test_rng
- * @{ @ingroup ntru_p
+ * rng_t providing NIST SP 800-90A entropy test vectors
+ *
+ * @defgroup test_rng test_rng
+ * @{ @ingroup test_utils
  */
 
-#ifndef NTRU_TEST_RNG_H_
-#define NTRU_TEST_RNG_H_
-
-typedef struct ntru_test_rng_t ntru_test_rng_t;
+#ifndef TEST_RNG_H_
+#define TEST_RNG_H_
 
 #include <library.h>
 
 /**
- * rng_t providing NIST SP 800-90A entropy test vectors
- */
-struct ntru_test_rng_t {
-
-       /**
-        * Implements rng_t.
-        */
-       rng_t rng;
-};
-
-/**
- * Creates an ntru_test_rng_t instance.
+ * Creates a test_rng_t instance.
  *
  * @param entropy      entropy test vector
- * @return                     created ntru_test_rng_t
+ * @return                     created test_rng_t
  */
-rng_t *ntru_test_rng_create(chunk_t entropy);
+rng_t *test_rng_create(chunk_t entropy);
 
-#endif /** NTRU_TEST_RNG_H_ @} */
+#endif /** TEST_RNG_H_ @} */