Synchronet v3.19b-Win32 (install) has been released (Jan-2022).

You can donate to the Synchronet project using PayPal.

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
config:filter_files [2020/08/23 15:17] – Change links from viewcvs/cvsweb to gitlab. digital manconfig:filter_files [2021/11/14 19:08] – [Trash Can Files] Clarify that ip.can and host.can can be used to filter networked messages digital man
Line 3: Line 3:
 Filter configuration (''[[dir:ctrl]]/*.cfg'') and trash can (''[[dir:text]]/*.can'') files allow the sysop to specify words (or any sequence of characters) that will be used to disallow clients, users, or their content. Filter configuration (''[[dir:ctrl]]/*.cfg'') and trash can (''[[dir:text]]/*.can'') files allow the sysop to specify words (or any sequence of characters) that will be used to disallow clients, users, or their content.
  
-Each line in a filter file may contain a comparison sequence.  Blank lines and lines beginning with a semicolon are ignored.+Each line in a filter file may contain a comparison pattern.  Blank lines and lines beginning with a semicolon character ('';''are ignored.
  
-===== Comparison Sequences =====+===== Comparison Patterns =====
   * Leading white-space characters are ignored   * Leading white-space characters are ignored
-  * Sequences of alphabetic letters are treated case-insensitively +  * Alphabetic character are compared case-insensitively 
-  * C-style string-literal backslash (''\'') [[wp>C_syntax#Strings|escape sequences]] are supported (as of v3.17c) +  * C-style string-literal backslash (''\'') [[wp>C_syntax#Strings|escape sequences]] are supported in patterns (as of v3.17c) 
-  * Sequences //beginning// with an exclamation mark (''!'') negate the match logic for that sequence +  * Patterns //beginning// with an exclamation mark (''!'') negate the match logic for that pattern 
-  * Sequences //beginning// with an asterisk (''*'') match only if the characters following the ''*'' are found at the end of the comparison string +  * Patterns //ending// with a caret (''^'') match only if the preceding (left most) characters are found at the beginning of the comparison string ((The caret is a legacy pattern matching character made obsolete/redundant by the asterisk)) 
-  * Sequences //ending// with an asterisk (''*'') or caret (''^'') match only if the characters preceding are found at the beginning of the comparison string +  * Patterns //ending// with a tilde (''~'') match when the preceding string of characters are found //anywhere// within the comparison string 
-  * Sequences //ending// with a tilde (''~'') match when the preceding string of characters are found //anywhere// within the comparison string +  * Patterns //including// an asterisk (''*''will match when both the left and right string fragments (on either/both sides of the ''*'') match the comparison string (as of v3.19a) ((Additional (more than one) asterisks in a comparison pattern are not treated specially)) 
-  * All other sequences are "exact match" string comparisons+  * All other patterns are "exact match" string comparisons 
 + 
 +**Note:**\\ 
 +There's no effective difference between the patterns "word^" and "word*".
    
 ==== Examples ====  ==== Examples ==== 
-  * ''sysop'' in the ''name.can'' file would mean users could not use the name "sysop"+  * ''sysop'' in the ''name.can'' file would mean new users could not use the name "sysop"
-  * ''sysop*'' would mean users could not use names //beginning// with the word "sysop", like "sysop the" or "sysops"+  * ''sysop*'' would mean new users could not use names //beginning// with the word "sysop", like "sysop the" or "sysops"
-  * ''sysop~'' would mean users could not use names that have the word "sysop" //anywhere// in them, like "imthesysop" or "Joe Sysop".+  * ''sysop~'' would mean new users could not use names that have the word "sysop" //anywhere// in them, like "imthesysop" or "Joe Sysop".
  
 === Match strings with the character sequence "viagra" anywhere within === === Match strings with the character sequence "viagra" anywhere within ===
Line 55: Line 58:
 |''[[email.can]]''   |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/text/email.can|email.can]]|''[[bademail.msg]]''|Disallowed (source or destination) e-mail addresses (see also ''[[twitlist.cfg]]'')| |''[[email.can]]''   |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/text/email.can|email.can]]|''[[bademail.msg]]''|Disallowed (source or destination) e-mail addresses (see also ''[[twitlist.cfg]]'')|
 |''[[file.can]]''   |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/text/file.can|file.can]]|''[[badfile.msg]]''|Disallowed filenames for upload| |''[[file.can]]''   |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/text/file.can|file.can]]|''[[badfile.msg]]''|Disallowed filenames for upload|
-|''[[host.can]]''   |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/text/host.can|host.can]]|''[[badhost.msg]]''|Disallowed hostnames for inbound connections (when hostname lookups are enabled)| +|''[[host.can]]''   |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/text/host.can|host.can]]|''[[badhost.msg]]''|Disallowed hostnames for inbound connections (when hostname lookups are enabled) and content
-|''[[ip.can]]''   |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/text/ip.can|ip.can]]|''[[badip.msg]]''|Disallowed IP addresses for inbound connections|+|''[[ip.can]]''   |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/text/ip.can|ip.can]]|''[[badip.msg]]''|Disallowed IP addresses for inbound connections and content (e.g. messages)|
 |''[[ip-silent.can]]''   |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/text/ip-silent.can|ip-silent.can]]| |Silently-ignored IP addresses for inbound connections| |''[[ip-silent.can]]''   |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/text/ip-silent.can|ip-silent.can]]| |Silently-ignored IP addresses for inbound connections|
 |''[[name.can]]''   |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/text/name.can|name.can]]|''[[badname.msg]]''|Disallowed user login name/alias (see also [[howto:block-hackers]])| |''[[name.can]]''   |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/text/name.can|name.can]]|''[[badname.msg]]''|Disallowed user login name/alias (see also [[howto:block-hackers]])|