]> jfr.im git - irc/rqf/shadowircd.git/blobdiff - modules/m_info.c
Do not send snotes/logs about juped servers trying to connect.
[irc/rqf/shadowircd.git] / modules / m_info.c
index e97fabed8c5b1d523e0edcc41d99d15e26bcd7da..03671b43fa6ce8cc4086a8fc63eb96890399d55e 100644 (file)
  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
  *  USA
  *
- *  $Id: m_info.c 3131 2007-01-21 15:36:31Z jilles $
+ *  $Id: m_info.c 3396 2007-04-05 00:38:52Z jilles $
  */
 
 #include "stdinc.h"
-#include "tools.h"
 #include "m_info.h"
 #include "channel.h"
 #include "client.h"
 #include "common.h"
-#include "irc_string.h"
+#include "match.h"
 #include "ircd.h"
 #include "hook.h"
 #include "numeric.h"
@@ -63,7 +62,7 @@ mapi_hlist_av1 info_hlist[] = {
        { NULL, NULL }
 };
 
-DECLARE_MODULE_AV1(info, NULL, NULL, info_clist, info_hlist, NULL, "$Revision: 3131 $");
+DECLARE_MODULE_AV1(info, NULL, NULL, info_clist, info_hlist, NULL, "$Revision: 3396 $");
 
 /*
  * jdc -- Structure for our configuration value table
@@ -92,6 +91,12 @@ static struct InfoStruct info_table[] = {
                &opers_see_all_users,
                "Farconnect notices available or operspy accountability limited"
        },
+       {
+               "max_connections",
+               OUTPUT_DECIMAL,
+               &maxconnections,
+               "Max number connections"
+       },
        {
                "anti_nick_flood",
                OUTPUT_BOOLEAN,
@@ -164,12 +169,6 @@ static struct InfoStruct info_table[] = {
                &ConfigFileEntry.disable_fake_channels,
                "Controls whether bold etc are disabled for JOIN"
        },
-       {
-               "dot_in_ip6_addr",
-               OUTPUT_BOOLEAN,
-               &ConfigFileEntry.dot_in_ip6_addr,
-               "Suffix a . to ip6 addresses",
-       },
        {
                "dots_in_ident",
                OUTPUT_DECIMAL,
@@ -219,12 +218,6 @@ static struct InfoStruct info_table[] = {
                &ConfigFileEntry.fname_klinelog,
                "KLINE etc log file"
        },
-       {
-               "fname_glinelog",
-               OUTPUT_STRING,
-               &ConfigFileEntry.fname_glinelog,
-               "GLINE log file"
-       },
        {
                "fname_operspylog",
                OUTPUT_STRING,
@@ -237,30 +230,6 @@ static struct InfoStruct info_table[] = {
                &ConfigFileEntry.fname_ioerrorlog,
                "IO error log file"
        },
-       {
-               "glines",
-               OUTPUT_BOOLEAN,
-               &ConfigFileEntry.glines,
-               "G-line (network-wide K-line) support"
-       },
-       {
-               "gline_time",
-               OUTPUT_DECIMAL,
-               &ConfigFileEntry.gline_time,
-               "Expiry time for G-lines"
-       },
-       {
-               "gline_min_cidr",
-               OUTPUT_DECIMAL,
-               &ConfigFileEntry.gline_min_cidr,
-               "Minimum CIDR bitlen for ipv4 glines"
-       },
-       {
-               "gline_min_cidr6",
-               OUTPUT_DECIMAL,
-               &ConfigFileEntry.gline_min_cidr6,
-               "Minimum CIDR bitlen for ipv6 glines"
-       },
        {
                "global_snotices",
                OUTPUT_BOOLEAN_YN,
@@ -285,12 +254,6 @@ static struct InfoStruct info_table[] = {
                &ServerInfo.hub,
                "Server is a hub"
        },
-       {
-               "idletime",
-               OUTPUT_DECIMAL,
-               &ConfigFileEntry.idletime,
-               "Number of minutes before a client is considered idle"
-       },
        {
                "kline_delay",
                OUTPUT_DECIMAL,
@@ -343,7 +306,7 @@ static struct InfoStruct info_table[] = {
                "min_nonwildcard",
                OUTPUT_DECIMAL,
                &ConfigFileEntry.min_nonwildcard,
-               "Minimum non-wildcard chars in K/G lines",
+               "Minimum non-wildcard chars in K lines",
        },
        {
                "min_nonwildcard_simple",
@@ -483,6 +446,18 @@ static struct InfoStruct info_table[] = {
                &ConfigFileEntry.stats_y_oper_only,
                "STATS Y is only shown to operators",
        },
+       {
+               "throttle_count",
+               OUTPUT_DECIMAL,
+               &ConfigFileEntry.throttle_count, 
+               "Connection throttle threshold",
+       },
+       {
+               "throttle_duration",
+               OUTPUT_DECIMAL,
+               &ConfigFileEntry.throttle_duration, 
+               "Connection throttle duration",
+       },
        {
                "tkline_expire_notices",
                OUTPUT_BOOLEAN,
@@ -531,12 +506,6 @@ static struct InfoStruct info_table[] = {
                &ConfigChannel.knock_delay_channel,
                "Delay between KNOCK attempts to a channel",
        },
-       {
-               "invite_ops_only",
-               OUTPUT_BOOLEAN_YN,
-               &ConfigChannel.invite_ops_only,
-               "INVITE is restricted to channelops only"
-       },
        {
                "kick_on_split_riding",
                OUTPUT_BOOLEAN_YN,
@@ -636,7 +605,7 @@ m_info(struct Client *client_p, struct Client *source_p, int parc, const char *p
 {
        static time_t last_used = 0L;
 
-       if((last_used + ConfigFileEntry.pace_wait) > CurrentTime)
+       if((last_used + ConfigFileEntry.pace_wait) > rb_current_time())
        {
                /* safe enough to give this on a local connect only */
                sendto_one(source_p, form_str(RPL_LOAD2HI),
@@ -645,7 +614,7 @@ m_info(struct Client *client_p, struct Client *source_p, int parc, const char *p
                return 0;
        }
        else
-               last_used = CurrentTime;
+               last_used = rb_current_time();
 
        if(hunt_server(client_p, source_p, ":%s INFO :%s", 1, parc, parv) != HUNTED_ISME)
                return 0;
@@ -670,7 +639,6 @@ mo_info(struct Client *client_p, struct Client *source_p, int parc, const char *
        if(hunt_server(client_p, source_p, ":%s INFO :%s", 1, parc, parv) == HUNTED_ISME)
        {
                info_spy(source_p);
-
                send_info_text(source_p);
 
                if(IsOper(source_p))
@@ -714,13 +682,14 @@ send_info_text(struct Client *source_p)
 static void
 send_birthdate_online_time(struct Client *source_p)
 {
+       char tbuf[26]; /* this needs to be 26 - see ctime_r manpage */
        sendto_one(source_p, ":%s %d %s :Birth Date: %s, compile # %s",
                   get_id(&me, source_p), RPL_INFO, 
                   get_id(source_p, source_p), creation, generation);
 
        sendto_one(source_p, ":%s %d %s :On-line since %s",
                   get_id(&me, source_p), RPL_INFO, 
-                  get_id(source_p, source_p), myctime(startup_time));
+                  get_id(source_p, source_p), rb_ctime(startup_time, tbuf, sizeof(tbuf)));
 }
 
 /*