MODULE_CONTEXT_REQUIRE(obj, mail_crypt_storage_module)
#define MAIL_CRYPT_USER_CONTEXT(obj) \
MODULE_CONTEXT(obj, mail_crypt_user_module)
+#define MAIL_CRYPT_USER_CONTEXT_REQUIRE(obj) \
+ MODULE_CONTEXT_REQUIRE(obj, mail_crypt_user_module)
static MODULE_CONTEXT_DEFINE_INIT(mail_crypt_user_module,
&mail_user_module_register);
int ret;
struct mail *_mail = context;
struct mail_crypt_user *muser =
- MAIL_CRYPT_USER_CONTEXT(_mail->box->storage->user);
- i_assert(muser != NULL);
+ MAIL_CRYPT_USER_CONTEXT_REQUIRE(_mail->box->storage->user);
*priv_key_r = mail_crypt_global_key_find(&muser->global_keys,
pubkey_digest);
{
struct mail_private *mail = (struct mail_private *)_mail;
struct mail_user *user = _mail->box->storage->user;
- struct mail_crypt_user *muser = MAIL_CRYPT_USER_CONTEXT(user);
+ struct mail_crypt_user *muser = MAIL_CRYPT_USER_CONTEXT_REQUIRE(user);
struct mail_crypt_cache *cache = &muser->cache;
union mail_module_context *mmail = MAIL_CRYPT_MAIL_CONTEXT(mail);
struct istream *input;
struct mail_private *mail = (struct mail_private *)_mail;
union mail_module_context *mmail = MAIL_CRYPT_MAIL_CONTEXT(mail);
struct mail_crypt_user *muser =
- MAIL_CRYPT_USER_CONTEXT(_mail->box->storage->user);
+ MAIL_CRYPT_USER_CONTEXT_REQUIRE(_mail->box->storage->user);
struct mail_crypt_cache *cache = &muser->cache;
uoff_t size;
struct mailbox *box = ctx->transaction->box;
struct mail_crypt_mailbox *mbox = MAIL_CRYPT_CONTEXT(box);
struct mail_crypt_user *muser =
- MAIL_CRYPT_USER_CONTEXT(box->storage->user);
- i_assert(muser != NULL);
+ MAIL_CRYPT_USER_CONTEXT_REQUIRE(box->storage->user);
enum io_stream_encrypt_flags enc_flags;
if (muser->save_version == 1) {
{
struct mail_crypt_mailbox *mbox = MAIL_CRYPT_CONTEXT(box);
struct mail_crypt_user *muser =
- MAIL_CRYPT_USER_CONTEXT(box->storage->user);
+ MAIL_CRYPT_USER_CONTEXT_REQUIRE(box->storage->user);
if (mbox->pub_key != NULL)
dcrypt_key_unref_public(&mbox->pub_key);
static void mail_crypt_mail_user_deinit(struct mail_user *user)
{
- struct mail_crypt_user *muser = MAIL_CRYPT_USER_CONTEXT(user);
+ struct mail_crypt_user *muser = MAIL_CRYPT_USER_CONTEXT_REQUIRE(user);
mail_crypt_key_cache_destroy(&muser->key_cache);
mail_crypt_global_keys_free(&muser->global_keys);