diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 17:36:47 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 17:36:47 +0000 |
commit | 0441d265f2bb9da249c7abf333f0f771fadb4ab5 (patch) | |
tree | 3f3789daa2f6db22da6e55e92bee0062a7d613fe /src/lmtp/lmtp-recipient.h | |
parent | Initial commit. (diff) | |
download | dovecot-0441d265f2bb9da249c7abf333f0f771fadb4ab5.tar.xz dovecot-0441d265f2bb9da249c7abf333f0f771fadb4ab5.zip |
Adding upstream version 1:2.3.21+dfsg1.upstream/1%2.3.21+dfsg1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/lmtp/lmtp-recipient.h')
-rw-r--r-- | src/lmtp/lmtp-recipient.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/src/lmtp/lmtp-recipient.h b/src/lmtp/lmtp-recipient.h new file mode 100644 index 0000000..d760440 --- /dev/null +++ b/src/lmtp/lmtp-recipient.h @@ -0,0 +1,48 @@ +#ifndef LMTP_RECIPIENT_H +#define LMTP_RECIPIENT_H + +struct smtp_address; +struct smtp_server_cmd_ctx; +struct smtp_server_cmd_rcpt; +struct smtp_server_recipient; +union lmtp_recipient_module_context; +struct client; + +enum lmtp_recipient_type { + LMTP_RECIPIENT_TYPE_LOCAL, + LMTP_RECIPIENT_TYPE_PROXY, +}; + +struct lmtp_recipient { + struct client *client; + struct smtp_server_recipient *rcpt; + + enum lmtp_recipient_type type; + void *backend_context; + + const char *session_id; + const char *forward_fields; + + /* Module-specific contexts. */ + ARRAY(union lmtp_recipient_module_context *) module_contexts; +}; + +struct lmtp_recipient_module_register { + unsigned int id; +}; + +union lmtp_recipient_module_context { + struct lmtp_recipient_module_register *reg; +}; +extern struct lmtp_recipient_module_register lmtp_recipient_module_register; + +struct lmtp_recipient * +lmtp_recipient_create(struct client *client, + struct smtp_server_transaction *trans, + struct smtp_server_recipient *rcpt); + +struct lmtp_recipient * +lmtp_recipient_find_duplicate(struct lmtp_recipient *lrcpt, + struct smtp_server_transaction *trans); + +#endif |