From 58c3b3fadaade4d32d765d4adebe21e93d5c7d6b Mon Sep 17 00:00:00 2001 From: "Alexander \"Arav\" Andreev" Date: Mon, 25 Mar 2024 03:59:38 +0400 Subject: [PATCH] A handshake fix in main(): No, actually, NOW we're secure. :) --- src/main.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/main.c b/src/main.c index a7937fe..130e7a0 100644 --- a/src/main.c +++ b/src/main.c @@ -1,5 +1,6 @@ #include #include +#include #include #include #include @@ -24,6 +25,7 @@ int main(int argc, char **argv) { unsigned char hlr[CRYPT_HELLO_LEN], hrl[CRYPT_HELLO_LEN]; unsigned char *nonce; net_t nl, nr; + crypt_session_t sl, sr; const int incom_len = 512; char incom[incom_len]; @@ -148,6 +150,18 @@ int main(int argc, char **argv) { goto cleanup; } + if (crypt_session_init(&sl, &kl, &kr, nonce, true) == -1) { + fprintf(stderr, "local session init fail\n"); + ret = -1; + goto cleanup; + } + + if (crypt_session_init(&sr, &kr, &kl, nonce, false) == -1) { + fprintf(stderr, "remote session init fail\n"); + ret = -1; + goto cleanup; + } + /* Now we're talking securely! */ @@ -159,6 +173,9 @@ cleanup: crypt_key_destroy(&kl); crypt_key_destroy(&kr); + crypt_session_destroy(&sl); + crypt_session_destroy(&sr); + free(hl); free(hr); free(nonce);