Committer  : klmitch
CVSROOT    : /cvsroot/undernet-ircu
Module     : ircu2.10
Branch tags: u2_10_11_07
Commit time: 2004-09-11 16:23:51 UTC

Modified files:
  Tag: u2_10_11_07
     ChangeLog doc/example.conf doc/ircd.conf.sample
     doc/readme.features include/ircd_features.h ircd/ircd_features.c
     ircd/m_whois.c

Log message:

Author: Matthias Crauwels <[EMAIL PROTECTED]>
                (by way of Kev <[EMAIL PROTECTED]>)
Log message:

2003-06-08 Matthias Crauwels <[EMAIL PROTECTED]>
        * include/ircd_features.h: new feature FEAT_HIS_LOCAL_CHAN_WHOIS

        * ircd/ircd_features.c: new feature FEAT_HIS_LOCAL_CHAN_WHOIS

        * ircd/m_whois.c: hide local channels in local WHOIS, this breaks HIS

        * doc/readme.features: documented FEAT_HIS_LOCAL_CHAN_WHOIS

        * doc/ircd.conf.sample: default value for FEAT_HIS_LOCAL_CHAN_WHOIS

(Patch #750966, fixes Bug #719085)

---------------------- diff included ----------------------
Index: ircu2.10/ChangeLog
diff -u ircu2.10/ChangeLog:1.290.2.130.2.17 ircu2.10/ChangeLog:1.290.2.130.2.18
--- ircu2.10/ChangeLog:1.290.2.130.2.17 Sat Sep 11 09:05:39 2004
+++ ircu2.10/ChangeLog  Sat Sep 11 09:23:40 2004
@@ -1,3 +1,14 @@
+2003-06-08 Matthias Crauwels <[EMAIL PROTECTED]>
+       * include/ircd_features.h: new feature FEAT_HIS_LOCAL_CHAN_WHOIS
+
+       * ircd/ircd_features.c: new feature FEAT_HIS_LOCAL_CHAN_WHOIS
+
+       * ircd/m_whois.c: hide local channels in local WHOIS, this breaks HIS
+
+       * doc/readme.features: documented FEAT_HIS_LOCAL_CHAN_WHOIS
+
+       * doc/ircd.conf.sample: default value for FEAT_HIS_LOCAL_CHAN_WHOIS
+
 2004-09-11  Kevin L Mitchell  <[EMAIL PROTECTED]>
 
        * ircd/m_wallvoices.c (ms_wallvoices): Don't accept & channel
Index: ircu2.10/doc/example.conf
diff -u ircu2.10/doc/example.conf:1.15.2.10 ircu2.10/doc/example.conf:1.15.2.10.2.1
--- ircu2.10/doc/example.conf:1.15.2.10 Sat Jan 10 16:23:32 2004
+++ ircu2.10/doc/example.conf   Sat Sep 11 09:23:40 2004
@@ -592,6 +592,7 @@
 # F:HIS_REWRITE:TRUE
 # F:HIS_REMOTE:1
 # F:HIS_NETSPLIT:TRUE
+# F:HIS_LOCAL_CHAN_WHOIS:TRUE
 # F:HIS_SERVERNAME:"*.undernet.org"
 # F:HIS_SERVERINFO:"The Undernet Underworld"
 # F:HIS_URLSERVERS:"http://www.undernet.org/servers.php";
Index: ircu2.10/doc/ircd.conf.sample
diff -u ircu2.10/doc/ircd.conf.sample:1.1.2.3 ircu2.10/doc/ircd.conf.sample:1.1.2.3.8.1
--- ircu2.10/doc/ircd.conf.sample:1.1.2.3       Sat Dec 14 17:02:38 2002
+++ ircu2.10/doc/ircd.conf.sample       Sat Sep 11 09:23:41 2004
@@ -561,6 +561,7 @@
 #F:HIS_REWRITE:TRUE
 #F:HIS_REMOTE:1
 #F:HIS_NETSPLIT:TRUE
+#F:HIS_LOCAL_CHAN_WHOIS:TRUE
 #F:HIS_SERVERNAME:"*.undernet.org"
 #F:HIS_SERVERINFO:"The Undernet Underworld"
 #F:HIS_URLSERVERS:"http://www.undernet.org/servers.php";
Index: ircu2.10/doc/readme.features
diff -u ircu2.10/doc/readme.features:1.2.2.11 ircu2.10/doc/readme.features:1.2.2.11.2.1
--- ircu2.10/doc/readme.features:1.2.2.11       Sat Jan 10 16:23:32 2004
+++ ircu2.10/doc/readme.features        Sat Sep 11 09:23:41 2004
@@ -1054,7 +1054,8 @@
  * Type: boolean
  * Default: TRUE
 
-As per UnderNet CFV-165, this replaces hopcount to a static 3 in replies to /WHO.
+As per UnderNet CFV-165, this replaces hopcount to a static 3 in
+replies to /WHO.
 
 HIS_BANWHO
  * Type: boolean
@@ -1088,6 +1089,12 @@
 
 As per UnderNet CFV-165, this removes server names in net break sign-offs.
 
+HIS_LOCAL_CHAN_WHOIS
+ * Type: boolean
+ * Default: TRUE
+
+As per UnderNet CFV-165, this removes local channels in replies to /WHOIS.
+
 HIS_SERVERNAME
  * Type: string
  * Default: "*.undernet.org"
Index: ircu2.10/include/ircd_features.h
diff -u ircu2.10/include/ircd_features.h:1.11.2.12 
ircu2.10/include/ircd_features.h:1.11.2.12.2.1
--- ircu2.10/include/ircd_features.h:1.11.2.12  Sat Jan 10 16:23:32 2004
+++ ircu2.10/include/ircd_features.h    Sat Sep 11 09:23:41 2004
@@ -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.12 2004/01/11 00:23:32 isomer Exp $
+ * $Id: ircd_features.h,v 1.11.2.12.2.1 2004/09/11 16:23:41 klmitch Exp $
  */
 
 struct Client;
@@ -174,6 +174,7 @@
   FEAT_HIS_REWRITE,
   FEAT_HIS_REMOTE,
   FEAT_HIS_NETSPLIT,
+  FEAT_HIS_LOCAL_CHAN_WHOIS,
   FEAT_HIS_SERVERNAME,
   FEAT_HIS_SERVERINFO,
   FEAT_HIS_URLSERVERS,
Index: ircu2.10/ircd/ircd_features.c
diff -u ircu2.10/ircd/ircd_features.c:1.15.2.13.2.1 
ircu2.10/ircd/ircd_features.c:1.15.2.13.2.2
--- ircu2.10/ircd/ircd_features.c:1.15.2.13.2.1 Fri May 14 20:43:41 2004
+++ ircu2.10/ircd/ircd_features.c       Sat Sep 11 09:23:41 2004
@@ -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.13.2.1 2004/05/15 03:43:41 klmitch Exp $
+ * $Id: ircd_features.c,v 1.15.2.13.2.2 2004/09/11 16:23:41 klmitch Exp $
  */
 #include "config.h"
 
@@ -381,6 +381,7 @@
   F_B(HIS_REWRITE, 0, 1, 0),
   F_I(HIS_REMOTE, 0, 1, 0),
   F_B(HIS_NETSPLIT, 0, 1, 0),
+  F_B(HIS_LOCAL_CHAN_WHOIS, 0, 1, 0),
   F_S(HIS_SERVERNAME, 0, "*.undernet.org", 0),
   F_S(HIS_SERVERINFO, 0, "The Undernet Underworld", 0),
   F_S(HIS_URLSERVERS, 0, "http://www.undernet.org/servers.php";, 0),
Index: ircu2.10/ircd/m_whois.c
diff -u ircu2.10/ircd/m_whois.c:1.19.2.12 ircu2.10/ircd/m_whois.c:1.19.2.12.2.1
--- ircu2.10/ircd/m_whois.c:1.19.2.12   Sat Jan 10 16:23:32 2004
+++ ircu2.10/ircd/m_whois.c     Sat Sep 11 09:23:41 2004
@@ -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.12 2004/01/11 00:23:32 isomer Exp $
+ * $Id: m_whois.c,v 1.19.2.12.2.1 2004/09/11 16:23:41 klmitch Exp $
  */
 
 /*
@@ -158,7 +158,15 @@
           
        if (acptr != sptr && IsZombie(chan))
           continue;
-          
+
+       /* Don't show local channels when HIS is defined, unless it's a
+       * remote WHOIS --ULtimaTe_
+       */
+       if (IsLocalChannel(chptr->chname) && (parc == 2) &&
+          feature_bool(FEAT_HIS_LOCAL_CHAN_WHOIS) && (acptr != sptr) &&
+          !IsAnOper(sptr))
+         continue; 
+
        if (len+strlen(chptr->chname) + mlen > BUFSIZE - 5) 
        {
           send_reply(sptr, SND_EXPLICIT | RPL_WHOISCHANNELS, "%s :%s", name, buf);
----------------------- End of diff -----------------------

Reply via email to