summaryrefslogtreecommitdiff
path: root/src/lib/crypt/openssl.c
diff options
context:
space:
mode:
authorDimitri Staessens <dimitri@ouroboros.rocks>2026-01-22 21:34:42 +0100
committerSander Vrijders <sander@ouroboros.rocks>2026-01-23 08:29:30 +0100
commitfb1aeb3ffff2948edeb710e65aef261b589c7403 (patch)
tree944843762ff07c6b19d4a7a12170fbe5357d75d0 /src/lib/crypt/openssl.c
parent47d786fbabe456acb2d89c898185366bc88bebbc (diff)
downloadouroboros-fb1aeb3ffff2948edeb710e65aef261b589c7403.tar.gz
ouroboros-fb1aeb3ffff2948edeb710e65aef261b589c7403.zip
lib: Fix allocation of IV and tags
The packet buffer was allocating a fixed header for the IV, but did not account for the tag at all (remnant of the old hardcoded CBC mode-only proof-of-concept). Never ran into issues because we always reserved ample space. But it now properly reserves the correct space for IV and tag. Signed-off-by: Dimitri Staessens <dimitri@ouroboros.rocks> Signed-off-by: Sander Vrijders <sander@ouroboros.rocks>
Diffstat (limited to 'src/lib/crypt/openssl.c')
-rw-r--r--src/lib/crypt/openssl.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/lib/crypt/openssl.c b/src/lib/crypt/openssl.c
index bd3f1239..5eee2a13 100644
--- a/src/lib/crypt/openssl.c
+++ b/src/lib/crypt/openssl.c
@@ -996,6 +996,20 @@ void openssl_crypt_destroy_ctx(struct ossl_crypt_ctx * ctx)
free(ctx);
}
+int openssl_crypt_get_ivsz(struct ossl_crypt_ctx * ctx)
+{
+ assert(ctx != NULL);
+
+ return ctx->ivsz;
+}
+
+int openssl_crypt_get_tagsz(struct ossl_crypt_ctx * ctx)
+{
+ assert(ctx != NULL);
+
+ return ctx->tagsz;
+}
+
/* AUTHENTICATION */
int openssl_load_crt_file(const char * path,