Răsfoiți Sursa

* Remove include_lk nettype hacks. include_lk defaults to 1 but is unset on hybrid type servers

Bryan Drewery 16 ani în urmă
părinte
comite
ef234fe4d5
3 a modificat fișierele cu 5 adăugiri și 29 ștergeri
  1. 1 28
      src/mod/irc.mod/irc.c
  2. 1 1
      src/mod/irc.mod/irc.h
  3. 3 0
      src/mod/server.mod/servmsg.c

+ 1 - 28
src/mod/irc.mod/irc.c

@@ -69,7 +69,6 @@ static cache_t *irccache = NULL;
 
 #define do_eI (((now - chan->channel.last_eI) > 30) ? 1 : 0)
 
-static int net_type = 0;
 static time_t wait_split = 900;    /* Time to wait for user to return from
                                  * net-split. */
 int max_bans;                   /* Modified by net-type 1-4 */
@@ -87,7 +86,7 @@ bool use_354 = 0;                /* Use ircu's short 354 /who
 static bool kick_fun = 0;
 static bool ban_fun = 1;
 static bool prevent_mixing = 1;  /* To prevent mixing old/new modes */
-static bool include_lk = 1;      /* For correct calculation
+bool include_lk = 1;      /* For correct calculation
                                  * in real_add_mode. */
 bd::HashTable<bd::String, unsigned long> bot_counters;
 static unsigned long my_counter = 0;
@@ -1717,30 +1716,6 @@ irc_report(int idx, int details)
   }
 }
 
-static void
-do_nettype()
-{
-  switch (net_type) {
-    case 0:                    /* Efnet */
-      include_lk = 0;
-      break;
-    case 1:                    /* Ircnet */
-      include_lk = 1;
-      break;
-    case 2:                    /* Undernet */
-      include_lk = 1;
-      break;
-    case 3:                    /* Dalnet */
-      include_lk = 1;
-      break;
-    case 4:                    /* hybrid-6+ */
-      include_lk = 0;
-      break;
-    default:
-      break;
-  }
-}
-
 static void bot_release_nick (char *botnick, char *code, char *par) {
   release_nick(par);
 }
@@ -1776,6 +1751,4 @@ irc_init()
   add_builtins("raw", irc_raw);
   add_builtins("msg", C_msg);
   add_builtins("msgc", C_msgc);
-
-  do_nettype();
 }

+ 1 - 1
src/mod/irc.mod/irc.h

@@ -146,7 +146,7 @@ void reset_chan_info(struct chanset_t *);
 char *getnick(const char *, struct chanset_t *);
 
 extern int		max_bans, max_exempts, max_invites, max_modes;
-extern bool		use_354;
+extern bool		use_354, include_lk;
 extern unsigned int	modesperline;
 #endif				/* _EGG_MOD_IRC_IRC_H */
 

+ 3 - 0
src/mod/server.mod/servmsg.c

@@ -261,6 +261,8 @@ got004(char *from, char *msg)
   if (strstr(tmp, "u2.") || strstr(tmp, "Unreal") || strstr(tmp, "snircd")) {
     putlog(LOG_DEBUG, "*", "Disabling cookies as they are not supported on %s", cursrvname);
     cookies_disabled = true;
+  } else if (strstr(tmp, "hybrid") || strstr(tmp, "ratbox") || strstr(tmp, "Charybdis") || strstr(tmp, "ircd-seven")) {
+    include_lk = 0;
   }
 
   return 0;
@@ -1833,6 +1835,7 @@ static void connect_server(void)
     rolls = 0;
     altnick_char = 0;
     use_monitor = 0;
+    include_lk = 1;
 
     for (chan = chanset; chan; chan = chan->next)
       chan->ircnet_status &= ~CHAN_JUPED;