about summary refs log tree commit diff stats
path: root/src/omemo/omemo.h
diff options
context:
space:
mode:
authorWilliam Wennerström <william@wstrm.dev>2020-07-20 22:49:50 +0200
committerWilliam Wennerström <william@wstrm.dev>2020-11-16 21:58:09 +0100
commit73f313b9212d652fecb13bcb82a0f162abb897a0 (patch)
tree79556fb956301732e66c58196e4b685e87718792 /src/omemo/omemo.h
parentfb002a59b6dd0e2656987e9bdb72f6d3478d4e97 (diff)
downloadprofani-tty-73f313b9212d652fecb13bcb82a0f162abb897a0.tar.gz
Refactor OMEMO download into AESGCMDownload tool
Diffstat (limited to 'src/omemo/omemo.h')
-rw-r--r--src/omemo/omemo.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/omemo/omemo.h b/src/omemo/omemo.h
index e875dadd..a0e89916 100644
--- a/src/omemo/omemo.h
+++ b/src/omemo/omemo.h
@@ -40,7 +40,9 @@
 #define OMEMO_ERR_UNSUPPORTED_CRYPTO -10000
 #define OMEMO_ERR_GCRYPT             -20000
 
-#define OMEMO_AESGCM_URL_SCHEME "aesgcm"
+#define OMEMO_AESGCM_NONCE_LENGTH 12
+#define OMEMO_AESGCM_KEY_LENGTH   32
+#define OMEMO_AESGCM_URL_SCHEME   "aesgcm"
 
 typedef enum {
     PROF_OMEMOPOLICY_MANUAL,
@@ -99,4 +101,6 @@ char* omemo_on_message_send(ProfWin* win, const char* const message, gboolean re
 char* omemo_on_message_recv(const char* const from, uint32_t sid, const unsigned char* const iv, size_t iv_len, GList* keys, const unsigned char* const payload, size_t payload_len, gboolean muc, gboolean* trusted);
 
 char* omemo_encrypt_file(FILE* in, FILE* out, off_t file_size, int* gcry_res);
+int omemo_decrypt_file(FILE* in, FILE* out, off_t file_size, const char* fragment);
 void omemo_free(void* a);
+int omemo_parse_aesgcm_url(const char* aesgcm_url, char** https_url, char** fragment);