From 7fe49f61094b783da0010d4df541da7ee9faa69c Mon Sep 17 00:00:00 2001 From: Stephan Bosch Date: Fri, 28 Nov 2025 03:32:36 +0100 Subject: [PATCH] [PATCH 1/5] login-common: client-common - Add client_disconnect() vfunc Gbp-Pq: Name 0001-login-common-client-common-Add-client_disconnect-vfu.patch --- src/login-common/client-common.c | 2 ++ src/login-common/client-common.h | 1 + 2 files changed, 3 insertions(+) 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); -- 2.39.5