diff --git a/src/sbbs3/mailsrvr.c b/src/sbbs3/mailsrvr.c index c8c95f6e6894e5b57fdd98f7775dcacef8e84451..933891ef7b4afe343178f0f418d71d133805d23f 100644 --- a/src/sbbs3/mailsrvr.c +++ b/src/sbbs3/mailsrvr.c @@ -2358,6 +2358,10 @@ static void smtp_thread(void* arg) if(!mailproc_match[i]) continue; + if(mailproc_list[i].from!=NULL + && !findstr_in_list(sender_addr, mailproc_list[i].from)) + continue; + if(!mailproc_list[i].passthru) msg_handled=TRUE; @@ -3315,8 +3319,6 @@ static void smtp_thread(void* arg) continue; if(!chk_ar(&scfg,mailproc_list[i].ar,&relay_user)) continue; - if(mailproc_list[i].from!=NULL && !findstr_in_list(p, mailproc_list[i].from)) - continue; if(mailproc_list[i].to!=NULL) { for(j=0;mailproc_list[i].to[j]!=NULL;j++) { if(stricmp(p,mailproc_list[i].to[j])==0) {