notmuch/util/crypto.h
Daniel Kahn Gillmor d137170b23 crypto: record whether an actual decryption attempt happened
In our consolidation of _notmuch_crypto_decrypt, the callers lost
track a little bit of whether any actual decryption was attempted.

Now that we have the more-subtle "auto" policy, it's possible that
_notmuch_crypto_decrypt could be called without having any actual
decryption take place.

This change lets the callers be a little bit smarter about whether or
not any decryption was actually attempted.
2017-12-08 08:08:46 -04:00

37 lines
866 B
C

#ifndef _CRYPTO_H
#define _CRYPTO_H
#include <stdbool.h>
#include "gmime-extra.h"
#include "notmuch.h"
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);
#endif