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 \
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 \
#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
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));
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));
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 */
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));
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);
/**
* @defgroup libtest libtest
*
+ * @defgroup test_utils test_utils
+ * @ingroup libtest
+ *
* @defgroup test_runner test_runner
* @{ @ingroup libtest
*/
* 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)
{
}
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)
{
}
METHOD(rng_t, destroy, void,
- private_ntru_test_rng_t *this)
+ private_rng_t *this)
{
free(this);
}
/*
* 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;
}
-
*/
/**
- * @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_ @} */