CVSROOT    : /cvsroot/undernet-ircu
Module     : ircu2.10
Branch tags: u2_10_11
Commit time: 2002-10-10 09:13:36 UTC

Modified files:
  Tag: u2_10_11
     ChangeLog doc/readme.features include/ircd_features.h
     include/patchlevel.h ircd/ircd_features.c ircd/ircd_relay.c
     ircd/m_account.c ircd/m_burst.c ircd/m_clearmode.c ircd/m_join.c
     ircd/m_names.c ircd/m_squit.c ircd/m_stats.c ircd/m_version.c
     ircd/s_err.c ircd/s_user.c ircd/whocmds.c

Log message:

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

Releasing 2.10.11.02!

---------------------- diff included ----------------------
Index: ircu2.10/ChangeLog
diff -u ircu2.10/ChangeLog:1.290.2.124 ircu2.10/ChangeLog:1.290.2.125
--- ircu2.10/ChangeLog:1.290.2.124      Sat Sep 14 13:44:31 2002
+++ ircu2.10/ChangeLog  Thu Oct 10 02:13:23 2002
@@ -1,3 +1,78 @@
+2002-10-10  Perry Lorier <[EMAIL PROTECTED]>
+
+       * include/patchlevel.h (PATCHLEVEL): release u2.10.11.02
+
+2002-10-10  Perry Lorier <[EMAIL PROTECTED]>
+
+       * ircd/ircd_relay.c: X doesn't announce +s yet, we can't enable this
+
+2002-10-09  [EMAIL PROTECTED]
+
+       * ircd/m_stats.c: unsigned char index into array bug
+
+2002-10-05  Zoot <[EMAIL PROTECTED]>
+
+       * ircd/ircd_relay.c (relay_directed_message): fix a bug that had
+       completely broken directed messages
+                  
+2002-10-07  Perry Lorier <[EMAIL PROTECTED]>
+
+       * ircd/s_user.c: Fixed bugs as pointed out by Kev, doh!
+       * ircd/ircd_features.c: Fixed bugs as pointed out by Kev, doh!
+
+2002-10-06  Perry Lorier <[EMAIL PROTECTED]>
+
+       * ircd/s_err.c, ircd/s_user.c: Add pointless spam, as required by 
+       CFV-202.
+
+2002-10-05  Zoot <[EMAIL PROTECTED]> (and Isomer <[EMAIL PROTECTED]>)
+
+       * ircd/m_account.c (ms_account): check the length of the account;
+       ignore accounts that are too long and send a warning through wallops.
+       Updated by Isomer to use protocol_violation.
+
+2002-09-25  David Mansell  <[EMAIL PROTECTED]>
+ 
+       * ircd/m_burst.c: Fixed list walking bug.
+ 
+2002-10-04  Perry Lorier <[EMAIL PROTECTED]>
+       * ircd/m_version.c: was showing 005 on VERSION for opers only(!?)
+
+2002-10-04  Perry Lorier <[EMAIL PROTECTED]>
+       * ircd/m_names.c: Fixed bug where RPL_ENDOFNAMES was not sent when
+       requesting names from a channel you are not on.  Reported by
+       mike2 and Liandrin.
+
+2002-09-02  Alexander Maassen <[EMAIL PROTECTED]>
+
+       * doc/readme.features: Fixed bugs regarding certain features
+       being associated to WHOIS instead of WHO.
+ 
+2002-05-21  Andrew Miller  <[EMAIL PROTECTED]>
+
+       * ircd/ircd_relay.c: stop an information leak about the
+       network topography from relayed messages.
+ 
+2002-09-02  Mathieu Rene  <[EMAIL PROTECTED]>
+       * ircd/m_squit.c (ms_squit): Fixed a bug that caused server
+        to crash when receiving a SQUIT without any reason or timestamp.
+ 
+2002-06-18  Alex Badea  <[EMAIL PROTECTED]>
+
+       * ircd/m_burst.c (ms_burst): kick local members if the channel
+       has a larger local TS and it's +i or +k remotely (anti net.ride)
+
+2002-09-16  Jochen Meesters <[EMAIL PROTECTED]>
+
+       * ircd/whocmds.h: Changed output of /who %a command, making it
+       easier to parse (puts field in front of realname, and reply 0
+       if user has no AC)
+
+2002-09-16  Kevin L Mitchell  <[EMAIL PROTECTED]>
+
+       * include/patchlevel.h (PATCHLEVEL): bump patchlevel for
+       u2_10_11_02 development branch
+
 2002-09-14  Kevin L Mitchell  <[EMAIL PROTECTED]>
 
        * include/patchlevel.h (PATCHLEVEL): release u2.10.11.01
Index: ircu2.10/doc/readme.features
diff -u ircu2.10/doc/readme.features:1.2.2.8 ircu2.10/doc/readme.features:1.2.2.9
--- ircu2.10/doc/readme.features:1.2.2.8        Sat Sep 14 13:44:31 2002
+++ ircu2.10/doc/readme.features        Thu Oct 10 02:13:24 2002
@@ -128,6 +128,13 @@
 If you enable NODEFAULTMOTD, this specifies a one-line banner to be sent
 to the client in addition to the instructions mentioned above.
 
+PROVIDER
+ * Type: string
+ * Default: NULL
+
+This string as added to the 001 numeric prefixed with "via" before the nick.
+It's used for providing promotional space to providers as per CFV-202
+
 KILL_IPMISMATCH
  * Type: boolean
  * Default: FALSE
@@ -968,19 +975,19 @@
  * Type: boolean
  * Default: TRUE
 
-As per UnderNet CFV-165, this removes server names in replies to /WHOIS.
+As per UnderNet CFV-165, this removes idle time in replies to /WHOIS.
 
 HIS_WHO_SERVERNAME
  * Type: boolean
  * Default: TRUE
 
-As per UnderNet CFV-165, this removes server names in replies to /WHOIS.
+As per UnderNet CFV-165, this removes server names in replies to /WHO.
 
 HIS_WHO_HOPCOUNT
  * Type: boolean
  * Default: TRUE
 
-As per UnderNet CFV-165, this removes server names in replies to /WHOIS.
+As per UnderNet CFV-165, this replaces hopcount to a static 3 in replies to /WHO.
 
 HIS_BANWHO
  * Type: boolean
Index: ircu2.10/include/ircd_features.h
diff -u ircu2.10/include/ircd_features.h:1.11.2.8 
ircu2.10/include/ircd_features.h:1.11.2.9
--- ircu2.10/include/ircd_features.h:1.11.2.8   Sat Sep 14 13:44:32 2002
+++ ircu2.10/include/ircd_features.h    Thu Oct 10 02:13:24 2002
@@ -18,7 +18,7 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Id: ircd_features.h,v 1.11.2.8 2002/09/14 20:44:32 kev Exp $
+ * $Id: ircd_features.h,v 1.11.2.9 2002/10/10 09:13:24 isomer Exp $
  */
 
 struct Client;
@@ -35,6 +35,7 @@
   FEAT_SERVER_PORT,
   FEAT_NODEFAULTMOTD,
   FEAT_MOTD_BANNER,
+  FEAT_PROVIDER,
   FEAT_KILL_IPMISMATCH,
   FEAT_IDLE_FROM_MSG,
   FEAT_HUB,
Index: ircu2.10/include/patchlevel.h
diff -u ircu2.10/include/patchlevel.h:1.10.4.60 ircu2.10/include/patchlevel.h:1.10.4.61
--- ircu2.10/include/patchlevel.h:1.10.4.60     Sat Sep 14 13:44:32 2002
+++ ircu2.10/include/patchlevel.h       Thu Oct 10 02:13:24 2002
@@ -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.60 2002/09/14 20:44:32 kev Exp $
+ * $Id: patchlevel.h,v 1.10.4.61 2002/10/10 09:13:24 isomer Exp $
  *
  */
-#define PATCHLEVEL "01"
+#define PATCHLEVEL "02"
 
 #define RELEASE ".11."
 
Index: ircu2.10/ircd/ircd_features.c
diff -u ircu2.10/ircd/ircd_features.c:1.15.2.9 ircu2.10/ircd/ircd_features.c:1.15.2.10
--- ircu2.10/ircd/ircd_features.c:1.15.2.9      Sat Sep 14 13:44:32 2002
+++ ircu2.10/ircd/ircd_features.c       Thu Oct 10 02:13:24 2002
@@ -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: ircd_features.c,v 1.15.2.9 2002/09/14 20:44:32 kev Exp $
+ * $Id: ircd_features.c,v 1.15.2.10 2002/10/10 09:13:24 isomer Exp $
  */
 #include "config.h"
 
@@ -242,6 +242,7 @@
   F_I(SERVER_PORT, FEAT_OPER, 4400, 0),
   F_B(NODEFAULTMOTD, 0, 1, 0),
   F_S(MOTD_BANNER, FEAT_NULL, 0, 0),
+  F_S(PROVIDER, FEAT_NULL, 0, 0),
   F_B(KILL_IPMISMATCH, FEAT_OPER, 0, 0),
   F_B(IDLE_FROM_MSG, 0, 1, 0),
   F_B(HUB, 0, 0, 0),
Index: ircu2.10/ircd/ircd_relay.c
diff -u ircu2.10/ircd/ircd_relay.c:1.8.2.1 ircu2.10/ircd/ircd_relay.c:1.8.2.2
--- ircu2.10/ircd/ircd_relay.c:1.8.2.1  Sat Sep 14 13:44:32 2002
+++ ircu2.10/ircd/ircd_relay.c  Thu Oct 10 02:13:25 2002
@@ -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: ircd_relay.c,v 1.8.2.1 2002/09/14 20:44:32 kev Exp $
+ * $Id: ircd_relay.c,v 1.8.2.2 2002/10/10 09:13:25 isomer Exp $
  */
 #include "config.h"
 
@@ -159,7 +159,12 @@
   assert(0 != text);
   assert(0 != server);
 
-  if (0 == (acptr = FindServer(server + 1))) {
+  if ((acptr = FindServer(server + 1)) == NULL 
+#if 0
+/* X doesn't say it's a service yet! */
+      || !IsService(acptr)
+#endif
+      ) {
     send_reply(sptr, ERR_NOSUCHNICK, name);
     return;
   }
@@ -190,9 +195,12 @@
   if (!(acptr = FindUser(name)) || !MyUser(acptr) ||
       (!EmptyString(host) && 0 != match(host, cli_user(acptr)->host)) ||
       !IsChannelService(acptr)) {
-#if 0
+    /*
+     * By this stage we might as well not bother because they will
+     * know that this server is currently linked because of the
+     * increased lag.
+     */
     send_reply(sptr, ERR_NOSUCHNICK, name);
-#endif
     return;
   }
 
Index: ircu2.10/ircd/m_account.c
diff -u ircu2.10/ircd/m_account.c:1.1.2.2 ircu2.10/ircd/m_account.c:1.1.2.3
--- ircu2.10/ircd/m_account.c:1.1.2.2   Sun Feb  3 12:31:46 2002
+++ ircu2.10/ircd/m_account.c   Thu Oct 10 02:13:25 2002
@@ -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_account.c,v 1.1.2.2 2002/02/03 20:31:46 kev Exp $
+ * $Id: m_account.c,v 1.1.2.3 2002/10/10 09:13:25 isomer Exp $
  */
 
 /*
@@ -119,6 +119,10 @@
                              cli_user(acptr)->account, parv[2]);
 
   assert(0 == cli_user(acptr)->account[0]);
+
+  if (strlen(parv[2]) > ACCOUNTLEN) {
+    return protocol_violation(cptr, "Received account (%s) longer than %d for %s; 
+ignoring.", parv[2], ACCOUNTLEN, cli_name(acptr));
+  }
 
   ircd_strncpy(cli_user(acptr)->account, parv[2], ACCOUNTLEN);
   hide_hostmask(acptr, FLAGS_ACCOUNT);
Index: ircu2.10/ircd/m_burst.c
diff -u ircu2.10/ircd/m_burst.c:1.12.2.3 ircu2.10/ircd/m_burst.c:1.12.2.4
--- ircu2.10/ircd/m_burst.c:1.12.2.3    Wed Jul 17 15:55:40 2002
+++ ircu2.10/ircd/m_burst.c     Thu Oct 10 02:13:25 2002
@@ -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.3 2002/07/17 22:55:40 kev Exp $
+ * $Id: m_burst.c,v 1.12.2.4 2002/10/10 09:13:25 isomer Exp $
  */
 
 /*
@@ -139,7 +139,7 @@
   struct ModeBuf modebuf, *mbuf = 0;
   struct Channel *chptr;
   time_t timestamp;
-  struct Membership *member;
+  struct Membership *member, *nmember;
   struct SLink *lp, **lp_p;
   unsigned int parse_flags = (MODE_PARSE_FORCE | MODE_PARSE_BURST);
   int param, nickpos = 0, banpos = 0;
@@ -156,6 +156,33 @@
     return 0; /* can't create the channel? */
 
   timestamp = atoi(parv[2]);
+
+  if (!chptr->creationtime || chptr->creationtime > timestamp) {
+    /*
+     * Kick local members if channel is +i or +k and our TS was larger
+     * than the burst TS (anti net.ride). The modes hack is here because
+     * we have to do this before mode_parse, as chptr may go away.
+     */
+    for (param = 3; param < parc; param++) {
+      if (parv[param][0] != '+')
+        continue;
+      if (strchr(parv[param], 'i') || strchr(parv[param], 'k')) {
+        for (member = chptr->members; member; member = nmember) {
+          nmember=member->next_member;
+          if (!MyUser(member->user) || IsZombie(member))
+            continue;
+          sendcmdto_serv_butone(&me, CMD_KICK, NULL, "%H %C :Net Rider", chptr, 
+member->user);
+          sendcmdto_channel_butserv_butone(&me, CMD_KICK, chptr, NULL, "%H %C :Net 
+Rider", chptr, member->user);
+          make_zombie(member, member->user, &me, &me, chptr);
+        }
+      }
+      break;
+    }
+
+    /* If the channel had only locals, it went away by now. */
+    if (!(chptr = get_channel(sptr, parv[1], CGT_CREATE)))
+      return 0; /* can't create the channel? */
+  }
 
   /* turn off burst joined flag */
   for (member = chptr->members; member; member = member->next_member)
Index: ircu2.10/ircd/m_clearmode.c
diff -u ircu2.10/ircd/m_clearmode.c:1.19.2.2 ircu2.10/ircd/m_clearmode.c:1.19.2.3
--- ircu2.10/ircd/m_clearmode.c:1.19.2.2        Fri May 17 09:42:19 2002
+++ ircu2.10/ircd/m_clearmode.c Thu Oct 10 02:13:25 2002
@@ -21,7 +21,7 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Id: m_clearmode.c,v 1.19.2.2 2002/05/17 16:42:19 kev Exp $
+ * $Id: m_clearmode.c,v 1.19.2.3 2002/10/10 09:13:25 isomer Exp $
  */
 
 /*
@@ -299,7 +299,6 @@
       return send_reply(sptr, ERR_NOPRIVILEGES);
     force = 1;
   }
-  clean_channelname(chname);
 
   if (!HasPriv(sptr,
               IsLocalChannel(chname) ? PRIV_LOCAL_OPMODE : PRIV_OPMODE))
Index: ircu2.10/ircd/m_join.c
diff -u ircu2.10/ircd/m_join.c:1.16.2.1 ircu2.10/ircd/m_join.c:1.16.2.2
--- ircu2.10/ircd/m_join.c:1.16.2.1     Thu Aug 22 12:30:18 2002
+++ ircu2.10/ircd/m_join.c      Thu Oct 10 02:13:25 2002
@@ -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.16.2.1 2002/08/22 19:30:18 kev Exp $
+ * $Id: m_join.c,v 1.16.2.2 2002/10/10 09:13:25 isomer Exp $
  */
 
 /*
@@ -314,7 +314,6 @@
 
   for (name = ircd_strtok(&p, chanlist, ","); name;
        name = ircd_strtok(&p, 0, ",")) {
-    clean_channelname(name);
 
     if (join0(&join, cptr, sptr, name)) /* did client do a JOIN 0? */
       continue;
Index: ircu2.10/ircd/m_names.c
diff -u ircu2.10/ircd/m_names.c:1.15 ircu2.10/ircd/m_names.c:1.15.2.1
--- ircu2.10/ircd/m_names.c:1.15        Fri Jun 29 08:51:02 2001
+++ ircu2.10/ircd/m_names.c     Thu Oct 10 02:13:25 2002
@@ -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_names.c,v 1.15 2001/06/29 15:51:02 kev Exp $
+ * $Id: m_names.c,v 1.15.2.1 2002/10/10 09:13:25 isomer Exp $
  */
 
 /*
@@ -335,6 +335,7 @@
        *  non secret channels.
        */ 
       do_names(sptr, chptr, NAMES_VIS);
+      send_reply(sptr, RPL_ENDOFNAMES, para); 
     } 
   } else { /* Channel doesn't exist. */ 
       send_reply(sptr, RPL_ENDOFNAMES, para); 
Index: ircu2.10/ircd/m_squit.c
diff -u ircu2.10/ircd/m_squit.c:1.6.2.4 ircu2.10/ircd/m_squit.c:1.6.2.5
--- ircu2.10/ircd/m_squit.c:1.6.2.4     Tue Jan  8 13:38:12 2002
+++ ircu2.10/ircd/m_squit.c     Thu Oct 10 02:13:25 2002
@@ -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_squit.c,v 1.6.2.4 2002/01/08 21:38:12 kev Exp $
+ * $Id: m_squit.c,v 1.6.2.5 2002/10/10 09:13:25 isomer Exp $
  */
 #include "config.h"
 
@@ -60,7 +60,7 @@
 {
   const char* server = parv[1];
   struct Client *acptr;
-  time_t timestamp;
+  time_t timestamp = 0;
   char *comment = 0;
   
   if (parc < 2) 
@@ -85,8 +85,10 @@
   if (IsMe(acptr)) {
     acptr = cptr; /* Bugfix by Prefect */
   }
-       
+  if (parc>2)
   timestamp = atoi(parv[2]);
+  else
+   protocol_violation(cptr, "SQUIT with no timestamp/reason");  
 
   /* If atoi(parv[2]) == 0 we must indeed squit !
    * It will be our neighbour.
Index: ircu2.10/ircd/m_stats.c
diff -u ircu2.10/ircd/m_stats.c:1.22.2.8 ircu2.10/ircd/m_stats.c:1.22.2.9
--- ircu2.10/ircd/m_stats.c:1.22.2.8    Fri Jul 26 20:39:48 2002
+++ ircu2.10/ircd/m_stats.c     Thu Oct 10 02:13:25 2002
@@ -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_stats.c,v 1.22.2.8 2002/07/27 03:39:48 kev Exp $
+ * $Id: m_stats.c,v 1.22.2.9 2002/10/10 09:13:25 isomer Exp $
  */
 
 /*
@@ -117,7 +117,7 @@
 int
 m_stats(struct Client* cptr, struct Client* sptr, int parc, char* parv[])
 {
-  char stat = parc > 1 ? parv[1][0] : '\0';
+  unsigned char stat = parc > 1 ? parv[1][0] : '\0';
   struct StatDesc *sd;
   char *param = 0;
 
Index: ircu2.10/ircd/m_version.c
diff -u ircu2.10/ircd/m_version.c:1.12.2.2 ircu2.10/ircd/m_version.c:1.12.2.3
--- ircu2.10/ircd/m_version.c:1.12.2.2  Wed Jul 17 15:55:41 2002
+++ ircu2.10/ircd/m_version.c   Thu Oct 10 02:13:25 2002
@@ -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_version.c,v 1.12.2.2 2002/07/17 22:55:41 kev Exp $
+ * $Id: m_version.c,v 1.12.2.3 2002/10/10 09:13:25 isomer Exp $
  */
 
 /*
@@ -110,9 +110,11 @@
 
   if (parc > 1)
     send_reply(sptr, ERR_NOPRIVILEGES);
-  else
+  else {
     send_reply(sptr, RPL_VERSION, version, debugmode, cli_name(&me),
               debug_serveropts());
+    send_supported(sptr);
+  }
 
   return 0;
 }
Index: ircu2.10/ircd/s_err.c
diff -u ircu2.10/ircd/s_err.c:1.30.2.6 ircu2.10/ircd/s_err.c:1.30.2.7
--- ircu2.10/ircd/s_err.c:1.30.2.6      Sat Sep 14 13:44:32 2002
+++ ircu2.10/ircd/s_err.c       Thu Oct 10 02:13:25 2002
@@ -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.6 2002/09/14 20:44:32 kev Exp $
+ * $Id: s_err.c,v 1.30.2.7 2002/10/10 09:13:25 isomer Exp $
  */
 #include "config.h"
 
@@ -30,7 +30,7 @@
 /* 000 */
   { 0 },
 /* 001 */
-  { RPL_WELCOME, ":Welcome to the Internet Relay Network %s", "001" },
+  { RPL_WELCOME, ":Welcome to the Internet Relay Network%s%s, %s", "001" },
 /* 002 */
   { RPL_YOURHOST, ":Your host is %s, running version %s", "002" },
 /* 003 */
Index: ircu2.10/ircd/s_user.c
diff -u ircu2.10/ircd/s_user.c:1.52.2.12 ircu2.10/ircd/s_user.c:1.52.2.13
--- ircu2.10/ircd/s_user.c:1.52.2.12    Sat Sep 14 13:44:32 2002
+++ ircu2.10/ircd/s_user.c      Thu Oct 10 02:13:25 2002
@@ -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.12 2002/09/14 20:44:32 kev Exp $
+ * $Id: s_user.c,v 1.52.2.13 2002/10/10 09:13:25 isomer Exp $
  */
 #include "config.h"
 
@@ -571,7 +571,12 @@
     cli_handler(sptr) = CLIENT_HANDLER;
     release_dns_reply(sptr);
 
-    send_reply(sptr, RPL_WELCOME, nick);
+    send_reply(
+       sptr, 
+       RPL_WELCOME, 
+       feature_str(FEAT_PROVIDER) ? " via " : "",
+       feature_str(FEAT_PROVIDER) ? feature_str(FEAT_PROVIDER) : "",
+       nick);
     /*
      * This is a duplicate of the NOTICE but see below...
      */
Index: ircu2.10/ircd/whocmds.c
diff -u ircu2.10/ircd/whocmds.c:1.12.2.6 ircu2.10/ircd/whocmds.c:1.12.2.7
--- ircu2.10/ircd/whocmds.c:1.12.2.6    Sat Sep 14 13:44:32 2002
+++ ircu2.10/ircd/whocmds.c     Thu Oct 10 02:13:26 2002
@@ -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.6 2002/09/14 20:44:32 kev Exp $
+ * $Id: whocmds.c,v 1.12.2.7 2002/10/10 09:13:26 isomer Exp $
  */
 #include "config.h"
 
@@ -221,19 +221,22 @@
     }
   }
 
+  if (fields & WHO_FIELD_ACC)
+  {
+    char *p2 = cli_user(acptr)->account;
+    *(p1++) = ' ';
+    if (*p2)
+      while ((*p2) && (*(p1++) = *(p2++)));
+    else
+      *(p1++) = '0';
+  }
+
   if (!fields || (fields & WHO_FIELD_REN))
   {
     char *p2 = cli_info(acptr);
     *p1++ = ' ';
     if (fields)
       *p1++ = ':';              /* Place colon here for special reply */
-    while ((*p2) && (*(p1++) = *(p2++)));
-  }
-
-  if (fields & WHO_FIELD_ACC)
-  {
-    char *p2 = cli_user(acptr)->account;
-    *(p1++) = ' ';
     while ((*p2) && (*(p1++) = *(p2++)));
   }
 
----------------------- End of diff -----------------------

Reply via email to