Add prefix and suffix matching for strlist filter.
[apps/pfixtools.git] / example / postlicyd.conf
index 0fc5953..ca17b60 100644 (file)
@@ -66,7 +66,7 @@
 #   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
@@ -101,15 +101,22 @@ spamhaus_and_abuseat {
 
 #     - strlist: match strings from the query against a list of list.
 #        Parameters:
-#           - file: (non)?lock:(pre|suf)fix:weight:filename
+#           - file: (no)?lock:(partial-)?(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
 #             allow high compression if a lot of prefix are shared by several strings. If
 #             you choose "prefix", string are stored in the natural order in memory and
 #             prefix compression is performed. If you choose "suffix", strings are stored
-#             in reverse order in memory and suffix compression is performed. The weight
-#             is a number giving the weight of this list in the string score.
+#             in reverse order in memory and suffix compression is performed. If you add "partial-"
+#             to the match order, the entry will match if the file contains a prefix (resp. suffix)
+#             of the string. The weight is a number giving the weight of this list in the string score.
+#               e.g.:
+#                * a file that contains ".polytechnique.org" in "partial-suffix" mode will match
+#                 all subdomains of "polytechnique.org".
+#                * a file that contains "postmaster@" in "partial-prefix" mode will match all
+#                 postmaster emails.
+#                * a file open without "partial-" modifier match exact strings.
 #           - soft_threshold: score (default: 1)
 #             minimum score to match the soft_match return value
 #           - hard_threshold: score (default: 1)
@@ -121,6 +128,7 @@ spamhaus_and_abuseat {
 #             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
@@ -139,7 +147,7 @@ client_whitelist {
   type  = strlist;
 
   # configuration
-  file    = lock:1:/var/spool/postlicyd/client_whitelist;
+  file    = lock:1:suffix:/var/spool/postlicyd/client_whitelist;
   fields  = client_name;
 
   # hooks
@@ -163,6 +171,9 @@ client_whitelist {
 #           - client_awl: number (default: 5)
 #             number of successful greylisting before the client get whitelisted (0 means,
 #             no-auto-whitelist).
+#           - max_age: number (default: 30 * 3600)
+#             lifetime of a greylist/whitelist session: ie, if a client does ne reappear during
+#             max_age seconds, the entries associated to this client are invalidated.
 #         Return value:
 #           - if the client is whitelisted, returns whitelist
 #           - if the client is greylisted, returns greylist