diff --git a/src/sbbs3/mailsrvr.c b/src/sbbs3/mailsrvr.c index d42aa6d13d9480e258fba9bd04d4f0c7a2407450..e078ec75cb0873cf3cb05be4d80ab6d8959d00a5 100644 --- a/src/sbbs3/mailsrvr.c +++ b/src/sbbs3/mailsrvr.c @@ -1820,9 +1820,13 @@ static void smtp_thread(void* arg) SKIP_WHITESPACE(p); if(*p==';' || *p==0) /* comment or blank line */ continue; - lprintf(LOG_DEBUG,"%04d SMTP executing external process: %s", socket, p); - system(mailcmdstr(p, msgtxt_fname, rcptlst_fname, proc_err_fname - ,host_name, host_ip, relay_user.number, str)); + mailcmdstr(p, msgtxt_fname, rcptlst_fname, proc_err_fname + ,host_name, host_ip, relay_user.number, str); + lprintf(LOG_DEBUG,"%04d SMTP executing external process: %s", socket, str); + i=system(str); + if(i!=0) + lprintf(LOG_WARNING,"%04d SMTP external process (%s) returned %d (errno: %d)" + ,str, i, errno); if(flength(proc_err_fname)>0) break; if(!fexist(msgtxt_fname) || !fexist(rcptlst_fname))