# Current defined filter types are:
# - iplist: match the client_address against one or more blacklist files from a rbl
# Parameters:
-# - file: (non)?lock:weight:filename
+# - file: (no)?lock:weight:filename
# declare a file to load. If lock is given, the klist is locked into the
# RAM. The weight is a number giving the weight of this blaclist file in the
# score of the IP
# - strlist: match strings from the query against a list of list.
# Parameters:
-# - file: (non)?lock:(pre|suf)fix:weight:filename
+# - file: (no)?lock:(pre|suf)fix:weight:filename
# declare a file to load. If lock is given, the list is locked into the
# RAM. Prefix/Suffix is a parameter to tell the matcher which is the most
# efficient storage order. The strings are internally stored into a trie that
# are available in the protocol state you want to use this filter for.
# * hostname fields: helo_name, client_name, reverse_client_name
# * email fields: sender, recipient
+# No space is allowed in this parameter.
# Return value:
# The score of a query is the sum of the weight of the list it matched.
# - If the score is strictly greater >= than hard_threshold, returns hard_match
on_fail = postfix:OK;
}
+filter2 {
+ type = strlist;
+
+ fields = helo_name,client_name;
+ file = nolock:suffix:1:data/test_hostnames_1;
+ file = nolock:prefix:4:data/test_hostnames_2;
+ file = nolock:suffix:8:data/test_hostnames_3;
+
+ soft_threshold = 1;
+ hard_threshold = 5;
+
+ on_hard_match = postfix:OK;
+ on_soft_match = postfix:OK;
+ on_fail = postfix:OK;
+}
+
+filter3 {
+ type = strlist;
+
+ fields = helo_name,client_name,reverse_client_name;
+ file = nolock:suffix:1:data/test_hostnames_1;
+ file = nolock:prefix:4:data/test_hostnames_2;
+ file = nolock:suffix:8:data/test_hostnames_3;
+
+ soft_threshold = 1;
+ hard_threshold = 5;
+
+ on_hard_match = postfix:OK;
+ on_soft_match = postfix:OK;
+ on_fail = postfix:OK;
+}
+
+filter4 {
+ type = strlist;
+
+ fields = sender;
+ file = nolock:suffix:1:data/test_emails_1;
+ file = nolock:prefix:4:data/test_emails_2;
+ file = nolock:suffix:8:data/test_emails_3;
+
+ soft_threshold = 1;
+ hard_threshold = 5;
+
+ on_hard_match = postfix:ok;
+ on_soft_match = postfix:ok;
+ on_fail = postfix:ok;
+}
+
+filter5 {
+ type = strlist;
+
+ fields = sender,recipient;
+ file = nolock:suffix:1:data/test_emails_1;
+ file = nolock:prefix:4:data/test_emails_2;
+ file = nolock:suffix:8:data/test_emails_3;
+
+ soft_threshold = 1;
+ hard_threshold = 5;
+
+ on_hard_match = postfix:ok;
+ on_soft_match = postfix:ok;
+ on_fail = postfix:ok;
+}
recipient_filter = filter1;