]> jfr.im git - irc/rqf/shadowircd.git/blobdiff - modules/core/m_error.c
Added check for division by 0 in m_message.c Hopefully fixes #25
[irc/rqf/shadowircd.git] / modules / core / m_error.c
index 0310eca8e345c106f96c3f47180fab6b70567995..07426b5f0856c1c6c50be54303156d2f930472f9 100644 (file)
@@ -21,7 +21,6 @@
  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
  *  USA
  *
- *  $Id: m_error.c 494 2006-01-15 16:08:28Z jilles $
  */
 
 #include "stdinc.h"
@@ -31,9 +30,8 @@
 #include "numeric.h"
 #include "send.h"
 #include "msg.h"
-#include "memory.h"
 #include "modules.h"
-#include "s_log.h"
+#include "logger.h"
 #include "s_conf.h"
 
 static int m_error(struct Client *, struct Client *, int, const char **);
@@ -59,7 +57,7 @@ is_safe_error(const char *message)
 
        if (!strncmp(message, "Closing Link: 127.0.0.1 (", 25))
                return 1;
-       snprintf(prefix2, sizeof prefix2,
+       rb_snprintf(prefix2, sizeof prefix2,
                        "Closing Link: 127.0.0.1 %s (", me.name);
        if (!strncmp(message, prefix2, strlen(prefix2)))
                return 1;
@@ -86,7 +84,6 @@ is_safe_error(const char *message)
  * although this is called internally from other functions
  * --msa
  *
- *      parv[0] = sender prefix
  *      parv[*] = parameters
  */
 int
@@ -97,8 +94,11 @@ m_error(struct Client *client_p, struct Client *source_p, int parc, const char *
 
        para = (parc > 1 && *parv[1] != '\0') ? parv[1] : "<>";
 
-       ilog(L_SERVER, "Received ERROR message from %s: %s",
-            log_client_name(source_p, SHOW_IP), para);
+       if (IsAnyServer(client_p))
+       {
+               ilog(L_SERVER, "Received ERROR message from %s: %s",
+                    log_client_name(source_p, SHOW_IP), para);
+       }
 
        if(is_safe_error(para))
                hideit = 0;
@@ -107,11 +107,11 @@ m_error(struct Client *client_p, struct Client *source_p, int parc, const char *
                if (hideit < 2)
                        sendto_realops_snomask(SNO_GENERAL, hideit ? L_ADMIN : (is_remote_connect(client_p) ? L_NETWIDE : L_ALL),
                                        "ERROR :from %s -- %s",
-                                       get_server_name(client_p, HIDE_IP), para);
+                                       client_p->name, para);
                if (hideit > 0)
                        sendto_realops_snomask(SNO_GENERAL, (hideit == 1 ? L_OPER : L_ALL) | (is_remote_connect(client_p) ? L_NETWIDE : L_ALL),
                                        "ERROR :from %s -- <hidden>",
-                                       get_server_name(client_p, HIDE_IP));
+                                       client_p->name);
        }
 
        exit_client(client_p, source_p, source_p, "ERROR");
@@ -138,12 +138,12 @@ ms_error(struct Client *client_p, struct Client *source_p, int parc, const char
        if(client_p == source_p)
        {
                sendto_realops_snomask(SNO_GENERAL, hideit ? L_ADMIN : L_ALL, "ERROR :from %s -- %s",
-                                    get_server_name(client_p, HIDE_IP), para);
+                                    client_p->name, para);
        }
        else
        {
                sendto_realops_snomask(SNO_GENERAL, hideit ? L_ADMIN : L_ALL, "ERROR :from %s via %s -- %s",
-                                    source_p->name, get_server_name(client_p, HIDE_IP), para);
+                                    source_p->name, client_p->name, para);
        }
 
        return 0;