diff options
Diffstat (limited to 'pith')
-rw-r--r-- | pith/pine.hlp | 7 | ||||
-rw-r--r-- | pith/send.c | 10 |
2 files changed, 13 insertions, 4 deletions
diff --git a/pith/pine.hlp b/pith/pine.hlp index 63c1983a..73196ff7 100644 --- a/pith/pine.hlp +++ b/pith/pine.hlp @@ -140,7 +140,7 @@ with help text for the config screen and the composer that didn't have any reasonable place to be called from. Dummy change to get revision in pine.hlp ============= h_revision ================= -Alpine Commit 634 2021-12-27 09:44:44 +Alpine Commit 635 2021-12-29 21:56:40 ============= h_news ================= <HTML> <HEAD> @@ -261,6 +261,11 @@ Bugs addressed include: is surrounded by quotes, these are not removed by Alpine at the time to offer to take an address from a message to the addressbook. Reported by David Prager Branner. + +<LI> If a user configures the sendmail-path variable, and does not use a + global smtp-server, then Alpine will use the sendmail-path even when + the user configured a smtp-server for a role. Reported by Gregory + Heytings. </UL> <P>Version 2.25 adds new features and addresses bugs found in previous diff --git a/pith/send.c b/pith/send.c index 64783374..7f210ee2 100644 --- a/pith/send.c +++ b/pith/send.c @@ -112,7 +112,7 @@ int pwbh_finish(int, STORE_S *); int sent_percent(void); unsigned short *setup_avoid_table(void); #ifndef _WINDOWS -int mta_handoff(METAENV *, BODY *, char *, size_t, void (*)(char *, int), +int mta_handoff(METAENV *, BODY *, char *, size_t, char **, void (*)(char *, int), void (*)(PIPE_S *, int, void *)); char *post_handoff(METAENV *, BODY *, char *, size_t, void (*)(char *, int), void (*)(PIPE_S *, int, void *)); @@ -1737,7 +1737,7 @@ call_mailer(METAENV *header, struct mail_bodystruct *body, char **alt_smtp_serve #ifndef _WINDOWS /* try posting via local "<mta> <-t>" if specified */ - if(mta_handoff(header, body, error_buf, sizeof(error_buf), bigresult_f, pipecb_f)){ + if(mta_handoff(header, body, error_buf, sizeof(error_buf), alt_smtp_servers, bigresult_f, pipecb_f)){ if(error_buf[0]) error_mess = error_buf; @@ -5503,6 +5503,7 @@ smtp_command(char *errbuf, size_t errbuflen) int mta_handoff(METAENV *header, struct mail_bodystruct *body, char *errbuf, size_t len, + char **alt_smtp_servers, void (*bigresult_f) (char *, int), void (*pipecb_f)(PIPE_S *, int, void *)) { @@ -5535,7 +5536,10 @@ mta_handoff(METAENV *header, struct mail_bodystruct *body, cmd = ps_global->COM_SENDMAIL_PATH; } else if(!(ps_global->COM_SMTP_SERVER - && ps_global->COM_SMTP_SERVER[0])){ + && ps_global->COM_SMTP_SERVER[0]) + && !(alt_smtp_servers + && alt_smtp_servers[0] + && alt_smtp_servers[0][0])){ if((ps_global->vars[V_SENDMAIL_PATH].post_user_val.p && ps_global->vars[V_SENDMAIL_PATH].post_user_val.p[0]) || (ps_global->vars[V_SENDMAIL_PATH].main_user_val.p |