summaryrefslogtreecommitdiff
path: root/src/libsodium/sodium/core.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libsodium/sodium/core.c')
-rw-r--r--src/libsodium/sodium/core.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/libsodium/sodium/core.c b/src/libsodium/sodium/core.c
new file mode 100644
index 0000000..652f31e
--- /dev/null
+++ b/src/libsodium/sodium/core.c
@@ -0,0 +1,23 @@
+
+#include "core.h"
+#include "crypto_onetimeauth.h"
+#include "randombytes.h"
+#include "runtime.h"
+
+static int initialized;
+
+int
+sodium_init(void)
+{
+ if (initialized != 0) {
+ return 1;
+ }
+ sodium_runtime_get_cpu_features();
+ if (crypto_onetimeauth_pick_best_implementation() == NULL) {
+ return -1;
+ }
+ randombytes_stir();
+ initialized = 1;
+
+ return 0;
+}