]> jfr.im git - irc/evilnet/x3.git/blobdiff - src/proto.h
found out from Kyle what b flag is.
[irc/evilnet/x3.git] / src / proto.h
index d95144f4e5649f34cda6f31f67090e720795d5b4..a6f03cd0a9ab78c1d0d26704b7dac5c075184f4a 100644 (file)
@@ -1,7 +1,7 @@
 /* proto.h - IRC protocol output
  * 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
@@ -23,7 +23,7 @@
 
 /* Warning for those looking at how this code does multi-protocol
  * support: It's an awful, nasty hack job.  It is intended for short
- * term use, not long term, since we are already developing srvx2,
+ * term use, not long term, since we are already developing x3,
  * which has much nicer interfaces that hide most of the ugly
  * differences between protocol dialects. */
 
@@ -150,7 +150,7 @@ void irc_stats(struct userNode *from, struct server *target, char type);
 void irc_svsnick(struct userNode *from, struct userNode *target, const char *newnick);
 
 /* account maintenance */
-void irc_account(struct userNode *user, const char *stamp);
+void irc_account(struct userNode *user, const char *stamp, time_t timestamp);
 void irc_regnick(struct userNode *user);
 void irc_fakehost(struct userNode *user, const char *host);
 
@@ -169,7 +169,7 @@ void irc_numeric(struct userNode *user, unsigned int num, const char *format, ..
 /* stuff originally from other headers that is really protocol-specific */
 int IsChannelName(const char *name);
 int is_valid_nick(const char *nick);
-struct userNode *AddService(const char *nick, const char *desc, const char *hostname);
+struct userNode *AddService(const char *nick, const char *modes, const char *desc, const char *hostname);
 struct userNode *AddClone(const char *nick, const char *ident, const char *hostname, const char *desc);
 struct server* AddServer(struct server* uplink, const char *name, int hops, time_t boot, time_t link, const char *numeric, const char *description);
 void DelServer(struct server* serv, int announce, const char *message);
@@ -199,12 +199,13 @@ struct mod_chanmode {
         union {
             struct modeNode *member;
             const char *hostmask;
-        };
+        } u;
     } args[1];
 };
 #define MCP_ALLOW_OVB     0x0001 /* allow op, voice, ban manipulation */
 #define MCP_FROM_SERVER   0x0002 /* parse as from a server */
 #define MCP_KEY_FREE      0x0004 /* -k without a key argument */
+#define MCP_REGISTERED   0x0008 /* chan is already registered; do not allow changes to MODE_REGISTERED */
 #define MC_ANNOUNCE       0x0100 /* send a mod_chanmode() change out */
 #define MC_NOTIFY         0x0200 /* make local callbacks to announce */
 #ifdef NDEBUG
@@ -233,7 +234,7 @@ int irc_make_chanmode(struct chanNode *chan, char *out);
 #define GENMASK_USENICK  2
 #define GENMASK_OMITNICK 4  /* Hurray for Kevin! */
 #define GENMASK_BYIP     8
-#define GENMASK_SRVXMASK 16
+#define GENMASK_X3MASK 16
 #define GENMASK_NO_HIDING 128
 char *generate_hostmask(struct userNode *user, int options);