Synchronet v3.18b-Win32 (install) has been released (Sept-2020).

Synchronet v3.19a, now under development, requires libarchive-dev to build successfully.

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 revision Previous revision
config:filter_files [2020/08/23 15:17]
digital man Change links from viewcvs/cvsweb to gitlab.
config:filter_files [2021/08/08 23:35] (current)
digital man Document the new support of text on either/both sides of the asterisk in patterns
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 ===

In Other Languages