Operoverride

From UnrealIRCd documentation wiki
Jump to: navigation, search

OperOverride enables IRCOps to do things on channels that regular users can't (like: join a channel even when banned). It also enables IRCOps with this capability to see if a user is in a secret channel (in /WHOIS).

Not the default, use with care

Many network rules state that IRCOp's should manage servers and not get involved in channel matters as this is often considered 'abusive'. Channel matters should be dealt with by the channel owners and other channel operators (+hoaq). Because we encourage this principle in UnrealIRCd no oper is able to override by default. You must grant an IRCOp this privilege explicitly.

How to enable OperOverride

In your Oper block in your configuration file you may currently have something like this:

oper someone {
..
        operclass netadmin;
..

You can change this to:

oper someone {
..
        operclass netadmin-with-override;
..

UnrealIRCd ships with xyz-with-override blocks for all standard operclasses.

After you do the above, be sure to rehash the IRCd to make your changes effective.

For full information on how these privileges work, see the Operclass block.

Using OperOverride to manage channels

Once you have OperOverride enabled (see previous) and...

  • you want to join a channel but you are banned or otherwise prevented to (eg: invite only): invite yourself (/INVITE yournick #channel) and then you join (/JOIN #channel)
  • you want to change a channel mode: you can use the regular MODE command, eg: /MODE #channel -i
  • you want to kick someone (without having ops): you may use the regular KICK command

Example without OperOverride

You can use /SAJOIN yourself #channel to force yourself to join a channel and walk through bans/modes.

You can use /SAMODE #channel -i to force a mode change like -i on a channel. The benefit of using SAMODE (without operoverride) instead of MODE (with override) is that a MODE may be executed by your IRC client or a script automatically, like a flood detection script which sets a ban. Since SAMODE is normally never sent by a client or script you can be sure that it was manually entered by the IRCOp and thus the IRCOp 'knowingly' used his override capabilities.

These commands are only available when these capabilities are configured for your oper block, see the Oper and Operclass block.