Mercurial > dovecot > core-2.2
view src/lib-dcrypt/istream-decrypt.h @ 22638:7d5634889da8
lib: net_ip2addr() - Optimize by allocating destination memory immediately
It doesn't really matter if we allocate a few extra bytes.
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Sat, 04 Nov 2017 01:42:37 +0200 |
parents | 261d2ff2e173 |
children |
line wrap: on
line source
#ifndef ISTREAM_DECRYPT_H #define ISTREAM_DECRYPT_H struct dcrypt_private_key; struct dcrypt_context_symmetric; enum decrypt_istream_format { DECRYPT_FORMAT_V1, DECRYPT_FORMAT_V2 }; /* Look for a private key for a specified public key digest and set it to priv_key_r. Returns 1 if ok, 0 if key doesn't exist, -1 on internal error. */ typedef int i_stream_decrypt_get_key_callback_t(const char *pubkey_digest, struct dcrypt_private_key **priv_key_r, const char **error_r, void *context); struct istream * i_stream_create_decrypt(struct istream *input, struct dcrypt_private_key *priv_key); /* create stream for reading plain encrypted data with no header or MAC. do not call dcrypt_ctx_sym_init */ struct istream * i_stream_create_sym_decrypt(struct istream *input, struct dcrypt_context_symmetric *ctx); /* Decrypt the istream. When a private key is needed, the callback will be called. This allows using multiple private keys for different mails. */ struct istream * i_stream_create_decrypt_callback(struct istream *input, i_stream_decrypt_get_key_callback_t *callback, void *context); enum decrypt_istream_format i_stream_encrypt_get_format(const struct istream *input); enum io_stream_encrypt_flags i_stream_encrypt_get_flags(const struct istream *input); #endif