* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*
- * $Id: client.h 3446 2007-05-14 22:21:16Z jilles $
*/
#ifndef INCLUDED_client_h
char *away; /* pointer to away message */
int refcnt; /* Number of times this block is referenced */
+ struct Dictionary *metadata;
+
char suser[NICKLEN+1];
};
struct ev_entry *event; /* used for associated events */
struct PrivilegeSet *privset; /* privset... */
+
+ struct ev_entry *override_timeout_event;
};
struct PreClient
{
unsigned int hash_indice;
unsigned int users_min, users_max;
-
- /* It would be nice to add other modifiers,
- * but not for 1.1 --nenolod
- */
+ time_t created_min, created_max, topic_min, topic_max;
+ int operspy;
};
/*
#define UMODE_NOCTCP 0x0400 /* block CTCPs except for ACTION */
#define UMODE_NOINVITE 0x0800 /* block invites */
#define UMODE_BOT 0x8000 /* mark as a bot in whois */
+#define UMODE_SCALLERID 0x40000 /* soft caller id */
/* user information flags, only settable by remote mode or local oper */
#define UMODE_OPER 0x1000 /* Operator */
#define IsSetNoCTCP(x) ((x)->umodes & UMODE_NOCTCP)
#define IsSetNoInvite(x) ((x)->umodes & UMODE_NOINVITE)
#define IsSetBot(x) ((x)->umodes & UMODE_BOT)
+#define IsSetSCallerId(x) ((x)->umodes & UMODE_SCALLERID)
#define SetGotId(x) ((x)->flags |= FLAGS_GOTID)
#define IsGotId(x) (((x)->flags & FLAGS_GOTID) != 0)
void allocate_away(struct Client *);
void free_away(struct Client *);
+extern struct Metadata *user_metadata_add(struct Client *target, const char *name, const char *value, int propegate);
+extern void user_metadata_delete(struct Client *target, const char *name, int propegate);
+extern struct Metadata *user_metadata_find(struct Client *target, const char *name);
+extern void user_metadata_clear(struct Client *target);
+
#endif /* INCLUDED_client_h */