]> jfr.im git - irc/evilnet/x3.git/blobdiff - src/hash.h
This should fix the nickserv module complaining about not enough parameters when...
[irc/evilnet/x3.git] / src / hash.h
index e5aca9c454b3fef4da5dc591369e05bf1790d8c9..e759e0c704ed7b285552c5eb310b071b8c680507 100644 (file)
@@ -1,7 +1,7 @@
 /* hash.h - IRC network state database
  * Copyright 2000-2004 srvx Development Team
  *
- * This file is part of srvx.
+ * This file is part of x3.
  *
  * srvx is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
 #define MODE_OPERSONLY          0x00080000 /* +O Opers only */
 #define MODE_NOQUITMSGS         0x00100000 /* +Q suppress messages from quit notices */
 #define MODE_NOAMSG             0x00200000 /* +T no multi-target messages */
-#define MODE_SSLONLY            0x00400000 /* +z ssl only */
+#define MODE_SSLONLY            0x00400000 /* +Z ssl only */
 #define MODE_HALFOP             0x00800000 /* +h USER */
 #define MODE_EXEMPT             0x01000000 /* +e exempt */
+#define MODE_HIDEMODE          0x02000000 /* +L hide modes */
 #define MODE_REMOVE             0x80000000
 
 #define FLAGS_OPER             0x0001 /* Operator +O */
 #define NICKLEN         30
 #define USERLEN         10
 #define HOSTLEN         63
-#define ACCOUNTLEN     15
+#define ACCOUNTLEN      15
 #define REALLEN         50
 #define TOPICLEN        250
 #define CHANNELLEN      200
 
 #define MAXMODEPARAMS  6
-#define MAXBANS                45
+#define MAXBANS                128
 #define MAXEXEMPTS     45
 
 /* IDLEN is 6 because it takes 5.33 Base64 digits to store 32 bytes. */
@@ -127,6 +128,7 @@ struct userNode {
     char numeric[COMBO_NUMERIC_LEN+1];
     unsigned int num_local : 18;
 #endif
+    unsigned int loc;             /* Is user connecting via LOC? */
     unsigned int dead : 1;        /* Is user waiting to be recycled? */
     struct in_addr ip;            /* User's IP address */
     long modes;                   /* user flags +isw etc... */
@@ -237,7 +239,7 @@ void NickChange(struct userNode* user, const char *new_nick, int no_announce);
 typedef void (*account_func_t) (struct userNode *user, const char *stamp);
 void reg_account_func(account_func_t handler);
 void call_account_func(struct userNode *user, const char *stamp);
-void StampUser(struct userNode *user, const char *stamp);
+void StampUser(struct userNode *user, const char *stamp, time_t timestamp);
 void assign_fakehost(struct userNode *user, const char *host, int announce);
 
 typedef void (*new_channel_func_t) (struct chanNode *chan);
@@ -268,7 +270,8 @@ int ChannelExemptExists(struct chanNode *channel, const char *exempt);
 
 typedef int (*topic_func_t)(struct userNode *who, struct chanNode *chan, const char *old_topic);
 void reg_topic_func(topic_func_t handler);
-void SetChannelTopic(struct chanNode *channel, struct userNode *user, const char *topic, int announce);
+void SetChannelTopic(struct chanNode *channel, struct userNode *service, struct userNode *user, const char *topic, int announce);
+struct userNode *IsInChannel(struct chanNode *channel, struct userNode *user);
 
 void init_structs(void);