Mercurial > dovecot > core-2.2
changeset 19706:3a4866198d8f
imap, pop3, imap-urlauth: Added -a <auth-master socket path> parameter
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Wed, 03 Feb 2016 14:05:07 +0200 |
parents | 9fb16176c200 |
children | 55397852db0a |
files | src/imap-urlauth/imap-urlauth.c src/imap/main.c src/pop3/main.c |
diffstat | 3 files changed, 25 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/src/imap-urlauth/imap-urlauth.c Wed Feb 03 14:00:16 2016 +0200 +++ b/src/imap-urlauth/imap-urlauth.c Wed Feb 03 14:05:07 2016 +0200 @@ -186,6 +186,8 @@ void **sets; enum master_service_flags service_flags = 0; const char *error = NULL, *username = NULL; + const char *auth_socket_path = "auth-master"; + int c; memset(&login_set, 0, sizeof(login_set)); login_set.postlogin_timeout_secs = MASTER_POSTLOGIN_TIMEOUT_DEFAULT; @@ -205,9 +207,16 @@ } master_service = master_service_init("imap-urlauth", service_flags, - &argc, &argv, ""); - if (master_getopt(master_service) > 0) - return FATAL_DEFAULT; + &argc, &argv, "a:"); + while ((c = master_getopt(master_service)) > 0) { + switch (c) { + case 'a': + auth_socket_path = optarg; + break; + default: + return FATAL_DEFAULT; + } + } master_service_init_log(master_service, "imap-urlauth: "); memset(&input, 0, sizeof(input)); @@ -224,7 +233,7 @@ if (imap_urlauth_settings->verbose_proctitle) verbose_proctitle = TRUE; - login_set.auth_socket_path = t_abspath("auth-master"); + login_set.auth_socket_path = t_abspath(auth_socket_path); login_set.callback = login_client_connected; login_set.failure_callback = login_client_failed;
--- a/src/imap/main.c Wed Feb 03 14:00:16 2016 +0200 +++ b/src/imap/main.c Wed Feb 03 14:05:07 2016 +0200 @@ -368,7 +368,7 @@ enum master_service_flags service_flags = 0; enum mail_storage_service_flags storage_service_flags = MAIL_STORAGE_SERVICE_FLAG_AUTOEXPUNGE; - const char *username = NULL; + const char *username = NULL, *auth_socket_path = "auth-master"; int c; memset(&login_set, 0, sizeof(login_set)); @@ -392,9 +392,12 @@ } master_service = master_service_init("imap", service_flags, - &argc, &argv, "Dt:u:"); + &argc, &argv, "a: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) @@ -435,7 +438,7 @@ main_stdio_run(username); } T_END; } else T_BEGIN { - login_set.auth_socket_path = t_abspath("auth-master"); + login_set.auth_socket_path = t_abspath(auth_socket_path); if (argv[optind] != NULL) { login_set.postlogin_socket_path = t_abspath(argv[optind]);
--- a/src/pop3/main.c Wed Feb 03 14:00:16 2016 +0200 +++ b/src/pop3/main.c Wed Feb 03 14:05:07 2016 +0200 @@ -215,7 +215,7 @@ enum master_service_flags service_flags = 0; enum mail_storage_service_flags storage_service_flags = MAIL_STORAGE_SERVICE_FLAG_AUTOEXPUNGE; - const char *username = NULL; + const char *username = NULL, *auth_socket_path = "auth-master"; int c; memset(&login_set, 0, sizeof(login_set)); @@ -238,9 +238,12 @@ } master_service = master_service_init("pop3", service_flags, - &argc, &argv, "t:u:"); + &argc, &argv, "a: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) @@ -256,7 +259,7 @@ } } - login_set.auth_socket_path = t_abspath("auth-master"); + login_set.auth_socket_path = t_abspath(auth_socket_path); if (argv[optind] != NULL) login_set.postlogin_socket_path = t_abspath(argv[optind]); login_set.callback = login_client_connected;