]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
global: Replace mail service binaries' -a parameter with auth_master_socket_path...
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Tue, 1 Jul 2025 11:06:30 +0000 (14:06 +0300)
committertimo.sirainen <timo.sirainen@open-xchange.com>
Wed, 16 Jul 2025 10:16:26 +0000 (10:16 +0000)
src/imap-urlauth/imap-urlauth.c
src/imap/main.c
src/lib-master/master-service-settings.c
src/lib-master/master-service-settings.h
src/pop3/main.c
src/submission/main.c

index 5f1e9beb32e9e6c51a9b323bd5396e41a71ec2a4..9db0f4c5ac38cb1376baecfba1e422db6ef2be7c 100644 (file)
@@ -214,7 +214,6 @@ int main(int argc, char *argv[])
        struct login_server_settings login_set;
        enum master_service_flags service_flags = 0;
        const char *error = NULL, *username = NULL;
-       const char *auth_socket_path = "auth-master";
        int c;
 
        i_zero(&login_set);
@@ -234,16 +233,9 @@ int main(int argc, char *argv[])
        }
 
        master_service = master_service_init("imap-urlauth", service_flags,
-                                            &argc, &argv, "a:");
-       while ((c = master_getopt(master_service)) > 0) {
-               switch (c) {
-               case 'a':
-                       auth_socket_path = optarg;
-                       break;
-               default:
-                       return FATAL_DEFAULT;
-               }
-       }
+                                            &argc, &argv, "");
+       while ((c = master_getopt(master_service)) > 0)
+               return FATAL_DEFAULT;
        master_service_init_log(master_service);
 
        if (master_service_settings_read_simple(master_service, &error) < 0)
@@ -256,9 +248,14 @@ int main(int argc, char *argv[])
        if (imap_urlauth_settings->verbose_proctitle)
                verbose_proctitle = TRUE;
 
-       if (t_abspath(auth_socket_path, &login_set.auth_socket_path, &error) < 0) {
-               i_fatal("t_abspath(%s) failed: %s", auth_socket_path, error);
+       const struct master_service_settings *master_set =
+               master_service_get_service_settings(master_service);
+       if (t_abspath(master_set->auth_master_socket_path,
+                     &login_set.auth_socket_path, &error) < 0) {
+               i_fatal("t_abspath(%s) failed: %s",
+                       master_set->auth_master_socket_path, error);
        }
+
        login_set.callback = login_request_finished;
        login_set.failure_callback = login_request_failed;
        login_set.update_proctitle = verbose_proctitle &&
index 757b31e3b59beab78333434089ebab51db28fcbc..5296eeba5a8e85f05e1b516ed093f82b35907dff 100644 (file)
@@ -500,7 +500,7 @@ int main(int argc, char *argv[])
                 * cause client timeouts on login.
                 */
                MAIL_STORAGE_SERVICE_FLAG_NO_NAMESPACES;
-       const char *username = NULL, *auth_socket_path = "auth-master";
+       const char *username = NULL;
        const char *error;
        int c;
 
@@ -522,12 +522,9 @@ int main(int argc, char *argv[])
        }
 
        master_service = master_service_init("imap", service_flags,
-                                            &argc, &argv, "a:Dt:u:");
+                                            &argc, &argv, "Dt:u:");
        while ((c = master_getopt(master_service)) > 0) {
                switch (c) {
-               case 'a':
-                       auth_socket_path = optarg;
-                       break;
                case 't':
                        if (str_to_uint(optarg, &login_set.postlogin_timeout_secs) < 0 ||
                            login_set.postlogin_timeout_secs == 0)
@@ -563,8 +560,13 @@ int main(int argc, char *argv[])
        verbose_proctitle = !IS_STANDALONE() &&
                getenv(MASTER_VERBOSE_PROCTITLE_ENV) != NULL;
 
-       if (t_abspath(auth_socket_path, &login_set.auth_socket_path, &error) < 0)
-               i_fatal("t_abspath(%s) failed: %s", auth_socket_path, error);
+       const struct master_service_settings *master_set =
+               master_service_get_service_settings(master_service);
+       if (t_abspath(master_set->auth_master_socket_path,
+                     &login_set.auth_socket_path, &error) < 0) {
+               i_fatal("t_abspath(%s) failed: %s",
+                       master_set->auth_master_socket_path, error);
+       }
 
        if (argv[optind] != NULL) {
                if (t_abspath(argv[optind], &login_set.postlogin_socket_path, &error) < 0)
index 144a6804ef4e1193397c055af88b2620efa0c643..acdeab09e141a177fc3b2a4e023ea2f4141a23df 100644 (file)
@@ -51,6 +51,7 @@ static const struct setting_define master_service_setting_defines[] = {
        DEF(STR, process_shutdown_filter),
        DEF(STR, syslog_facility),
        DEF(STR, stats_writer_socket_path),
+       DEF(STR, auth_master_socket_path),
        DEF(STR, dovecot_storage_version),
        DEF(BOOL, version_ignore),
        DEF(BOOL, shutdown_clients),
@@ -79,6 +80,7 @@ static const struct master_service_settings master_service_default_settings = {
        .syslog_facility = "mail",
        .import_environment = ARRAY_INIT,
        .stats_writer_socket_path = "stats-writer",
+       .auth_master_socket_path = "auth-master",
        .dovecot_storage_version = "",
        .version_ignore = FALSE,
        .shutdown_clients = TRUE,
index 89944d7bd02becbc2e660611917c6e41386ac4c3..c69332206e61590be796d941d4a00b1173fa3564 100644 (file)
@@ -27,6 +27,7 @@ struct master_service_settings {
        const char *process_shutdown_filter;
        const char *syslog_facility;
        const char *stats_writer_socket_path;
+       const char *auth_master_socket_path;
        const char *dovecot_storage_version;
        ARRAY_TYPE(const_string) import_environment;
        bool version_ignore;
index 3a8791da3d4373a757cf69dcc183a3feb8163268..acb65c31bc95cfbca9d5693df6e4c5122762af5b 100644 (file)
@@ -374,7 +374,7 @@ int main(int argc, char *argv[])
        struct login_server_settings login_set;
        enum master_service_flags service_flags = 0;
        enum mail_storage_service_flags storage_service_flags = 0;
-       const char *username = NULL, *auth_socket_path = "auth-master";
+       const char *username = NULL;
        const char *error;
        int c;
 
@@ -403,12 +403,9 @@ int main(int argc, char *argv[])
        storage_service_flags |= MAIL_STORAGE_SERVICE_FLAG_NO_NAMESPACES;
 
        master_service = master_service_init("pop3", service_flags,
-                                            &argc, &argv, "a:t:u:");
+                                            &argc, &argv, "t:u:");
        while ((c = master_getopt(master_service)) > 0) {
                switch (c) {
-               case 'a':
-                       auth_socket_path = optarg;
-                       break;
                case 't':
                        if (str_to_uint(optarg, &login_set.postlogin_timeout_secs) < 0 ||
                            login_set.postlogin_timeout_secs == 0)
@@ -427,9 +424,14 @@ int main(int argc, char *argv[])
        if (master_service_settings_read_simple(master_service, &error) < 0)
                i_fatal("%s", error);
 
-       if (t_abspath(auth_socket_path, &login_set.auth_socket_path, &error) < 0) {
-               i_fatal("t_abspath(%s) failed: %s", auth_socket_path, error);
+       const struct master_service_settings *master_set =
+               master_service_get_service_settings(master_service);
+       if (t_abspath(master_set->auth_master_socket_path,
+                     &login_set.auth_socket_path, &error) < 0) {
+               i_fatal("t_abspath(%s) failed: %s",
+                       master_set->auth_master_socket_path, error);
        }
+
        if (argv[optind] != NULL) {
                if (t_abspath(argv[optind], &login_set.postlogin_socket_path, &error) < 0) {
                        i_fatal("t_abspath(%s) failed: %s", argv[optind], error);
index f9d7584da5bea21a6b125de7c6cd38945e5ecd8c..62f6b07d0e3fd1e8e45bea466fd6b3fa665d3b20 100644 (file)
@@ -355,7 +355,7 @@ int main(int argc, char *argv[])
        enum mail_storage_service_flags storage_service_flags = 0;
        struct smtp_server_settings smtp_server_set;
        struct smtp_client_settings smtp_client_set;
-       const char *username = NULL, *auth_socket_path = "auth-master";
+       const char *username = NULL;
        const char *error;
        int c;
 
@@ -377,12 +377,9 @@ int main(int argc, char *argv[])
        }
 
        master_service = master_service_init("submission", service_flags,
-                                            &argc, &argv, "a:Dt:u:");
+                                            &argc, &argv, "Dt:u:");
        while ((c = master_getopt(master_service)) > 0) {
                switch (c) {
-               case 'a':
-                       auth_socket_path = optarg;
-                       break;
                case 't':
                        if (str_to_uint(optarg,
                                        &login_set.postlogin_timeout_secs) < 0 ||
@@ -402,11 +399,6 @@ int main(int argc, char *argv[])
                }
        }
 
-       if (t_abspath(auth_socket_path, &login_set.auth_socket_path,
-                     &error) < 0) {
-               i_fatal("t_abspath(%s) failed: %s", auth_socket_path,
-                       error);
-       }
        if (argv[optind] != NULL) {
                if (t_abspath(argv[optind],
                              &login_set.postlogin_socket_path, &error) < 0) {
@@ -426,6 +418,14 @@ int main(int argc, char *argv[])
        if (master_service_settings_read_simple(master_service, &error) < 0)
                i_fatal("%s", error);
 
+       const struct master_service_settings *master_set =
+               master_service_get_service_settings(master_service);
+       if (t_abspath(master_set->auth_master_socket_path,
+                     &login_set.auth_socket_path, &error) < 0) {
+               i_fatal("t_abspath(%s) failed: %s",
+                       master_set->auth_master_socket_path, error);
+       }
+
        storage_service =
                mail_storage_service_init(master_service,
                                          storage_service_flags);