comparison xml/dnsbl.in @ 255:d6d5c50b9278 stable-6-0-30

Allow dnswl_list and dnsbl_list to be empty, to override lists specified in the ancestor contexts. Add daily recipient limits as a multiple of the hourly limits.
author Carl Byington <carl@five-ten-sg.com>
date Mon, 09 Apr 2012 18:02:05 -0700
parents 2d6ecd03bbbe
children be939802c64e
comparison
equal deleted inserted replaced
254:720cdc2c303f 255:d6d5c50b9278
659 STATEMENT = (DNSBL | DNSBLLIST | DNSWL | DNSWLLIST | CONTENT | ENV-TO 659 STATEMENT = (DNSBL | DNSBLLIST | DNSWL | DNSWLLIST | CONTENT | ENV-TO
660 | VERIFY | GENERIC | W_REGEX | AUTOWHITE | CONTEXT | ENV-FROM 660 | VERIFY | GENERIC | W_REGEX | AUTOWHITE | CONTEXT | ENV-FROM
661 | RATE-LIMIT) ";" 661 | RATE-LIMIT) ";"
662 662
663 DNSBL = "dnsbl" NAME DNSPREFIX ERROR-MSG1 663 DNSBL = "dnsbl" NAME DNSPREFIX ERROR-MSG1
664 DNSBLLIST = "dnsbl_list" {NAME}+ 664 DNSBLLIST = "dnsbl_list" {NAME}*
665 665
666 DNSWL = "dnswl" NAME DNSPREFIX INTEGER 666 DNSWL = "dnswl" NAME DNSPREFIX LEVEL
667 DNSWLLIST = "dnswl_list" {NAME}+ 667 DNSWLLIST = "dnswl_list" {NAME}*
668 LEVEL = INTEGER
668 669
669 CONTENT = "content" ("on" | "off") "{" {CONTENT-ST}+ "}" 670 CONTENT = "content" ("on" | "off") "{" {CONTENT-ST}+ "}"
670 CONTENT-ST = (FILTER | URIBL | IGNORE | TLD | CCTLD | HTML-TAGS | 671 CONTENT-ST = (FILTER | URIBL | IGNORE | TLD | CCTLD | HTML-TAGS |
671 HTML-LIMIT | HOST-LIMIT | SPAMASS | REQUIRE | DCCGREY | 672 HTML-LIMIT | HOST-LIMIT | SPAMASS | REQUIRE | DCCGREY |
672 DCCBULK) ";" 673 DCCBULK) ";"
706 707
707 ENV_FROM = "env_from" [DEFAULT] "{" {(FROM-ADDR | DCC-FROM)}+ "}" 708 ENV_FROM = "env_from" [DEFAULT] "{" {(FROM-ADDR | DCC-FROM)}+ "}"
708 FROM-ADDR = ADDRESS VALUE [";"] 709 FROM-ADDR = ADDRESS VALUE [";"]
709 DCC-FROM = "dcc_from" "{" DCCINCLUDEFILE "}" ";" 710 DCC-FROM = "dcc_from" "{" DCCINCLUDEFILE "}" ";"
710 711
711 RATE-LIMIT = "rate_limit" [DEFAULTLIMIT] "{" (RATE)+ "}" 712 RATE-LIMIT = "rate_limit" [DEFAULT_LIMIT [DAILY_MULTIPLE]] "{" (RATE)+ "}"
712 RATE = USER LIMIT [";"] 713 RATE = USER LIMIT [";"]
714 LIMIT = INTEGER
715 DEFAULT_LIMIT = INTEGER
716 DAILY_MULTIPLE = INTEGER
713 717
714 DEFAULT = ("white" | "black" | "unknown" | "inherit" | "") 718 DEFAULT = ("white" | "black" | "unknown" | "inherit" | "")
715 ADDRESS = (USER@ | DOMAIN | USER@DOMAIN) 719 ADDRESS = (USER@ | DOMAIN | USER@DOMAIN)
716 VALUE = ("white" | "black" | "unknown" | "inherit" | CHILD-CONTEXT-NAME)]]></literallayout> 720 VALUE = ("white" | "black" | "unknown" | "inherit" | CHILD-CONTEXT-NAME)]]></literallayout>
717 </refsect1> 721 </refsect1>
748 env_from unknown { 752 env_from unknown {
749 "<>" black; 753 "<>" black;
750 }; 754 };
751 755
752 // hourly recipient rate limit by smtp auth client id 756 // hourly recipient rate limit by smtp auth client id
753 rate_limit 30 { // default 757 // default hourly limit is 30
758 // daily limits are 4 times the hourly limit
759 rate_limit 30 4 { // default
754 #fred 100; // override default limits 760 #fred 100; // override default limits
755 #joe 10; // "" 761 #joe 10; // ""
756 }; 762 };
757 }; 763 };
758 764
823 env_to { 829 env_to {
824 }; 830 };
825 }; 831 };
826 832
827 context blacklist { 833 context blacklist {
834 dnsbl_list ;
835 dnswl_list ;
828 env_to { 836 env_to {
829 # dcc_to many { include "/var/dcc/whitecommon"; }; 837 # dcc_to many { include "/var/dcc/whitecommon"; };
830 }; 838 };
831 env_from black {}; # black forces all unmatched from addresses (everyone in this case) to be blacklisted 839 env_from black {}; # black forces all unmatched from addresses (everyone in this case) to be blacklisted
832 # so all mail TO these env_to addresses is rejected 840 # so all mail TO these env_to addresses is rejected