]> jfr.im git - solanum.git/blobdiff - modules/core/m_kill.c
Can IGNORE_BOGUS_TS at the behest of @kaniini and @jilest
[solanum.git] / modules / core / m_kill.c
index c673f37e079efd86560e585ff410e94308218d2f..dd4e71d52c12e15d3f453957cd03609929543c79 100644 (file)
@@ -20,8 +20,6 @@
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
  *  USA
- *
- *  $Id: m_kill.c 3408 2007-04-14 20:58:56Z jilles $
  */
 
 #include "stdinc.h"
 #include "modules.h"
 #include "s_newconf.h"
 
+static const char kill_desc[] = "Provides the KILL command to remove a user from the network";
+
 static int h_can_kill;
 static char buf[BUFSIZE];
 
-static int ms_kill(struct Client *, struct Client *, int, const char **);
-static int mo_kill(struct Client *, struct Client *, int, const char **);
+static void ms_kill(struct MsgBuf *, struct Client *, struct Client *, int, const char **);
+static void mo_kill(struct MsgBuf *, struct Client *, struct Client *, int, const char **);
 static void relay_kill(struct Client *, struct Client *, struct Client *,
                       const char *, const char *);
 
 struct Message kill_msgtab = {
-       "KILL", 0, 0, 0, MFLG_SLOW,
+       "KILL", 0, 0, 0, 0,
        {mg_unreg, mg_not_oper, {ms_kill, 2}, {ms_kill, 2}, mg_ignore, {mo_kill, 2}}
 };
 
@@ -60,15 +60,15 @@ mapi_hlist_av1 kill_hlist[] = {
        { NULL, NULL},
 };
 
-DECLARE_MODULE_AV1(kill, NULL, NULL, kill_clist, kill_hlist, NULL, "$Revision: 3408 $");
+DECLARE_MODULE_AV2(kill, NULL, NULL, kill_clist, kill_hlist, NULL, NULL, NULL, kill_desc);
 
 /*
 ** mo_kill
 **      parv[1] = kill victim
 **      parv[2] = kill path
 */
-static int
-mo_kill(struct Client *client_p, struct Client *source_p, int parc, const char *parv[])
+static void
+mo_kill(struct MsgBuf *msgbuf_p, struct Client *client_p, struct Client *source_p, int parc, const char *parv[])
 {
        struct Client *target_p;
        const char *inpath = client_p->name;
@@ -81,7 +81,7 @@ mo_kill(struct Client *client_p, struct Client *source_p, int parc, const char *
        if(!IsOperLocalKill(source_p))
        {
                sendto_one(source_p, form_str(ERR_NOPRIVS), me.name, source_p->name, "local_kill");
-               return 0;
+               return;
        }
 
        if(!EmptyString(parv[2]))
@@ -109,7 +109,7 @@ mo_kill(struct Client *client_p, struct Client *source_p, int parc, const char *
                        else
                                sendto_one_numeric(source_p, ERR_NOSUCHNICK,
                                                   form_str(ERR_NOSUCHNICK), user);
-                       return 0;
+                       return;
                }
                sendto_one_notice(source_p, ":KILL changed from %s to %s", user, target_p->name);
        }
@@ -119,7 +119,7 @@ mo_kill(struct Client *client_p, struct Client *source_p, int parc, const char *
                sendto_one_notice(source_p, ":Nick %s is not on your server "
                                            "and you do not have the global_kill flag",
                                target_p->name);
-               return 0;
+               return;
        }
 
        /* Last chance to stop the kill */
@@ -130,7 +130,7 @@ mo_kill(struct Client *client_p, struct Client *source_p, int parc, const char *
 
        if (moduledata.approved == 0)
                /* The callee should have sent a message. */
-               return 0;
+               return;
 
        if(MyConnect(target_p))
                sendto_one(target_p, ":%s!%s@%s KILL %s :%s",
@@ -168,8 +168,6 @@ mo_kill(struct Client *client_p, struct Client *source_p, int parc, const char *
        sprintf(buf, "Killed (%s (%s))", source_p->name, reason);
 
        exit_client(client_p, target_p, source_p, buf);
-
-       return 0;
 }
 
 /*
@@ -177,8 +175,8 @@ mo_kill(struct Client *client_p, struct Client *source_p, int parc, const char *
  *      parv[1] = kill victim
  *      parv[2] = kill path and reason
  */
-static int
-ms_kill(struct Client *client_p, struct Client *source_p, int parc, const char *parv[])
+static void
+ms_kill(struct MsgBuf *msgbuf_p, struct Client *client_p, struct Client *source_p, int parc, const char *parv[])
 {
        struct Client *target_p;
        const char *user;
@@ -225,7 +223,7 @@ ms_kill(struct Client *client_p, struct Client *source_p, int parc, const char *
                {
                        sendto_one_numeric(source_p, ERR_NOSUCHNICK,
                                           form_str(ERR_NOSUCHNICK), IsDigit(*user) ? "*" : user);
-                       return 0;
+                       return;
                }
                sendto_one_notice(source_p, ":KILL changed from %s to %s", user, target_p->name);
        }
@@ -233,7 +231,7 @@ ms_kill(struct Client *client_p, struct Client *source_p, int parc, const char *
        if(IsServer(target_p) || IsMe(target_p))
        {
                sendto_one_numeric(source_p, ERR_CANTKILLSERVER, form_str(ERR_CANTKILLSERVER));
-               return 0;
+               return;
        }
 
        if(MyConnect(target_p))
@@ -287,8 +285,6 @@ ms_kill(struct Client *client_p, struct Client *source_p, int parc, const char *
        sprintf(buf, "Killed (%s %s)", source_p->name, reason);
 
        exit_client(client_p, target_p, source_p, buf);
-
-       return 0;
 }
 
 static void