CVSROOT    : /cvsroot/undernet-ircu
Module     : ircu2.10
Branch tags: u2_10_11
Commit time: 2003-01-07 11:15:54 UTC

Modified files:
  Tag: u2_10_11
     ChangeLog include/numeric.h include/patchlevel.h ircd/channel.c
     ircd/m_burst.c ircd/m_create.c ircd/m_gline.c ircd/m_userhost.c
     ircd/m_wallchops.c ircd/m_wallvoices.c ircd/m_whois.c
     ircd/s_err.c ircd/s_stats.c ircd/s_user.c ircd/table_gen.c
     ircd/whocmds.c

Log message:

Author: Isomer <[EMAIL PROTECTED]>
Log message:


Released!

---------------------- diff included ----------------------
Index: ircu2.10/ChangeLog
diff -u ircu2.10/ChangeLog:1.290.2.126 ircu2.10/ChangeLog:1.290.2.127
--- ircu2.10/ChangeLog:1.290.2.126      Sat Dec 14 17:02:37 2002
+++ ircu2.10/ChangeLog  Tue Jan  7 03:15:40 2003
@@ -1,3 +1,77 @@
+2002-01-05  Perry Lorier <[EMAIL PROTECTED]>
+       * include/patchlevel.h: Release this sucker
+
+2003-01-04  Kevin L Mitchell  <[EMAIL PROTECTED]>
+
+       * ircd/m_burst.c (ms_burst): There's a possibility that the user
+       could be destroyed by net rider kicks, causing a crash in
+       mode_invite_clear()--moved it to before the net rider kick loop
+
+2002-01-05  Perry Lorier <[EMAIL PROTECTED]>
+       * include/patchlevel.h: Bump PL
+
+2003-01-04  Kevin L Mitchell  <[EMAIL PROTECTED]>
+
+       * ircd/table_gen.c (makeTables): + is no longer a valid channel
+       prefix
+
+2002-12-31  hikari <[EMAIL PROTECTED]>
+       * m_userhost.c: Send the real userhost to opers.
+
+2002-12-31  David Mansell <[EMAIL PROTECTED]>
+       * ircd/m_burst.c (ms_burst): when kicking net riders, clear invites
+       too.
+
+2002-12-30  Perry Lorier <[EMAIL PROTECTED]>
+       * ircd/m_gline.c: Server set glines are FORCE'd.
+       
+2002-12-30  Perry Lorier <[EMAIL PROTECTED]>
+       * ircd/whocmds.c: s/&/&&/ as suggested by reed
+
+2002-12-28  David Mansell <[EMAIL PROTECTED]>
+ 
+       * ircd/channel.c (mode_parse_limit): don't allow -l when no limit is
+       set, don't allow -l with negative parameter (or unsigned >2^31).
+ 
+2002-12-29  volta <[EMAIL PROTECTED]>
+        
+       * ircd/whocmds.c: fixed a bug in the who reply for field 'l',
+       that breaks HIS
+
+2002-12-28  Kevin L Mitchell  <[EMAIL PROTECTED]>
+
+       * ircd/m_create.c (ms_create): we must pass in a flag, not a
+       boolean 1 or 0!  Good spotting splidge...
+
+2002-12-18  Kevin L Mitchell  <[EMAIL PROTECTED]>
+
+       * ircd/s_stats.c (stats_init): er, should have started at 0--not
+       that we'll ever see a /stats '\0', but just for completeness' sake
+       :)
+
+       * ircd/s_user.c (hide_hostmask): only send the reply if the user's
+       on my server
+
+2002-12-17 hikari <[EMAIL PROTECTED]>
+       * ircd/s_err.c: added RPL_HOSTHIDDEN reply text
+
+       * ircd/s_user.c: send a confirmation of mode +x using reply numeric
+       RPL_HOSTHIDDEN
+
+       * include/numeric.h: addition of RPL_HOSTHIDDEN as 396
+
+       * include/patchlevel.h: bumped to 04dev1
+
+2002-12-14 hikari <[EMAIL PROTECTED]>
+       * ircd/m_wallchops.c: fixed ms_wallchops()
+
+       * ircd/m_wallvoices.c: fixed ms_wallvoices()
+
+2002-12-13 Zoot <[EMAIL PROTECTED]>
+       * ircd/m_whois.c (do_whois): use IsChanOp and HasVoice macros
+       instead of is_chan_op() and has_voice since we already have
+       membership links.
+
 2002-12-15 Isomer <[EMAIL PROTECTED]>
        * include/patchlevel.h: Release this sucker!
 
Index: ircu2.10/include/numeric.h
diff -u ircu2.10/include/numeric.h:1.18.2.5 ircu2.10/include/numeric.h:1.18.2.6
--- ircu2.10/include/numeric.h:1.18.2.5 Tue Jun  4 11:22:13 2002
+++ ircu2.10/include/numeric.h  Tue Jan  7 03:15:41 2003
@@ -16,7 +16,7 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Id: numeric.h,v 1.18.2.5 2002/06/04 18:22:13 vampire Exp $
+ * $Id: numeric.h,v 1.18.2.6 2003/01/07 11:15:41 isomer Exp $
  */
 #ifndef INCLUDED_numeric_h
 #define INCLUDED_numeric_h
@@ -304,6 +304,7 @@
 /*      RPL_USERS            393        Dalnet/EFnet/IRCnet */
 /*      RPL_END_USERS        394        Dalnet/EFnet/IRCnet */
 /*      RPL_NOUSERS          395        Dalnet/EFnet/IRCnet */
+#define RPL_HOSTHIDDEN       396       /* UMODE +x completed succesfuly */
 
 /*
  * Errors are in the range from 400-599 currently and are grouped by what
Index: ircu2.10/include/patchlevel.h
diff -u ircu2.10/include/patchlevel.h:1.10.4.62 ircu2.10/include/patchlevel.h:1.10.4.63
--- ircu2.10/include/patchlevel.h:1.10.4.62     Sat Dec 14 17:02:38 2002
+++ ircu2.10/include/patchlevel.h       Tue Jan  7 03:15:41 2003
@@ -15,10 +15,10 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Id: patchlevel.h,v 1.10.4.62 2002/12/15 01:02:38 isomer Exp $
+ * $Id: patchlevel.h,v 1.10.4.63 2003/01/07 11:15:41 isomer Exp $
  *
  */
-#define PATCHLEVEL "03"
+#define PATCHLEVEL "04"
 
 #define RELEASE ".11."
 
Index: ircu2.10/ircd/channel.c
diff -u ircu2.10/ircd/channel.c:1.73.2.11 ircu2.10/ircd/channel.c:1.73.2.12
--- ircu2.10/ircd/channel.c:1.73.2.11   Sat Dec 14 17:02:39 2002
+++ ircu2.10/ircd/channel.c     Tue Jan  7 03:15:42 2003
@@ -17,7 +17,7 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Id: channel.c,v 1.73.2.11 2002/12/15 01:02:39 isomer Exp $
+ * $Id: channel.c,v 1.73.2.12 2003/01/07 11:15:42 isomer Exp $
  */
 #include "config.h"
 
@@ -1940,6 +1940,9 @@
     t_limit = strtoul(state->parv[state->args_used++], 0, 10); /* grab arg */
     state->parc--;
     state->max_args--;
+    
+    if ((int)t_limit<0) /* don't permit a negative limit */
+      return;
 
     if (!(state->flags & MODE_PARSE_WIPEOUT) &&
        (!t_limit || t_limit == state->chptr->mode.limit))
@@ -1952,6 +1955,10 @@
     send_notoper(state);
     return;
   }
+
+  /* Can't remove a limit that's not there */
+  if (state->dir == MODE_DEL && !state->chptr->mode.limit)
+    return;
 
   if (state->done & DONE_LIMIT) /* allow limit to be set only once */
     return;
Index: ircu2.10/ircd/m_burst.c
diff -u ircu2.10/ircd/m_burst.c:1.12.2.4 ircu2.10/ircd/m_burst.c:1.12.2.5
--- ircu2.10/ircd/m_burst.c:1.12.2.4    Thu Oct 10 02:13:25 2002
+++ ircu2.10/ircd/m_burst.c     Tue Jan  7 03:15:43 2003
@@ -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_burst.c,v 1.12.2.4 2002/10/10 09:13:25 isomer Exp $
+ * $Id: m_burst.c,v 1.12.2.5 2003/01/07 11:15:43 isomer Exp $
  */
 
 /*
@@ -167,6 +167,8 @@
       if (parv[param][0] != '+')
         continue;
       if (strchr(parv[param], 'i') || strchr(parv[param], 'k')) {
+        /* Clear any outstanding rogue invites */
+        mode_invite_clear(chptr);
         for (member = chptr->members; member; member = nmember) {
           nmember=member->next_member;
           if (!MyUser(member->user) || IsZombie(member))
Index: ircu2.10/ircd/m_create.c
diff -u ircu2.10/ircd/m_create.c:1.9.2.3 ircu2.10/ircd/m_create.c:1.9.2.4
--- ircu2.10/ircd/m_create.c:1.9.2.3    Sat Dec 14 17:02:40 2002
+++ ircu2.10/ircd/m_create.c    Tue Jan  7 03:15:43 2003
@@ -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_create.c,v 1.9.2.3 2002/12/15 01:02:40 isomer Exp $
+ * $Id: m_create.c,v 1.9.2.4 2003/01/07 11:15:43 isomer Exp $
  */
 
 /*
@@ -180,7 +180,7 @@
       chptr->creationtime = chanTS;
 
     joinbuf_join(badop ? &join : &create, chptr,
-                (badop || CHFL_CHANOP));
+                (badop ? 0 : CHFL_CHANOP));
   }
 
   joinbuf_flush(&join); /* flush out the joins and creates */
Index: ircu2.10/ircd/m_gline.c
diff -u ircu2.10/ircd/m_gline.c:1.22.2.2 ircu2.10/ircd/m_gline.c:1.22.2.3
--- ircu2.10/ircd/m_gline.c:1.22.2.2    Wed Aug 28 05:27:29 2002
+++ ircu2.10/ircd/m_gline.c     Tue Jan  7 03:15:44 2003
@@ -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_gline.c,v 1.22.2.2 2002/08/28 12:27:29 kev Exp $
+ * $Id: m_gline.c,v 1.22.2.3 2003/01/07 11:15:44 isomer Exp $
  */
 
 /*
@@ -146,6 +146,9 @@
     reason = parv[5];
   } else
     return need_more_params(sptr, "GLINE");
+
+  if (IsServer(sptr))
+    flags |= GLINE_FORCE;
 
   if (!(target[0] == '*' && target[1] == '\0')) {
     if (!(acptr = FindNServer(target)))
Index: ircu2.10/ircd/m_userhost.c
diff -u ircu2.10/ircd/m_userhost.c:1.9.2.1 ircu2.10/ircd/m_userhost.c:1.9.2.2
--- ircu2.10/ircd/m_userhost.c:1.9.2.1  Wed Apr  3 07:20:57 2002
+++ ircu2.10/ircd/m_userhost.c  Tue Jan  7 03:15:44 2003
@@ -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_userhost.c,v 1.9.2.1 2002/04/03 15:20:57 kev Exp $
+ * $Id: m_userhost.c,v 1.9.2.2 2003/01/07 11:15:44 isomer Exp $
  */
 
 /*
@@ -97,7 +97,9 @@
   msgq_append(0, mb, "%s%s=%c%s@%s", cli_name(cptr),
              HasPriv(cptr, PRIV_DISPLAY) ? "*" : "",
              cli_user(cptr)->away ? '-' : '+', cli_user(cptr)->username,
-             cli_user(cptr)->host);
+              HasHiddenHost(cptr) && !IsAnOper(sptr) ?
+             cli_user(cptr)->host :
+              cli_user(cptr)->realhost);
 }
 
 /*
Index: ircu2.10/ircd/m_wallchops.c
diff -u ircu2.10/ircd/m_wallchops.c:1.5.2.1 ircu2.10/ircd/m_wallchops.c:1.5.2.2
--- ircu2.10/ircd/m_wallchops.c:1.5.2.1 Sat Dec 14 17:02:42 2002
+++ ircu2.10/ircd/m_wallchops.c Tue Jan  7 03:15:44 2003
@@ -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_wallchops.c,v 1.5.2.1 2002/12/15 01:02:42 isomer Exp $
+ * $Id: m_wallchops.c,v 1.5.2.2 2003/01/07 11:15:44 isomer Exp $
  */
 
 /*
@@ -147,7 +147,7 @@
     if (client_can_send_to_channel(sptr, chptr)) {
       sendcmdto_channel_butone(sptr, CMD_WALLCHOPS, chptr, cptr,
                               SKIP_DEAF | SKIP_BURST | SKIP_NONOPS,
-                              "%H :@ %s", chptr, parv[parc - 1]);
+                              "%H :%s", chptr, parv[parc - 1]);
     } else
       send_reply(sptr, ERR_CANNOTSENDTOCHAN, parv[1]);
   }
Index: ircu2.10/ircd/m_wallvoices.c
diff -u ircu2.10/ircd/m_wallvoices.c:1.1.4.1 ircu2.10/ircd/m_wallvoices.c:1.1.4.2
--- ircu2.10/ircd/m_wallvoices.c:1.1.4.1        Sat Dec 14 17:02:42 2002
+++ ircu2.10/ircd/m_wallvoices.c        Tue Jan  7 03:15:44 2003
@@ -19,7 +19,7 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Id: m_wallvoices.c,v 1.1.4.1 2002/12/15 01:02:42 isomer Exp $
+ * $Id: m_wallvoices.c,v 1.1.4.2 2003/01/07 11:15:44 isomer Exp $
  */
 
 /*
@@ -146,7 +146,7 @@
     if (client_can_send_to_channel(sptr, chptr)) {
       sendcmdto_channel_butone(sptr, CMD_WALLVOICES, chptr, cptr,
                               SKIP_DEAF | SKIP_BURST | SKIP_NONVOICES, 
-                              "%H :+ %s", chptr, parv[parc - 1]);
+                              "%H :%s", chptr, parv[parc - 1]);
     } else
       send_reply(sptr, ERR_CANNOTSENDTOCHAN, parv[1]);
   }
Index: ircu2.10/ircd/m_whois.c
diff -u ircu2.10/ircd/m_whois.c:1.19.2.9 ircu2.10/ircd/m_whois.c:1.19.2.10
--- ircu2.10/ircd/m_whois.c:1.19.2.9    Sat Dec 14 17:02:42 2002
+++ ircu2.10/ircd/m_whois.c     Tue Jan  7 03:15:44 2003
@@ -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_whois.c,v 1.19.2.9 2002/12/15 01:02:42 isomer Exp $
+ * $Id: m_whois.c,v 1.19.2.10 2003/01/07 11:15:44 isomer Exp $
  */
 
 /*
@@ -166,12 +166,17 @@
        }
        if (IsDeaf(acptr))
          *(buf + len++) = '-';
-       if (is_chan_op(acptr, chptr))
-         *(buf + len++) = '@';
-       else if (has_voice(acptr, chptr))
-         *(buf + len++) = '+';
-       else if (IsZombie(chan))
+       if (IsZombie(chan))
+       {
          *(buf + len++) = '!';
+       }
+       else
+       {
+         if (IsChanOp(chan))
+           *(buf + len++) = '@';
+         else if (HasVoice(chan))
+           *(buf + len++) = '+';
+       }
        if (len)
           *(buf + len) = '\0';
        strcpy(buf + len, chptr->chname);
Index: ircu2.10/ircd/s_err.c
diff -u ircu2.10/ircd/s_err.c:1.30.2.7 ircu2.10/ircd/s_err.c:1.30.2.8
--- ircu2.10/ircd/s_err.c:1.30.2.7      Thu Oct 10 02:13:25 2002
+++ ircu2.10/ircd/s_err.c       Tue Jan  7 03:15:44 2003
@@ -16,7 +16,7 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Id: s_err.c,v 1.30.2.7 2002/10/10 09:13:25 isomer Exp $
+ * $Id: s_err.c,v 1.30.2.8 2003/01/07 11:15:44 isomer Exp $
  */
 #include "config.h"
 
@@ -824,7 +824,7 @@
 /* 395 */
   { 0 },
 /* 396 */
-  { 0 },
+  { RPL_HOSTHIDDEN, "%s.%s :is now your hidden host", "396" },
 /* 397 */
   { 0 },
 /* 398 */
Index: ircu2.10/ircd/s_stats.c
diff -u ircu2.10/ircd/s_stats.c:1.16.2.7 ircu2.10/ircd/s_stats.c:1.16.2.8
--- ircu2.10/ircd/s_stats.c:1.16.2.7    Sat Dec 14 17:02:44 2002
+++ ircu2.10/ircd/s_stats.c     Tue Jan  7 03:15:44 2003
@@ -19,7 +19,7 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Id: s_stats.c,v 1.16.2.7 2002/12/15 01:02:44 isomer Exp $
+ * $Id: s_stats.c,v 1.16.2.8 2003/01/07 11:15:44 isomer Exp $
  */
 #include "config.h"
 
@@ -477,7 +477,7 @@
   int i;
 
   /* Make darn sure the statsmap array is initialized to all zeros */
-  for (i = 1; i < 256; i++)
+  for (i = 0; i < 256; i++)
     statsmap[i] = 0;
 
   /* Build the mapping */
Index: ircu2.10/ircd/s_user.c
diff -u ircu2.10/ircd/s_user.c:1.52.2.14 ircu2.10/ircd/s_user.c:1.52.2.15
--- ircu2.10/ircd/s_user.c:1.52.2.14    Sat Dec 14 17:02:44 2002
+++ ircu2.10/ircd/s_user.c      Tue Jan  7 03:15:44 2003
@@ -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: s_user.c,v 1.52.2.14 2002/12/15 01:02:44 isomer Exp $
+ * $Id: s_user.c,v 1.52.2.15 2003/01/07 11:15:44 isomer Exp $
  */
 #include "config.h"
 
@@ -1058,6 +1058,11 @@
   ircd_snprintf(0, cli_user(cptr)->host, HOSTLEN, "%s.%s",
     cli_user(cptr)->account, feature_str(FEAT_HIDDEN_HOST));
   SetFlag(cptr, flag);
+
+  /* ok, the client is now fully hidden, so let them know -- hikari */
+  if (MyConnect(cptr))
+    send_reply(cptr, RPL_HOSTHIDDEN, cli_user(cptr)->account,
+              feature_str(FEAT_HIDDEN_HOST));
 
   /*
    * Go through all channels the client was on, rejoin him
Index: ircu2.10/ircd/table_gen.c
diff -u ircu2.10/ircd/table_gen.c:1.4 ircu2.10/ircd/table_gen.c:1.4.2.1
--- ircu2.10/ircd/table_gen.c:1.4       Thu Jun 14 11:23:24 2001
+++ ircu2.10/ircd/table_gen.c   Tue Jan  7 03:15:44 2003
@@ -120,7 +120,7 @@
   markRange(NTL_IRCUI, '\xd8', '\xde');
   markString(NTL_IRCUI, ".-_^'`~");
   markString(NTL_EOL, "\n\r");
-  markString(NTL_CHPFX, "#&+");
+  markString(NTL_CHPFX, "#&");
   markString(NTL_KTIME, " ,-0123456789");
 
   /* And finally let's take care of the toLower/toUpper stuff */
Index: ircu2.10/ircd/whocmds.c
diff -u ircu2.10/ircd/whocmds.c:1.12.2.7 ircu2.10/ircd/whocmds.c:1.12.2.8
--- ircu2.10/ircd/whocmds.c:1.12.2.7    Thu Oct 10 02:13:26 2002
+++ ircu2.10/ircd/whocmds.c     Tue Jan  7 03:15:44 2003
@@ -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: whocmds.c,v 1.12.2.7 2002/10/10 09:13:26 isomer Exp $
+ * $Id: whocmds.c,v 1.12.2.8 2003/01/07 11:15:44 isomer Exp $
  */
 #include "config.h"
 
@@ -212,7 +212,10 @@
   if (fields & WHO_FIELD_IDL)
   {
     *p1++ = ' ';
-    if (MyUser(acptr)) {
+    if (MyUser(acptr) && 
+                   (IsAnOper(sptr) 
+                    || !feature_bool(FEAT_HIS_WHO_SERVERNAME) 
+                    || acptr == sptr)) {
            p1 += ircd_snprintf(0, p1, 11, "%d",
                                CurrentTime - cli_user(acptr)->last);
     }    
----------------------- End of diff -----------------------

Reply via email to