/* * Note: At least at protocol level ERROR has only one parameter, * although this is called internally from other functions * --msa * * parv[*] = parameters */ static void m_error(struct MsgBuf *msgbuf_p, struct Client *client_p, struct Client *source_p, int parc, const char *parv[]) { const char *para; int hideit = ConfigFileEntry.hide_error_messages; para = (parc > 1 && *parv[1] != '\0') ? parv[1] : "<>"; 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; if(IsAnyServer(client_p)) { if (hideit < 2) sendto_realops_snomask(SNO_GENERAL, hideit ? L_ADMIN : (is_remote_connect(client_p) ? L_NETWIDE : L_ALL), "ERROR :from %s -- %s", 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>", client_p->name); } exit_client(client_p, source_p, source_p, "ERROR"); }
/* * Note: At least at protocol level ERROR has only one parameter, * although this is called internally from other functions * --msa * * parv[0] = sender prefix * parv[*] = parameters */ int m_error(struct Client *client_p, struct Client *source_p, int parc, const char *parv[]) { const char *para; int hideit = ConfigFileEntry.hide_error_messages; para = (parc > 1 && *parv[1] != '\0') ? parv[1] : "<>"; if(IsAnyServer(client_p)) { if(is_safe_error(para)) hideit = 0; ilog(L_SERVER, "Received ERROR message from %s: %s", log_client_name(source_p, SHOW_IP), para); if (hideit < 2) sendto_realops_flags(UMODE_ALL, hideit ? L_ADMIN : L_ALL, "ERROR :from %s -- %s", EmptyString(client_p->name) ? "" : client_p->name, para); if (hideit > 0) sendto_realops_flags(UMODE_ALL, hideit == 1 ? L_OPER : L_ALL, "ERROR :from %s -- <hidden>", EmptyString(client_p->name) ? "" : client_p->name); } exit_client(client_p, source_p, source_p, "ERROR"); return 0; }
static void ms_error(struct MsgBuf *msgbuf_p, struct Client *client_p, struct Client *source_p, int parc, const char *parv[]) { const char *para; int hideit = ConfigFileEntry.hide_error_messages; 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(is_safe_error(para)) hideit = 0; if(hideit == 2) return; if(client_p == source_p) { sendto_realops_snomask(SNO_GENERAL, hideit ? L_ADMIN : L_ALL, "ERROR :from %s -- %s", client_p->name, para); } else { sendto_realops_snomask(SNO_GENERAL, hideit ? L_ADMIN : L_ALL, "ERROR :from %s via %s -- %s", source_p->name, client_p->name, para); } }
static int ms_error(struct Client *client_p, struct Client *source_p, int parc, const char *parv[]) { const char *para; int hideit = ConfigFileEntry.hide_error_messages; 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 0 if(is_safe_error(para)) hideit = 0; if(hideit == 2) return 0; #endif if(client_p == source_p) { sendto_realops_flags(UMODE_ALL, hideit ? L_ADMIN : L_ALL, "ERROR :from %s -- %s", client_p->name, para); if(!ConfigFileEntry.hide_error_messages) { sendto_realops_flags(UMODE_ALL, L_OPER, "ERROR :from %s -- %s", client_p->name, para); } exit_client(client_p, source_p, source_p, "ERROR"); } else { sendto_realops_flags(UMODE_ALL, hideit ? L_ADMIN : L_ALL, "ERROR :from %s via %s -- %s", source_p->name, client_p->name, para); } return 0; }