]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
auth: auth-sasl-mech-dovecot-token - Obtain access to the auth request through the...
authorStephan Bosch <stephan.bosch@open-xchange.com>
Mon, 23 Oct 2023 23:54:05 +0000 (01:54 +0200)
committertimo.sirainen <timo.sirainen@open-xchange.com>
Thu, 9 Oct 2025 08:41:22 +0000 (08:41 +0000)
src/auth/auth-sasl-mech-dovecot-token.c

index 0ef5d93971514941554b4f043793d9fd1462bb86..b662c25d7c87c835a698ef5f79248ed40f3c76c6 100644 (file)
@@ -13,6 +13,10 @@ static void
 mech_dovecot_token_auth_continue(struct sasl_server_mech_request *request,
                                 const unsigned char *data, size_t data_size)
 {
+       struct sasl_server_req_ctx *rctx =
+               sasl_server_request_get_req_ctx(request);
+       struct auth_request *auth_request =
+               container_of(rctx, struct auth_request, sasl.req);
        const char *session_id, *username, *pid, *service;
        char *auth_token;
        size_t i, len;
@@ -56,7 +60,9 @@ mech_dovecot_token_auth_continue(struct sasl_server_mech_request *request,
 
                if (auth_token != NULL &&
                    str_equals_timing_almost_safe(auth_token, valid_token)) {
-                       auth_request_set_field(request->request, "userdb_client_service", service, "");
+                       auth_request_set_field(
+                               auth_request, "userdb_client_service",
+                               service, "");
                        sasl_server_request_success(request, NULL, 0);
                } else {
                        sasl_server_request_failure(request);