summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Powell <petpow@saberuk.com>2018-04-15 22:37:04 +0100
committerPeter Powell <petpow@saberuk.com>2018-04-16 09:47:26 +0100
commit233c624056ade467c7b4b4dbebbf62628f00cc28 (patch)
tree1af4dd4f016cf1e8782572314a4bfac08d5dc233
parent5d3b128ca2a63d7c04b51f58c0e9c390255a9365 (diff)
Use an oper priv instead of a config flag for overriding callerid.
-rw-r--r--docs/conf/modules.conf.example3
-rw-r--r--docs/conf/opers.conf.example1
-rw-r--r--src/modules/m_callerid.cpp4
3 files changed, 2 insertions, 6 deletions
diff --git a/docs/conf/modules.conf.example b/docs/conf/modules.conf.example
index 082db340d..d4b254134 100644
--- a/docs/conf/modules.conf.example
+++ b/docs/conf/modules.conf.example
@@ -296,8 +296,6 @@
#-#-#-#-#-#-#-#-#-#-#- CALLERID CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#
# maxaccepts - Maximum number of entries a user can add to his #
# /ACCEPT list. Default is 16 entries. #
-# operoverride - Can opers (note: ALL opers) override callerid? #
-# Default is no. #
# tracknick - Preserve /accept entries when a user changes nick? #
# If no (the default), the user is removed from #
# everyone's accept list if he changes nickname. #
@@ -305,7 +303,6 @@
# notification sent to a user before he can be sent #
# another. Default is 1 minute. #
#<callerid maxaccepts="16"
-# operoverride="no"
# tracknick="no"
# cooldown="1m">
diff --git a/docs/conf/opers.conf.example b/docs/conf/opers.conf.example
index a3dfd9311..77c7f3e0a 100644
--- a/docs/conf/opers.conf.example
+++ b/docs/conf/opers.conf.example
@@ -30,6 +30,7 @@
# - users/flood/no-fakelag: prevents opers from being penalized with fake lag for flooding (*NOTE)
# - users/flood/no-throttle: allows opers with this priv to send commands without being throttled (*NOTE)
# - users/flood/increased-buffers: allows opers with this priv to send and receive data without worrying about being disconnected for exceeding limits (*NOTE)
+ #. - users/callerid-override: allows opers with this priv to message people using callerid without being on their callerid list.
#
# *NOTE: These privs are potentially dangerous, as they grant users with them the ability to hammer your server's CPU/RAM as much as they want, essentially.
privs="users/auspex channels/auspex servers/auspex users/mass-message users/flood/no-throttle users/flood/increased-buffers"
diff --git a/src/modules/m_callerid.cpp b/src/modules/m_callerid.cpp
index d69f5606f..f43dd448d 100644
--- a/src/modules/m_callerid.cpp
+++ b/src/modules/m_callerid.cpp
@@ -330,7 +330,6 @@ class ModuleCallerID : public Module
SimpleUserModeHandler myumode;
// Configuration variables:
- bool operoverride; // Operators can override callerid.
bool tracknick; // Allow ACCEPT entries to update with nick changes.
unsigned int notify_cooldown; // Seconds between notifications.
@@ -384,7 +383,7 @@ public:
if (!dest->IsModeSet(myumode) || (user == dest))
return MOD_RES_PASSTHRU;
- if (operoverride && user->IsOper())
+ if (user->HasPrivPermission("users/callerid-override"))
return MOD_RES_PASSTHRU;
callerid_data* dat = cmd.extInfo.get(dest, true);
@@ -420,7 +419,6 @@ public:
{
ConfigTag* tag = ServerInstance->Config->ConfValue("callerid");
cmd.maxaccepts = tag->getInt("maxaccepts", 16);
- operoverride = tag->getBool("operoverride");
tracknick = tag->getBool("tracknick");
notify_cooldown = tag->getDuration("cooldown", 60);
}