From e38ff66a6285e788172b5c08afd3850ce6d87612 Mon Sep 17 00:00:00 2001 From: Stephan Bosch Date: Tue, 25 Sep 2018 02:18:24 +0200 Subject: [PATCH] submission: Add support for module contexts to recipient. --- src/submission/submission-recipient.c | 5 +++++ src/submission/submission-recipient.h | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/src/submission/submission-recipient.c b/src/submission/submission-recipient.c index 18e9e477be..840432e908 100644 --- a/src/submission/submission-recipient.c +++ b/src/submission/submission-recipient.c @@ -5,6 +5,9 @@ #include "submission-backend.h" #include "submission-recipient.h" +struct submission_recipient_module_register +submission_recipient_module_register = { 0 }; + struct submission_recipient * submission_recipient_create(struct client *client, struct smtp_address *path) { @@ -17,6 +20,8 @@ submission_recipient_create(struct client *client, struct smtp_address *path) rcpt->backend = client->state.backend; rcpt->path = path; + p_array_init(&rcpt->module_contexts, rcpt->pool, 5); + return rcpt; } diff --git a/src/submission/submission-recipient.h b/src/submission/submission-recipient.h index 7b59f7d286..57a4016513 100644 --- a/src/submission/submission-recipient.h +++ b/src/submission/submission-recipient.h @@ -11,7 +11,20 @@ struct submission_recipient { struct smtp_address *path; unsigned int index; + + /* Module-specific contexts. */ + ARRAY(union submission_recipient_module_context *) module_contexts; +}; + +struct submission_recipient_module_register { + unsigned int id; +}; + +union submission_recipient_module_context { + struct submission_recipient_module_register *reg; }; +extern struct submission_recipient_module_register +submission_recipient_module_register; struct submission_recipient * submission_recipient_create(struct client *client, struct smtp_address *path); -- 2.47.3