aboutsummaryrefslogtreecommitdiffstats
path: root/src/libutil/http.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libutil/http.c')
-rw-r--r--src/libutil/http.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/libutil/http.c b/src/libutil/http.c
index 81771987d..23db6b3a3 100644
--- a/src/libutil/http.c
+++ b/src/libutil/http.c
@@ -1612,6 +1612,20 @@ rspamd_http_connection_make_key (gchar *key, gsize keylen)
return FALSE;
}
+gpointer
+rspamd_http_connection_gen_key (void)
+{
+ struct rspamd_http_keypair *kp;
+
+ kp = g_slice_alloc (sizeof (*kp));
+ REF_INIT_RETAIN (kp, rspamd_http_keypair_dtor);
+
+ crypto_box_keypair (kp->pk, kp->sk);
+ blake2b (kp->id, kp->pk, NULL, sizeof (kp->id), sizeof (kp->pk), 0);
+
+ return (gpointer)kp;
+}
+
void
rspamd_http_connection_set_key (struct rspamd_http_connection *conn,
gpointer key)