From 35f80188d29f8dbf79e96d34709ea0aa3b700b1c Mon Sep 17 00:00:00 2001 From: Stephan Bosch Date: Tue, 22 Nov 2022 21:44:30 +0100 Subject: [PATCH] doveadm: Use the new listener type field to distinguish the various listener types. --- src/doveadm/doveadm-settings.c | 1 + src/doveadm/main.c | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/doveadm/doveadm-settings.c b/src/doveadm/doveadm-settings.c index b024e1c5c1..a4b2a963b6 100644 --- a/src/doveadm/doveadm-settings.c +++ b/src/doveadm/doveadm-settings.c @@ -23,6 +23,7 @@ static bool doveadm_settings_check(void *_set, pool_t pool, const char **error_r static struct file_listener_settings doveadm_unix_listeners_array[] = { { .path = "doveadm-server", + .type = "tcp", .mode = 0600, .user = "", .group = "", diff --git a/src/doveadm/main.c b/src/doveadm/main.c index f7ede39901..e819fface7 100644 --- a/src/doveadm/main.c +++ b/src/doveadm/main.c @@ -31,13 +31,16 @@ static void doveadm_die(void) static void client_connected(struct master_service_connection *conn) { + const char *type; + if (doveadm_client != NULL) { i_error("doveadm server can handle only a single client"); return; } master_service_client_connection_accept(conn); - if (strcmp(conn->name, "http") == 0) { + type = master_service_connection_get_type(conn); + if (strcmp(type, "http") == 0) { doveadm_client = client_connection_http_create(conn->fd, conn->ssl); } else { doveadm_client = client_connection_tcp_create(conn->fd, conn->listen_fd, -- 2.47.3