]> jfr.im git - irc/rqf/shadowircd.git/blobdiff - modules/core/m_quit.c
Added static_quit support. Pretty much what the name implies.
[irc/rqf/shadowircd.git] / modules / core / m_quit.c
index 2f1afb67469e5a8e4fe6e28a041b2d8a23d9b206..3851b0d405394227c967eb2827ce7dc5bf7238a2 100644 (file)
@@ -34,7 +34,7 @@
 #include "parse.h"
 #include "modules.h"
 #include "s_conf.h"
-#include "sprintf_irc.h"
+#include "inline/stringops.h"
 
 static int m_quit(struct Client *, struct Client *, int, const char **);
 static int ms_quit(struct Client *, struct Client *, int, const char **);
@@ -50,7 +50,6 @@ DECLARE_MODULE_AV1(quit, NULL, NULL, quit_clist, NULL, NULL, "$Revision: 1333 $"
 
 /*
 ** m_quit
-**      parv[0] = sender prefix
 **      parv[1] = comment
 */
 static int
@@ -72,9 +71,15 @@ m_quit(struct Client *client_p, struct Client *source_p, int parc, const char *p
                comment = reason;
        }
 
+       if(!IsOper(source_p) && !EmptyString(ConfigFileEntry.static_quit))
+       {
+               exit_client(client_p, source_p, source_p, ConfigFileEntry.static_quit);
+               return 0;
+       }
+
        if(!IsOper(source_p) &&
           (source_p->localClient->firsttime + ConfigFileEntry.anti_spam_exit_message_time) >
-          CurrentTime)
+          rb_current_time())
        {
                exit_client(client_p, source_p, source_p, "Client Quit");
                return 0;
@@ -87,7 +92,6 @@ m_quit(struct Client *client_p, struct Client *source_p, int parc, const char *p
 
 /*
 ** ms_quit
-**      parv[0] = sender prefix
 **      parv[1] = comment
 */
 static int