dnl dnl _ARG1_ - hostlist dnl _ARG2_ - action dnl _ARG3_ - message dnl _ARG4_ - log_message dnl warn set acl_m1 = condition = ${if eq{$acl_m0}{no}{yes}{no}} hosts = +_ARG1_ set acl_m1 = listed warn condition = ${if eq{$acl_m1}{listed}{yes}{no}} ifelse_strstr(_ARG2_, `pause=', `dnl dnl pause delay = EXTRACT(`pause', _ARG2_)`'s set acl_m_spam_action = ${acl_m_spam_action}\t\ delay=EXTRACT(`pause', _ARG2_)`'s\t\t\ _ARG4_\n log_message = _ARG4_; message delayed for EXTRACT(`pause', _ARG2_)`'s ') dnl ifelse_strstr(_ARG2_, `pause=', `') ifelse_strstr(_ARG2_, `warn', `dnl add_header = X-Warn-Relay-BlackListed: _ARG4_ ') dnl ifelse_strstr(_ARG2_, `warn', `') ifelse_strstr(_ARG2_, `quarantine', `dnl ifelse_strstr(_ARG2_` ', `reject ', `dnl dnl quarantine and reject accept condition = ${if eq{$acl_m1}{listed}{yes}{no}} log_message = message will be quarantined and rejected: _ARG4_ set acl_m_fakereject = \ message will be quarantined and rejected: _ARG4_\ |X-Quarantine-Relay: _ARG4_\ |_ARG3_ set acl_m_add_x_orig_rcpt = yes set acl_m_quarantined = $acl_m_quarantined envelope ', ` dnl ifelse_strstr(_ARG2_` ', `reject ', `') dnl quarantine and !reject warn condition = ${if eq{$acl_m1}{listed}{yes}{no}} log_message = message will be quarantined: _ARG4_ add_header = X-Quarantine-Relay: _ARG4_ set acl_m_add_x_orig_rcpt = yes set acl_m_quarantined = $acl_m_quarantined envelope accept condition = ${if eq{$acl_m1}{listed}{yes}{no}} ') dnl ifelse_strstr(_ARG2_` ', `reject ', `') ') dnl ifelse_strstr(_ARG2_, `quarantine', `') ifelse_strstr(_ARG2_` ', `reject ', `dnl dnl !quarantine and reject deny condition = ${if eq{$acl_m1}{listed}{yes}{no}} message = _ARG3_ log_message = _ARG4_ ') dnl ifelse_strstr(_ARG2_` ', `reject ', `') ifelse_strstr(_ARG2_, `defer', `dnl dnl defer defer condition = ${if eq{$acl_m1}{listed}{yes}{no}} message = _ARG3_ log_message = _ARG4_ ') dnl ifelse_strstr(_ARG2_, `defer', `') ifelse_strstr(_ARG2_, `drop', `dnl dnl drop drop condition = ${if eq{$acl_m1}{listed}{yes}{no}} message = _ARG3_ log_message = _ARG4_ ') dnl ifelse_strstr(_ARG2_, `drop', `') ifelse_strstr(_ARG2_, `warn', `dnl ifelse_strstr(_ARG2_, `pause=', `', `dnl warn condition = ${if eq{$acl_m1}{listed}{yes}{no}} log_message = _ARG4_ ') dnl ifelse_strstr(_ARG2_, `pause=', `', `') ') dnl ifelse_strstr(_ARG2_, `warn', `') ifelse_strstr(_ARG2_, `greylist=', `dnl ifelse(confGREYLIST, `OPTIONAL', `dnl warn condition = ${if eq{$acl_m1}{listed}{yes}{no}} set acl_m_optional_greylist = \ scores=${eval:${extract{scores}{$acl_m_optional_greylist}}+EXTRACT(`greylist', _ARG2_)} \ log_message="${extract{log_message}{$acl_m_optional_greylist}} _ARG4_;" set acl_m_spam_action = ${acl_m_spam_action}\t\ greylist scores=EXTRACT(`greylist', _ARG2_)\t\ _ARG4_\n ') dnl ifelse(confGREYLIST, `OPTIONAL', `') ') dnl ifelse_strstr(_ARG2_, `greylist=', `') ifelse_strstr(_ARG2_, `reject=', `dnl ifdef(`confOPTIONAL_REJECT', `ifelse(confOPTIONAL_REJECT, `NO', `dnl', `dnl warn condition = ${if eq{$acl_m1}{listed}{yes}{no}} set acl_m_optional_reject = \ scores=${eval:${extract{scores}{$acl_m_optional_reject}}+EXTRACT(`reject', _ARG2_)} \ log_message="${extract{log_message}{$acl_m_optional_reject}} _ARG4_;" set acl_m_spam_action = ${acl_m_spam_action}\t\ reject scores=EXTRACT(`reject', _ARG2_)\t\t\ _ARG4_\n ')') dnl ifdef(`confOPTIONAL_REJECT', `ifelse(confOPTIONAL_REJECT, `NO', `', `')') ') dnl ifelse_strstr(_ARG2_, `reject=', `')