aboutsummaryrefslogtreecommitdiff
path: root/include/noscryptutil.h
diff options
context:
space:
mode:
authorLibravatar vnugent <public@vaughnnugent.com>2024-08-28 19:54:45 -0400
committerLibravatar vnugent <public@vaughnnugent.com>2024-08-28 19:54:45 -0400
commitde9741b417ee04a54512af106b71cf388c93ea9d (patch)
treed0f2d129d6db16f635c538217ac8fb856f3225be /include/noscryptutil.h
parent85c48ba24c34277ecaeb4ab513bd195a350cee2a (diff)
feat: add library context alloc util functions
Diffstat (limited to 'include/noscryptutil.h')
-rw-r--r--include/noscryptutil.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/noscryptutil.h b/include/noscryptutil.h
index 63e08f8..ea5dad0 100644
--- a/include/noscryptutil.h
+++ b/include/noscryptutil.h
@@ -78,6 +78,19 @@ NC_EXPORT NCResult NC_CC NCUtilGetEncryptionPaddedSize(uint32_t encVersion, uint
NC_EXPORT NCResult NC_CC NCUtilGetEncryptionBufferSize(uint32_t encVersion, uint32_t plaintextSize);
/*
+* Allocates a new library context structure dynamically on the heap and returns a pointer to
+* it. The library context must be freed with NCUtilContextFree when it is no longer needed.
+* @return A valid pointer to a new library context or NULL if the operation failed
+*/
+NC_EXPORT NCContext* NC_CC NCUtilContextAlloc(void);
+
+/*
+* Frees the library context structure and clears the memory it points to.
+* @param ctx A valid pointer to a library context memory
+*/
+NC_EXPORT void NC_CC NCUtilContextFree(NCContext* ctx);
+
+/*
* Allocates a new encryption context and sets the encryption version and flags. The encryption context
* must be freed with NCUtilCipherFree when it is no longer needed.
* @param encVersion The encryption specification version to use