aboutsummaryrefslogtreecommitdiff
path: root/brandt.c
diff options
context:
space:
mode:
authorMarkus Teich <markus.teich@stusta.mhn.de>2016-06-12 20:52:22 +0200
committerMarkus Teich <markus.teich@stusta.mhn.de>2016-06-12 20:52:22 +0200
commit62b87e57a7f7042d27fe0a80b9194aeae0c14a50 (patch)
tree961a43363dbca413e4b1e65b367c0ffd553cfaf0 /brandt.c
parent5957a777076d014b17aada25afe0991397edbacc (diff)
add tests for key generation
Diffstat (limited to 'brandt.c')
-rw-r--r--brandt.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/brandt.c b/brandt.c
new file mode 100644
index 0000000..dd88643
--- /dev/null
+++ b/brandt.c
@@ -0,0 +1,27 @@
+
+#include <gcrypt.h>
+
+#include "crypto.h"
+#include "util.h"
+
+void BRANDT_init ()
+{
+ gcry_error_t err = 0;
+ if (!gcry_check_version("1.6.0")) {
+ eprintf("libgcrypt version mismatch");
+ }
+
+ /* SECMEM cannot be resized dynamically. We do not know how much we need */
+ if ((err = gcry_control(GCRYCTL_DISABLE_SECMEM, 0)))
+ weprintf("failed to set libgcrypt option DISABLE_SECMEM: %s",
+ gcry_strerror(err));
+
+ /* ecc is slow otherwise. */
+ if ((err = gcry_control(GCRYCTL_ENABLE_QUICK_RANDOM, 0)))
+ weprintf("failed to set libgcrypt option ENABLE_QUICK_RANDOM: %s",
+ gcry_strerror(err));
+
+ gcry_control(GCRYCTL_INITIALIZATION_FINISHED, 0);
+ brandt_rand_poll();
+ brandt_crypto_init();
+}