Extended Bans
Some list modes, such as channel mode b
(ban), take a <nick>!<user>@<host>
mask as their parameter. These list modes can be extended to support alternate forms of matching and actions.
Acting
Acting extended bans allow restricting actions that users can perform. Such actions can include preventing a user from speaking in a channel (requires the muteban module) or changing their nickname (requires the nonicks module). Acting extended bans can also be stacked with matching extended bans (see below).
Name | Character | Ban Syntax | Module | Description |
---|---|---|---|---|
blockinvite | A | A:<mask> | allowinvite | Bans <mask> from using the /INVITE command. |
blockcaps | B | B:<mask> | blockcaps | Bans <mask> from sending messages with excessive capitalisation. |
noctcp | C | C:<mask> | noctcp | Bans <mask> from sending messages that contain CTCPs. |
blockcolor | c | c:<mask> | blockcolor | Bans <mask> from sending messages that contain IRC formatting codes. |
mute | m | m:<mask> | muteban | Bans <mask> from speaking in the channel. |
nonick | N | N:<mask> | nonicks | Bans users matching <mask> from changing their nickname whilst in the channel. |
partmsg | p | p:<mask> | nopartmsg | Bans <mask> from sending a /PART message. |
nokick | Q | Q:<mask> | nokicks | Bans privileged users matching <mask> from using the /KICK command. |
stripcolor | S | S:<mask> | stripcolor | Strips IRC formatting codes from messages sent by users matching <mask>. |
nonotice | T | T:<mask> | nonotice | Bans <mask> from sending messages with the /NOTICE command. |
Matching
Matching extended bans allow matching against extended user attributes such as connect class (requires the classban module) or TLS (SSL) fingerprint (requires the sslmodes module).
Name | Character | Ban Syntax | Module | Description |
---|---|---|---|---|
realmask | a | a:<pattern> | gecosban | Checks whether users have a nick!user@host+real mask matching <pattern>. |
country | G | G:<pattern> | geoban | Matches against the two letter country code for the country that users are connecting from. |
channel | j | j:<pattern> | channelban | Checks whether users are in a channel matching <pattern>. |
class | n | n:<pattern> | classban | Checks whether users are in a connect class <pattern>. |
oper | O | O:<pattern> | operchans | Checks whether users are logged into a server operator account with an operator type matching <pattern>. |
account | R | R:<pattern> | services_account | Checks whether users are logged into a services account matching <pattern>. |
realname | r | r:<pattern> | gecosban | Checks whether users have a a real name (gecos) matching <pattern>. |
server | s | s:<pattern> | serverban | Checks whether users are on a server matching <pattern>. |
unauthed | U | U:<pattern> | services_account | Checks whether users matching <pattern> are not logged into a services account. |
gateway | w | w:<pattern> | cgiirc | New in v3.10.0! Matches against the name of the gateway that WebIRC users are connecting from. |
sslfp | z | z:<pattern> | sslmodes | Checks whether users have a TLS (SSL) client certificate with a fingerprint matching <pattern>. |