]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
login-common: Add notify_auth_connected() vfunc
authorStephan Bosch <stephan.bosch@open-xchange.com>
Wed, 5 Nov 2025 14:42:42 +0000 (15:42 +0100)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Wed, 12 Nov 2025 20:22:55 +0000 (20:22 +0000)
This gets called when the auth service connection is restored after disconnect.

src/login-common/client-common-auth.c
src/login-common/client-common.c
src/login-common/client-common.h

index 6741a190dfc72f1446b09b9085a973d78220c995..350bbbfacffcae903d159b7b3cd55eb186f1cbed 100644 (file)
@@ -1192,5 +1192,6 @@ void clients_notify_auth_connected(void)
                        client->input_blocked = FALSE;
                        io_set_pending(client->io);
                }
+               client_notify_auth_connected(client);
        }
 }
index 821314b0a6e957c51c92c07165733582f9dc0d64..a7e8131e0feae51a82a43bc657fba78451a0638e 100644 (file)
@@ -1548,6 +1548,12 @@ void client_notify_auth_ready(struct client *client)
        }
 }
 
+void client_notify_auth_connected(struct client *client)
+{
+       if (client->v.notify_auth_connected != NULL)
+               client->v.notify_auth_connected(client);
+}
+
 void client_notify_status(struct client *client, bool bad, const char *text)
 {
        if (client->v.notify_status != NULL)
index 4a836729243ec34ad8cada94aecdeaf29f3bf025..f2333595da7b1e06faa7d0c8a219269365bdb4da 100644 (file)
@@ -125,6 +125,7 @@ struct client_vfuncs {
        void (*destroy)(struct client *client);
        int (*reload_config)(struct client *client, const char **error_r);
        void (*notify_auth_ready)(struct client *client);
+       void (*notify_auth_connected)(struct client *client);
        void (*notify_disconnect)(struct client *client,
                                  enum client_disconnect_reason reason,
                                  const char *text);
@@ -402,6 +403,7 @@ client_does_custom_io(struct client *client)
 }
 
 void client_notify_auth_ready(struct client *client);
+void client_notify_auth_connected(struct client *client);
 void client_notify_status(struct client *client, bool bad, const char *text);
 void client_notify_disconnect(struct client *client,
                              enum client_disconnect_reason reason,