Refactor OMEMO download into AESGCMDownload tool

This commit is contained in:
William Wennerström
2020-07-20 22:49:50 +02:00
parent fb002a59b6
commit 73f313b921
12 changed files with 386 additions and 23 deletions

View File

@@ -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);