]> jfr.im git - solanum.git/blobdiff - include/s_serv.h
Merge pull request #346 from edk0/opmod-as-statusmsg
[solanum.git] / include / s_serv.h
index 169007538ba84ee12207a701fc7d6e30eaa6ef3c..6808c37e9aa786befbd9cf94f869258986a5e3ae 100644 (file)
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
  *  USA
- *
- *  $Id: s_serv.h 1863 2006-08-27 13:40:37Z jilles $
  */
 
 #ifndef INCLUDED_serv_h
 #define INCLUDED_serv_h
 
-#include "config.h"
+#include "defaults.h"
 #include "capability.h"
 
 /*
@@ -49,6 +47,27 @@ struct Channel;
 
 /* Capabilities */
 extern struct CapabilityIndex *serv_capindex;
+extern struct CapabilityIndex *cli_capindex;
+
+/* register client capabilities with this structure for 3.2 enhanced capability negotiation */
+#define CLICAP_FLAGS_STICKY    0x001
+#define CLICAP_FLAGS_REQACK    0x002
+
+struct ClientCapability {
+       bool (*visible)(struct Client *);               /* whether or not to display the capability.  set to NULL or true return value = displayed */
+       const char *(*data)(struct Client *);           /* any custom data for the capability.  set to NULL or return NULL = no data */
+       unsigned int flags;
+};
+
+/* builtin client capabilities */
+extern unsigned int CLICAP_MULTI_PREFIX;
+extern unsigned int CLICAP_ACCOUNT_NOTIFY;
+extern unsigned int CLICAP_EXTENDED_JOIN;
+extern unsigned int CLICAP_AWAY_NOTIFY;
+extern unsigned int CLICAP_USERHOST_IN_NAMES;
+extern unsigned int CLICAP_CAP_NOTIFY;
+extern unsigned int CLICAP_CHGHOST;
+extern unsigned int CLICAP_ECHO_MESSAGE;
 
 /*
  * XXX: this is kind of ugly, but this allows us to have backwards