chanops.org LibraIRC · TLS 6697
#modesInspIRCd 4 modes & extbans

#core-modes

InspIRCd 4 core channel modes

-server-
Set with /mode #chan +x, remove with -x. /mode #chan shows what is set.
modenameparameterwhat it does
+bban<mask>Bans matching users from joining.
+iinviteonly—Join only with an invite.
+kkey<key>Password needed to join.
+llimit<count>Maximum number of users.
+mmoderated—Only users with a prefix (+ or higher) can speak.
+nnoextmsg—No messages from outside the channel.
+pprivate—Hidden from WHOIS for non-members.
+ssecret—Hidden from WHOIS and LIST.
+ttopiclock—Only operators change the topic.
+oop<nick>Operator status (@).
+vvoice<nick>Voice status (+).

#module-modes

Module channel modes

@deniz
These come from modules. Which ones work depends on what the network loads — if a mode is rejected, ask staff in #help.
modenameparameterwhat it does
+Aallowinvite (allowinvite)—Anyone may /INVITE.
+Banticaps (anticaps){ban|block|mute|kick|kickban}:<minlen>:<percent>Acts on messages that are mostly capitals.
+cblockcolor (blockcolor)—Blocks messages with colour/formatting codes.
+Cnoctcp (noctcp)—Blocks CTCPs to the channel.
+Ddelayjoin (delayjoin)—Joins are hidden until the user speaks.
+ddelaymsg (delaymsg)<seconds>New joiners must wait before speaking.
+ebanexception (banexception)<mask>Exempts a mask from bans.
+Erepeat (repeat){ban|block|mute|kick|kickban}:<lines>:<sec>[:<diff>][:<backlog>]Acts on repeated messages.
+fflood (messageflood)[*]<lines>:<sec> or {ban|block|mute|kick|kickban}:<msgs>:<sec>Message flood protection.
+Fnickflood (nickflood)<changes>:<sec>Limits nick changes.
+gfilter (chanfilter)<glob>Blocks messages matching a pattern.
+Hhistory (chanhistory)<count>:<period>Replays recent lines to new joiners.
+Iinvex (inviteexception)<mask>Lets a mask bypass +i.
+Jkicknorejoin (kicknorejoin)<seconds>Kicked users must wait before rejoining.
+jjoinflood (joinflood)<joins>:<sec>Closes joins after a burst.
+Knoknock (knock)—Disables /KNOCK.
+Lredirect (redirect)<channel>Sends overflow (+l) users elsewhere.
+Mregmoderated (account)—Only logged-in users can speak.
+Nnonick (nonicks)—No nick changes while inside.
+Qnokick (nokicks)—Nobody can be kicked.
+Rreginvite (account)—Only logged-in users can join.
+rc_registered (services)—Marks a registered channel (set by services).
+Sstripcolor (stripcolor)—Strips colour codes instead of blocking.
+Tnonotice (nonotice)—Blocks channel NOTICEs.
+Uopmoderated (opmoderated)—Unprivileged messages are shown only to ops.
+uauditorium (auditorium)—Users only see the ops in the nick list.
+wautoop (autoop)<status>:<mask>Gives status automatically on join.
+Xexemptchanops (exemptchanops)<restriction>:<mode>Exempts ranks from restrictions.
+zsslonly (sslmodes)—Only TLS-connected users can join.
@deniz
Flood modes take an action: ban, block, mute, kick or kickban.
/mode #chan +f mute:6:4
/mode #chan +E kickban:3:10
/mode #chan +B block:10:70
/mode #chan +j 5:10

#extbans

Named extended bans

@kaan
Extbans are a core feature in v4 and are written by name (the letter still works). Use them with +b, +e or +I; prefix ! to invert. Acting bans stack with matching ones.
extbanlettertypematches / does
mute:mactingCan stay and read, but can't speak.
blockcolor:cactingCan't send colour codes.
noctcp:CactingCan't send CTCPs.
nonick:NactingCan't change nick inside.
nonotice:TactingCan't send NOTICEs.
stripcolor:SactingColours stripped from their messages.
opmoderated:uactingTheir messages reach only ops.
redirect:dactingSent to another channel: redirect:#chan:mask
blockinvite:AactingCan't use /INVITE.
nokick:QactingMatching privileged users can't kick.
account:RmatchingLogged in to a services account.
unauthed:UmatchingNot logged in to any account.
realname:rmatchingReal name (gecos) matches.
realmask:amatchingnick!user@host+realname matches.
country:GmatchingTwo-letter country code matches.
channel:jmatchingIs in a matching channel.
server:smatchingConnected via a matching server.
gateway:wmatchingWebIRC gateway name matches.
fingerprint:zmatchingTLS client-certificate fingerprint matches.
share:bmatchingMatches another channel's ban list.
bot:BmatchingUser is marked as a bot.
class:nmatchingConnect class matches.
oper:omatchingLogged in as a matching oper account.
opertype:OmatchingOper type matches.
/mode #chan +b mute:*!*@noisy.host
/mode #chan +b account:spammer
/mode #chan +b mute:unauthed:*!*@*
/mode #chan +e account:trustedfriend
/mode #chan +b redirect:#overflow:*!*@*
@kaan
Again: available extbans depend on the network's modules.

#masks

Ban masks

@mira
A mask is nick!user@host, * matches anything. LibraIRC cloaks hosts — ban the cloak you see in /whois, or better, ban by account:.
maskwho it hits
*!*@hostEveryone from that host — the usual choice.
nick!*@*Just that nick — easy to dodge.
account:nameEveryone logged in as that account.
mute:*!*@hostQuiet: they can read but not speak.
#chanops