]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
auth: Add connection parameter to auth_worker_callback_t
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Tue, 19 Apr 2022 08:39:35 +0000 (11:39 +0300)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Wed, 20 Apr 2022 06:56:44 +0000 (06:56 +0000)
src/auth/auth-worker-connection.c
src/auth/auth-worker-connection.h
src/auth/passdb-blocking.c
src/auth/passdb-cache.c
src/auth/userdb-blocking.c

index d2c1610eaab71ef297fbe5d0adc0a8ecffec0025..248b0b6c6bd52e32e06db3a3550a42fd9083255c 100644 (file)
@@ -101,7 +101,7 @@ static bool auth_worker_request_send(struct auth_worker_connection *worker,
                        t_strdup_printf("%d", PASSDB_RESULT_INTERNAL_FAILURE),
                        NULL,
                };
-               request->callback(args, request->context);
+               request->callback(worker, args, request->context);
                return FALSE;
        }
        if (age_secs >= AUTH_WORKER_DELAY_WARN_SECS &&
@@ -278,7 +278,7 @@ static void auth_worker_deinit(struct auth_worker_connection **_worker,
                        t_strdup_printf("%d", PASSDB_RESULT_INTERNAL_FAILURE),
                        NULL,
                };
-               worker->request->callback(args, worker->request->context);
+               worker->request->callback(worker, args, worker->request->context);
        }
 
        timeout_remove(&worker->to_lookup);
@@ -338,7 +338,7 @@ static int auth_worker_request_handle(struct auth_worker_connection *worker,
                idle_count++;
        }
 
-       if (!_request->callback(args, _request->context)) {
+       if (!_request->callback(worker, args, _request->context)) {
                worker->timeout_pending_resume = FALSE;
                timeout_remove(&worker->to_lookup);
                return -1;
index f8ab7dc95e9652d5a2eb1f3f8e03d8d1db96d8b2..a4dd76417fa97078db8ca3cd9bdc3b3751168111 100644 (file)
@@ -3,8 +3,10 @@
 
 struct auth_request;
 struct auth_stream_reply;
+struct auth_worker_connection;
 
-typedef bool auth_worker_callback_t(const char *const *args, void *context);
+typedef bool auth_worker_callback_t(struct auth_worker_connection *conn,
+                                   const char *const *args, void *context);
 
 struct auth_worker_connection * ATTR_NOWARN_UNUSED_RESULT
 auth_worker_call(pool_t pool, const char *username, const char *data,
index 7beb6eb8a39e6c21668b5b0d69f57ca54f0cd2b9..2ccb5692349eb4eb5d039fd3ade54fb275da4075 100644 (file)
@@ -72,7 +72,8 @@ passdb_blocking_auth_worker_reply_parse(struct auth_request *request,
 }
 
 static bool
-verify_plain_callback(const char *const *args, void *context)
+verify_plain_callback(struct auth_worker_connection *conn ATTR_UNUSED,
+                     const char *const *args, void *context)
 {
        struct auth_request *request = context;
        enum passdb_result result;
@@ -98,7 +99,9 @@ void passdb_blocking_verify_plain(struct auth_request *request)
                         verify_plain_callback, request);
 }
 
-static bool lookup_credentials_callback(const char *const *args, void *context)
+static bool
+lookup_credentials_callback(struct auth_worker_connection *conn ATTR_UNUSED,
+                           const char *const *args, void *context)
 {
        struct auth_request *request = context;
        enum passdb_result result;
@@ -139,7 +142,8 @@ void passdb_blocking_lookup_credentials(struct auth_request *request)
 }
 
 static bool
-set_credentials_callback(const char *const *args, void *context)
+set_credentials_callback(struct auth_worker_connection *conn ATTR_UNUSED,
+                        const char *const *args, void *context)
 {
        struct auth_request *request = context;
        bool success;
index 7631556196a07e5706710a43efe264a3b22a7009..45c8071df95870dbf4cdb82b9d7306a99d9ce85d 100644 (file)
@@ -52,8 +52,10 @@ passdb_cache_lookup(struct auth_request *request, const char *key,
        return TRUE;
 }
 
-static bool passdb_cache_verify_plain_callback(const char *const *args,
-                                              void *context)
+static bool
+passdb_cache_verify_plain_callback(struct auth_worker_connection *conn ATTR_UNUSED,
+                                  const char *const *args,
+                                  void *context)
 {
        struct auth_request *request = context;
        enum passdb_result result;
index fc0be321096f99e6625629b10a732faac51870c1..f822a055d9450771e7a212097d55b1e866a3bc17 100644 (file)
@@ -14,7 +14,8 @@ struct blocking_userdb_iterate_context {
        bool destroyed;
 };
 
-static bool user_callback(const char *const *args, void *context)
+static bool user_callback(struct auth_worker_connection *conn ATTR_UNUSED,
+                         const char *const *args, void *context)
 {
        struct auth_request *request = context;
        enum userdb_result result;
@@ -72,7 +73,8 @@ void userdb_blocking_lookup(struct auth_request *request)
                         str_c(str), user_callback, request);
 }
 
-static bool iter_callback(const char *const *args, void *context)
+static bool iter_callback(struct auth_worker_connection *conn ATTR_UNUSED,
+                         const char *const *args, void *context)
 {
        struct blocking_userdb_iterate_context *ctx = context;