Committer  : entrope
CVSROOT    : /cvsroot/undernet-ircu
Module     : ircu2.10
Branch tags: u2_10_12_branch
Commit time: 2005-10-31 02:53:30 UTC

Modified files:
  Tag: u2_10_12_branch
     ChangeLog ircd/m_join.c

Log message:

Fix walk_lchan joins when channel key is OVERRIDE.

---------------------- diff included ----------------------
Index: ircu2.10/ChangeLog
diff -u ircu2.10/ChangeLog:1.710.2.18 ircu2.10/ChangeLog:1.710.2.19
--- ircu2.10/ChangeLog:1.710.2.18       Sun Oct 30 18:15:00 2005
+++ ircu2.10/ChangeLog  Sun Oct 30 18:53:20 2005
@@ -1,5 +1,10 @@
 2005-10-30  Michael Poole <[EMAIL PROTECTED]>
 
+       * ircd/m_join.c (m_join): Fix check for OVERRIDE when the real
+       channel key is OVERRIDE.  (Reworked patch from a1kmm.)
+
+2005-10-30  Michael Poole <[EMAIL PROTECTED]>
+
        * .cvsignore: Add autom4te.cache.
 
        * ircd/.cvsignore: Add convert-conf.
Index: ircu2.10/ircd/m_join.c
diff -u ircu2.10/ircd/m_join.c:1.34.2.1 ircu2.10/ircd/m_join.c:1.34.2.2
--- ircu2.10/ircd/m_join.c:1.34.2.1     Thu Oct  6 16:58:09 2005
+++ ircu2.10/ircd/m_join.c      Sun Oct 30 18:53:20 2005
@@ -20,7 +20,7 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Id: m_join.c,v 1.34.2.1 2005/10/06 23:58:09 entrope Exp $
+ * $Id: m_join.c,v 1.34.2.2 2005/10/31 02:53:20 entrope Exp $
  */
 
 #include "config.h"
@@ -210,13 +210,17 @@
       if (IsLocalChannel(chptr->chname)
           && HasPriv(sptr, PRIV_WALK_LCHAN)
           && !(flags & CHFL_CHANOP)
-          && key && !strcmp(key, "OVERRIDE")
-          && strcmp(chptr->mode.key, "OVERRIDE"))
+          && key && !strcmp(key, "OVERRIDE"))
       {
         switch (err) {
         case 0:
-          send_reply(sptr, ERR_DONTCHEAT, chptr->chname);
-          continue;
+          if (strcmp(chptr->mode.key, "OVERRIDE")
+              && strcmp(chptr->mode.apass, "OVERRIDE")
+              && strcmp(chptr->mode.upass, "OVERRIDE")) {
+            send_reply(sptr, err, chptr->chname);
+            continue;
+          }
+          break;
         case ERR_INVITEONLYCHAN: err = 'i'; break;
         case ERR_CHANNELISFULL:  err = 'l'; break;
         case ERR_BANNEDFROMCHAN: err = 'b'; break;
@@ -225,8 +229,9 @@
         default: err = '?'; break;
         }
         /* send accountability notice */
-        sendto_opmask_butone(0, SNO_HACK4, "OPER JOIN: %C JOIN %H "
-                             "(overriding +%c)", sptr, chptr, err);
+        if (err)
+          sendto_opmask_butone(0, SNO_HACK4, "OPER JOIN: %C JOIN %H "
+                               "(overriding +%c)", sptr, chptr, err);
         err = 0;
       }
 
----------------------- End of diff -----------------------
_______________________________________________
Patches mailing list
[email protected]
http://undernet.sbg.org/mailman/listinfo/patches

Reply via email to