summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--conf/opers.conf.example13
-rw-r--r--src/channels.cpp2
2 files changed, 9 insertions, 6 deletions
diff --git a/conf/opers.conf.example b/conf/opers.conf.example
index 7aa51b0de..143544521 100644
--- a/conf/opers.conf.example
+++ b/conf/opers.conf.example
@@ -18,11 +18,14 @@
commands="DIE RESTART REHASH LOADMODULE UNLOADMODULE RELOAD"
# privs: special priviledges that users with this class may utilise.
- # users/mass-message: allows users with this priv to PRIVMSG and NOTICE to a server mask (e.g. NOTICE $*)
- # channels/auspex: allows opers with this priv to see more detail about channels than normal users.
- # users/auspex: allows opers with this priv to view more details about users than normal users.
- # servers/auspex: allows opers with this priv to see more detail about server information than normal users.
- privs="users/mass-message"
+ # VIEWING:
+ # - channels/auspex: allows opers with this priv to see more detail about channels than normal users.
+ # - users/auspex: allows opers with this priv to view more details about users than normal users.
+ # - servers/auspex: allows opers with this priv to see more detail about server information than normal users.
+ # ACTIONS
+ # - users/mass-message: allows users with this priv to PRIVMSG and NOTICE to a server mask (e.g. NOTICE $*)
+ # - channels/high-join-limit: allows users with this priv to join a higher maximum number of channels
+ privs="users/auspex channels/auspex servers/auspex users/mass-message channels/high-join-limit"
# usermodes: Oper-only usermodes that opers with this class can use.
usermodes="*"
diff --git a/src/channels.cpp b/src/channels.cpp
index 17c7749ea..7374f091e 100644
--- a/src/channels.cpp
+++ b/src/channels.cpp
@@ -276,7 +276,7 @@ Channel* Channel::JoinUser(InspIRCd* Instance, User *user, const char* cn, bool
}
else
{
- if (IS_OPER(user))
+ if (user->HasPrivPermission("channels/high-join-limit"))
{
if (user->chans.size() >= Instance->Config->OperMaxChans)
{