diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2019-07-08 17:41:31 +0100 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2019-07-08 17:41:31 +0100 |
commit | 9026da71bb262886a275a3e24b1db51ab3395240 (patch) | |
tree | 6050f1a73472b3251b9fd18db7e8c96a7cca276c /src/libserver | |
parent | c271eb36656a4ff88a9c8c1d59934949260275a3 (diff) | |
download | rspamd-9026da71bb262886a275a3e24b1db51ab3395240.tar.gz rspamd-9026da71bb262886a275a3e24b1db51ab3395240.zip |
[Rework] Use libsodium instead of hand crafted crypto implementations
Diffstat (limited to 'src/libserver')
-rw-r--r-- | src/libserver/dkim.c | 3 | ||||
-rw-r--r-- | src/libserver/re_cache.c | 7 |
2 files changed, 6 insertions, 4 deletions
diff --git a/src/libserver/dkim.c b/src/libserver/dkim.c index 2f1bef701..9386c5cdc 100644 --- a/src/libserver/dkim.c +++ b/src/libserver/dkim.c @@ -21,7 +21,6 @@ #include "utlist.h" #include "unix-std.h" #include "mempool_vars_internal.h" -#include "libcryptobox/ed25519/ed25519.h" #include <openssl/evp.h> #include <openssl/rsa.h> @@ -2763,7 +2762,7 @@ rspamd_dkim_sign_key_load (const gchar *key, gsize len, nkey->type = RSPAMD_DKIM_KEY_EDDSA; nkey->key.key_eddsa = g_malloc ( rspamd_cryptobox_sk_sig_bytes (RSPAMD_CRYPTOBOX_MODE_25519)); - ed25519_seed_keypair (pk, nkey->key.key_eddsa, (char *) key); + crypto_sign_ed25519_seed_keypair (pk, nkey->key.key_eddsa, key); nkey->keylen = rspamd_cryptobox_sk_sig_bytes (RSPAMD_CRYPTOBOX_MODE_25519); } else { diff --git a/src/libserver/re_cache.c b/src/libserver/re_cache.c index 9e0d55485..5377e77ae 100644 --- a/src/libserver/re_cache.c +++ b/src/libserver/re_cache.c @@ -31,6 +31,7 @@ #include "hs.h" #include "unix-std.h" #include <signal.h> +#include <stdalign.h> #ifndef WITH_PCRE2 #include <pcre.h> @@ -385,7 +386,9 @@ rspamd_re_cache_init (struct rspamd_re_cache *cache, struct rspamd_config *cfg) rspamd_regexp_set_cache_id (re, i); if (re_class->st == NULL) { - re_class->st = g_malloc (sizeof (*re_class->st)); + posix_memalign ((void **)&re_class->st, alignof (rspamd_cryptobox_hash_state_t), + sizeof (*re_class->st)); + g_assert (re_class->st != NULL); rspamd_cryptobox_hash_init (re_class->st, NULL, 0); } @@ -447,7 +450,7 @@ rspamd_re_cache_init (struct rspamd_re_cache *cache, struct rspamd_config *cfg) rspamd_cryptobox_hash_final (re_class->st, hash_out); rspamd_snprintf (re_class->hash, sizeof (re_class->hash), "%*xs", (gint) rspamd_cryptobox_HASHBYTES, hash_out); - g_free (re_class->st); + free (re_class->st); /* Due to posix_memalign */ re_class->st = NULL; } } |