mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-21 18:38:08 +01:00
152b6cac5d
libnotmuch_util.a is supposed to be usable from the library and the CLI, but much the library is compiled as C++. Add in appropriate wrapping to prevent symbol mangling. These wrappers already existed in string-util.h; it seems better to be consistent.
44 lines
934 B
C
44 lines
934 B
C
#ifndef _CRYPTO_H
|
|
#define _CRYPTO_H
|
|
|
|
#include <stdbool.h>
|
|
#include "gmime-extra.h"
|
|
#include "notmuch.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef struct _notmuch_crypto {
|
|
bool verify;
|
|
notmuch_decryption_policy_t decrypt;
|
|
#if (GMIME_MAJOR_VERSION < 3)
|
|
GMimeCryptoContext* gpgctx;
|
|
GMimeCryptoContext* pkcs7ctx;
|
|
const char *gpgpath;
|
|
#endif
|
|
} _notmuch_crypto_t;
|
|
|
|
GMimeObject *
|
|
_notmuch_crypto_decrypt (bool *attempted,
|
|
notmuch_decryption_policy_t decrypt,
|
|
notmuch_message_t *message,
|
|
GMimeCryptoContext* crypto_ctx,
|
|
GMimeMultipartEncrypted *part,
|
|
GMimeDecryptResult **decrypt_result,
|
|
GError **err);
|
|
|
|
#if (GMIME_MAJOR_VERSION < 3)
|
|
notmuch_status_t
|
|
_notmuch_crypto_get_gmime_ctx_for_protocol (_notmuch_crypto_t *crypto,
|
|
const char *protocol,
|
|
GMimeCryptoContext **ctx);
|
|
#endif
|
|
|
|
void
|
|
_notmuch_crypto_cleanup (_notmuch_crypto_t *crypto);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif
|