From: Stephan Bosch Date: Fri, 28 Nov 2025 02:32:36 +0000 (+0100) Subject: [PATCH 1/5] login-common: client-common - Add client_disconnect() vfunc X-Git-Tag: archive/raspbian/1%2.4.1+dfsg1-6+rpi1+deb13u7^2~25 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=7fe49f61094b783da0010d4df541da7ee9faa69c;p=dovecot.git [PATCH 1/5] login-common: client-common - Add client_disconnect() vfunc Gbp-Pq: Name 0001-login-common-client-common-Add-client_disconnect-vfu.patch --- diff --git a/src/login-common/client-common.c b/src/login-common/client-common.c index c4265f4..af63133 100644 --- a/src/login-common/client-common.c +++ b/src/login-common/client-common.c @@ -433,6 +433,8 @@ void client_disconnect(struct client *client, const char *reason) if (!client->login_success) { bool unref = FALSE; + if (client->v.disconnect != NULL) + client->v.disconnect(client, reason); io_remove(&client->io); ssl_iostream_destroy(&client->ssl_iostream); if (client->iostream_fd_proxy != NULL) { diff --git a/src/login-common/client-common.h b/src/login-common/client-common.h index b431279..358d05c 100644 --- a/src/login-common/client-common.h +++ b/src/login-common/client-common.h @@ -122,6 +122,7 @@ struct client_auth_reply { struct client_vfuncs { struct client *(*alloc)(pool_t pool); int (*create)(struct client *client); + void (*disconnect)(struct client *client, const char *reason); void (*destroy)(struct client *client); int (*reload_config)(struct client *client, const char **error_r); void (*notify_auth_ready)(struct client *client);