diff options
author | Sergey Poznyakoff <gray@gnu.org> | 2018-11-08 23:15:09 +0200 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org> | 2018-11-08 23:15:09 +0200 |
commit | 90c1c828099d2703fe0eb44b09d5cd3fd67a97fe (patch) | |
tree | c825a296693dd7c737afc3ba8cb27fcdf97f8b5e /src/main.c | |
parent | 40f3d1c9374c8f2330655acb856b8ecf9bde0767 (diff) | |
download | mailfromd-90c1c828099d2703fe0eb44b09d5cd3fd67a97fe.tar.gz mailfromd-90c1c828099d2703fe0eb44b09d5cd3fd67a97fe.tar.bz2 |
mtasim: don't clobber existing callout socket when used with -Xauto
* doc/mailfromd.texi: Document the --callout-socket option.
* mtasim/mtasim.c (start_mailfromd): Supply the --callout-socket option.
* src/main.c: New option --callout-socket
Diffstat (limited to 'src/main.c')
-rw-r--r-- | src/main.c | 21 |
1 files changed, 17 insertions, 4 deletions
@@ -338,19 +338,28 @@ opt_include_dir(struct mu_parseopt *po, struct mu_option *op, char const *arg) { add_include_dir(arg); } static void -opt_port(struct mu_parseopt *po, struct mu_option *op, - char const *arg) +opt_milter_socket(struct mu_parseopt *po, struct mu_option *op, + char const *arg) { mf_srvcfg_add("default", arg); } static void +opt_callout_socket(struct mu_parseopt *po, struct mu_option *op, + char const *arg) +{ + mf_srvcfg_add("callout", arg); + free(callout_server_url); + callout_server_url = mu_strdup(arg); +} + +static void opt_mtasim(struct mu_parseopt *po, struct mu_option *op, char const *arg) { mtasim_option = 1; server_flags |= MF_SERVER_FOREGROUND; } @@ -549,13 +558,17 @@ static struct mu_option mailfromd_options[] = { { "include", 'I', N_("DIR"), MU_OPTION_DEFAULT, N_("add the directory DIR to the list of directories to be " "searched for header files"), mu_c_string, NULL, opt_include_dir }, { "port", 'p', N_("STRING"), MU_OPTION_DEFAULT, N_("set communication socket"), - mu_c_string, NULL, opt_port }, + mu_c_string, NULL, opt_milter_socket }, + { "milter-socket", 0, NULL, MU_OPTION_ALIAS }, + { "callout-socket", 0, N_("STRING"), MU_OPTION_DEFAULT, + N_("set callout socket"), + mu_c_string, NULL, opt_callout_socket }, { "mtasim", 0, NULL, MU_OPTION_IMMEDIATE, N_("run in mtasim compatibility mode"), mu_c_string, NULL, opt_mtasim }, { "optimize", 'O', N_("LEVEL"), MU_OPTION_ARG_OPTIONAL, N_("set code optimization level"), mu_c_string, NULL, opt_optimize }, @@ -1124,13 +1137,13 @@ provide_default_milter_server(void) DEFAULT_SOCKET); mf_srvcfg_add("milter", DEFAULT_SOCKET); } } static void -provide_default_callout_server() +provide_default_callout_server(void) { struct variable *var; if (provide_callout && !callout_server_url && (!(var = variable_lookup("callout_server_url")) || |