From: Stephan Bosch Date: Wed, 5 Nov 2025 14:42:42 +0000 (+0100) Subject: login-common: Add notify_auth_connected() vfunc X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c2fe6135aaed2fd73e03e7985c9fe581dbd85764;p=thirdparty%2Fdovecot%2Fcore.git login-common: Add notify_auth_connected() vfunc This gets called when the auth service connection is restored after disconnect. --- diff --git a/src/login-common/client-common-auth.c b/src/login-common/client-common-auth.c index 6741a190df..350bbbfacf 100644 --- a/src/login-common/client-common-auth.c +++ b/src/login-common/client-common-auth.c @@ -1192,5 +1192,6 @@ void clients_notify_auth_connected(void) client->input_blocked = FALSE; io_set_pending(client->io); } + client_notify_auth_connected(client); } } diff --git a/src/login-common/client-common.c b/src/login-common/client-common.c index 821314b0a6..a7e8131e0f 100644 --- a/src/login-common/client-common.c +++ b/src/login-common/client-common.c @@ -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) diff --git a/src/login-common/client-common.h b/src/login-common/client-common.h index 4a83672924..f2333595da 100644 --- a/src/login-common/client-common.h +++ b/src/login-common/client-common.h @@ -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,