aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/noscrypt.h4
-rw-r--r--include/noscryptutil.h13
2 files changed, 15 insertions, 2 deletions
diff --git a/include/noscrypt.h b/include/noscrypt.h
index 3702555..8ba71b0 100644
--- a/include/noscrypt.h
+++ b/include/noscrypt.h
@@ -156,7 +156,7 @@ typedef int64_t NCResult;
/*
An secp256k1 secret key (aka private key buffer)
*/
-typedef struct secret_key_struct {
+typedef struct nc_secret_key_struct {
uint8_t key[NC_SEC_KEY_SIZE];
@@ -165,7 +165,7 @@ typedef struct secret_key_struct {
/*
An x-only secp256k1 public key
*/
-typedef struct xonly_pubkey_struct {
+typedef struct nc_xonly_pubkey_struct {
uint8_t key[NC_PUBKEY_SIZE];
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