]> jfr.im git - irc/quakenet/newserv.git/blobdiff - chanserv/chanserv.h
fix indentation
[irc/quakenet/newserv.git] / chanserv / chanserv.h
index abb1595937d46a7a6fbffdc68b788b7d436f94a9..f59cea781b8f3d3d6eb2d22e3fbc3d5a4b83de66 100644 (file)
@@ -11,6 +11,8 @@
 #include <string.h>
 #include <time.h>
 #include <stdarg.h>
+#include <stdint.h>
+
 #include "../lib/sstring.h"
 #include "../core/schedule.h"
 #include "../lib/flags.h"
 #include "../channel/channel.h"
 #include "../parser/parser.h"
 #include "../localuser/localuserchannel.h"
+
+#ifndef CS_NODB
 #include "../dbapi/dbapi.h"
+#endif
 
 #define CS_PARANOID
 
@@ -27,7 +32,7 @@
 #endif
 
 /* Q9 Version */
-#define QVERSION "1.00-RC2"
+#define QVERSION "1.00"
 
 /* Mini-hash of known users on channels to make lookups faster;
  * how big do we make it?  */
 /* If set will issue warnings when authgate cached stuff changes */
 #define   AUTHGATE_WARNINGS
 
+/* Challenge auth faq site */
+#define   CHALLENGEAUTHSITE "http://www.quakenet.org/development/challengeauth/"
+
 /* Cleanup options */
 #define CLEANUP_ACCOUNT_INACTIVE  80
 #define CLEANUP_ACCOUNT_UNUSED    10
-#define CLEANUP_CHANNEL_INACTIVE  30
+#define CLEANUP_CHANNEL_INACTIVE  40
 
 /* Sizes of the main hashes */
 #define   REGUSERHASHSIZE     60000
@@ -75,7 +83,7 @@
 #define MAXLANG      50
 
 /* Maximum number of user chanlevs and bans */
-#define MAXCHANLEVS  250
+#define MAXCHANLEVS  500
 #define MAXBANS      50
 
 /* Sources of entropy and standard length defines */
@@ -84,6 +92,9 @@
 
 #include "chanserv_messages.h"
 
+#define CSMIN(a, b) ((a)<(b)?(a):(b))
+#define CSMAX(a, b) ((a)>(b)?(a):(b))
+
 /* List of privileged operations */
 
 #define   QPRIV_SUSPENDBYPASS       1
 #define   QPRIV_VIEWWELCOME         107
 #define   QPRIV_VIEWCOMMENTS        108
 #define   QPRIV_VIEWEMAIL           109
+#define   QPRIV_VIEWCHANSUSPENSION  110
+#define   QPRIV_VIEWSUSPENDEDBY     111
 
 #define   QPRIV_CHANGECHANFLAGS     200
 #define   QPRIV_CHANGECHANLEV       201
@@ -646,7 +659,10 @@ extern unsigned int lastmaillockID;
 
 extern int chanserv_init_status;
 extern int chanservdb_ready;
+
+#ifndef CS_NODB
 extern DBModuleIdentifier q9dbid, q9adbid, q9cdbid, q9udbid;
+#endif
 
 extern maildomain *maildomainnametable[MAILDOMAINHASHSIZE];
 extern maildomain *maildomainIDtable[MAILDOMAINHASHSIZE];
@@ -675,6 +691,8 @@ extern sstring **chantypes;
 
 extern maillock *maillocks;
 
+extern sstring *cs_quitreason;
+
 /* Function prototypes */
 
 /* chanserv.c */
@@ -770,8 +788,8 @@ void chanservreguser(void *arg);
 void chanservjoinchan(channel *cp);
 #define chanservsendmessage(np, fmt, args...) chanservsendmessage_real(np, 0, fmt , ## args)
 #define chanservsendmessageoneline(np, fmt, args...) chanservsendmessage_real(np, 1, fmt , ## args)
-void chanservsendmessage_real(nick *np, int oneline, char *message, ... );
-void chanservwallmessage(char *message, ... );
+void chanservsendmessage_real(nick *np, int oneline, char *message, ... ) __attribute__ ((format (printf, 3, 4)));;
+void chanservwallmessage(char *message, ... ) __attribute__ ((format (printf, 1, 2)));
 void chanservcommandinit();
 void chanservcommandclose();
 void chanservstdmessage(nick *np, int messageid, ... );
@@ -810,6 +828,7 @@ void cs_logchanop(regchan *rcp, char *nick, reguser *rup);
 int cs_doshowcommands(void *source, int cargc, char **cargv);
 int cs_dohelp(void *source, int cargc, char **cargv);
 int cs_doquit(void *source, int cargc, char **cargv);
+int cs_dosetquitreason(void *source, int cargc, char **cargv);
 int cs_dorename(void *source, int cargc, char **cargv);
 int cs_dorehash(void *source, int cargc, char **cargv);
 int cs_doversion(void *source, int cargc, char **cargv);
@@ -842,7 +861,7 @@ chanindex *cs_checkaccess(nick *np, const char *chan, unsigned int flags, chanin
 /* chanservlog.c */
 void cs_initlog();
 void cs_closelog();
-void cs_log(nick *np, char *event, ...);
+void cs_log(nick *np, char *event, ...) __attribute__ ((format (printf, 2, 3)));
 
 /* chanservdump.c */
 int dumplastjoindata(const char *filename);
@@ -878,7 +897,7 @@ void csdb_deletemaildomain(maildomain *mdp);
 void csdb_createmaildomain(maildomain *mdp);
 void csdb_updatemaildomain(maildomain *mdp);
 void csdb_chanlevhistory_insert(regchan *rcp, nick *np, reguser *trup, flag_t oldflags, flag_t newflags);
-void csdb_accounthistory_insert(nick *np, char *oldpass, char *newpass, sstring *oldemail, sstring *newemail);
+void csdb_accounthistory_insert(nick *np, char *oldpass, char *newpass, char *oldemail, char *newemail);
 void csdb_cleanuphistories();
 void csdb_deletemaillock(maillock *mlp);
 void csdb_createmaillock(maillock *mlp);
@@ -887,4 +906,9 @@ void csdb_updatemaillock(maillock *mlp);
 /* q9snprintf.c */
 void q9snprintf(char *buf, size_t size, const char *format, const char *args, ...);
 void q9vsnprintf(char *buf, size_t size, const char *format, const char *args, va_list ap);
+
+/* chanserv_flags.c */
+u_int64_t cs_accountflagmap(reguser *rup);
+u_int64_t cs_accountflagmap_str(char *flags);
+
 #endif