From cbdefe73b5e7e9354fe639aed4686266553c9830 Mon Sep 17 00:00:00 2001
From: Timo Sirainen <timo.sirainen@open-xchange.com>
Date: Thu, 20 Jan 2022 10:38:04 +0100
Subject: [PATCH] managesieve-login: Add srv.<name>/%{pid}-admin unix socket
 listener

---
 src/managesieve-login/managesieve-login-settings.c | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/src/managesieve-login/managesieve-login-settings.c b/src/managesieve-login/managesieve-login-settings.c
index b2fc27448..8e3755454 100644
--- a/src/managesieve-login/managesieve-login-settings.c
+++ b/src/managesieve-login/managesieve-login-settings.c
@@ -21,6 +21,16 @@
 #include <sysexits.h>
 
 /* <settings checks> */
+static struct file_listener_settings managesieve_login_unix_listeners_array[] = {
+	{ "srv.managesieve-login/%{pid}", 0600, "", "" },
+};
+static struct file_listener_settings *managesieve_login_unix_listeners[] = {
+	&managesieve_login_unix_listeners_array[0],
+};
+static buffer_t managesieve_login_unix_listeners_buf = {
+	{ { managesieve_login_unix_listeners,
+	    sizeof(managesieve_login_unix_listeners) } }
+};
 
 static struct inet_listener_settings managesieve_login_inet_listeners_array[] = {
     { .name = "sieve", .address = "", .port = MANAGESIEVE_DEFAULT_PORT },
@@ -54,7 +64,8 @@ struct service_settings managesieve_login_settings_service_settings = {
 	.idle_kill = 0,
 	.vsz_limit = (uoff_t)-1,
 
-	.unix_listeners = ARRAY_INIT,
+	.unix_listeners = { { &managesieve_login_unix_listeners_buf,
+			      sizeof(managesieve_login_unix_listeners[0]) } },
 	.fifo_listeners = ARRAY_INIT,
 	.inet_listeners = { { &managesieve_login_inet_listeners_buf,
 			      sizeof(managesieve_login_inet_listeners[0]) } }
-- 
GitLab