]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
auth: sasl-server - Define core request struct
authorStephan Bosch <stephan.bosch@open-xchange.com>
Sun, 29 Oct 2023 14:37:16 +0000 (15:37 +0100)
committertimo.sirainen <timo.sirainen@open-xchange.com>
Thu, 9 Oct 2025 08:41:22 +0000 (08:41 +0000)
src/auth/sasl-server-private.h
src/auth/sasl-server-protected.h
src/auth/sasl-server-request.c

index a19d3421ebfa223f9c38831dc7599c49b5b773a6..b234384a177ebe5ee3dc65b8a252e88b8a845e64 100644 (file)
@@ -3,4 +3,8 @@
 
 #include "sasl-server-protected.h"
 
+struct sasl_server_request {
+       struct sasl_server_mech_request *mech;
+};
+
 #endif
index 1022ce5aa4f952298ce37e0d35364bd8a05f6a2b..459da9272e7f891849d8c6117c83a5b670235940 100644 (file)
@@ -53,6 +53,7 @@ struct mechanisms_register {
 struct sasl_server_mech_request {
        pool_t pool;
        const struct sasl_server_mech_def *mech;
+       struct sasl_server_request *req;
        struct event *mech_event;
 
        // FIXME: To be removed
index d800e5669a3bba909cdcf70ac61d9a3ca693923b..73d64c5502ccd78263f081a37c45c652cacdb9b8 100644 (file)
@@ -13,19 +13,25 @@ void sasl_server_request_create(struct auth_request *request,
                                const struct sasl_server_mech_def *mech,
                                struct event *event_parent)
 {
-       struct sasl_server_mech_request *mreq;
+       struct sasl_server_request *req;
        pool_t pool;
 
        pool = request->pool;
+       req = p_new(pool, struct sasl_server_request, 1);
+
+       struct sasl_server_mech_request *mreq;
+
        if (mech->auth_new != NULL)
                mreq = mech->auth_new(pool);
        else
                mreq = p_new(pool, struct sasl_server_mech_request, 1);
        mreq->pool = pool;
+       mreq->req = req;
        mreq->request = request;
        mreq->mech = mech;
        mreq->mech_event = event_parent;
 
+       req->mech = mreq;
        request->sasl = mreq;
 }