From 07b50fd21f4b3bbf2b7cd598069afeafb526db9a Mon Sep 17 00:00:00 2001 From: brain Date: Mon, 4 Dec 2006 17:18:45 +0000 Subject: Tweak this module to always allow remove from remote, no matter what the permissions git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5842 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/modules/m_remove.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/modules/m_remove.cpp') diff --git a/src/modules/m_remove.cpp b/src/modules/m_remove.cpp index 8d303d3e0..47d16f14c 100644 --- a/src/modules/m_remove.cpp +++ b/src/modules/m_remove.cpp @@ -171,14 +171,14 @@ class RemoveBase hasnokicks = (ServerInstance->FindModule("m_nokicks.so") && channel->IsModeSet('Q')); /* We support the +Q channel mode via. the m_nokicks module, if the module is loaded and the mode is set then disallow the /remove */ - if(!supportnokicks || !hasnokicks || (ulevel == ULINE)) + if ((!IS_LOCAL(user)) || (!supportnokicks || !hasnokicks || (ulevel == ULINE))) { /* We'll let everyone remove their level and below, eg: * ops can remove ops, halfops, voices, and those with no mode (no moders actually are set to 1) * a ulined target will get a higher level than it's possible for a /remover to get..so they're safe. * Nobody may remove a founder. */ - if ((ulevel > PEON) && (ulevel >= tlevel) && (tlevel != OWNER)) + if ((!IS_LOCAL(user)) || ((ulevel > PEON) && (ulevel >= tlevel) && (tlevel != OWNER))) { // no you can't just go from a std::ostringstream to a std::string, Om. -nenolod // but you can do this, nenolod -brain -- cgit v1.2.3