21 #ifndef __EKG_USERLIST_H 22 #define __EKG_USERLIST_H 24 #include "ekg2-config.h" 27 #include <sys/types.h> 29 #ifndef NO_POSIX_SYSTEM 30 #include <sys/socket.h> 31 #include <netinet/in.h> 152 #define IGNORE_LABELS_MAX 9 155 #ifndef EKG2_WIN32_NOFUNCTION 168 #define userlist_find_n(a, b) userlist_find(session_find(a), b) 201 #define user_private_item_get_safe(user, name, result) \ 202 private_item_get_safe(&(user)->priv_list, name, result) 203 #define user_private_item_get(user, name) \ 204 private_item_get(&(user)->priv_list, name) 205 #define user_private_item_get_int_safe(user, name, result) \ 206 private_item_get_int_safe(&(user)->priv_list), name, int *result) 207 #define user_private_item_get_int(user, name) \ 208 private_item_get_int(&(user)->priv_list, name) 209 #define user_private_item_set(user, name, value) \ 210 private_item_set(&(user)->priv_list, name, value) 211 #define user_private_item_set_int(user, name, value) \ 212 private_item_set_int(&(user)->priv_list, name, value) 214 #define user_private_items_destroy(user) \ 215 private_items_destroy(&(user)->priv_list); char * group_to_string(struct ekg_group *l, int meta, int sep)
Definition: userlist.c:1041
struct ekg_resource * resources
Definition: userlist.h:66
const char * uid
Definition: userlist.h:57
void userlist_clear_status(session_t *session, const char *uid)
Definition: userlist.c:266
int userlist_read(session_t *session)
Definition: userlist.c:156
int ignored_check(session_t *session, const char *uid)
Definition: userlist.c:819
Definition: sessions.h:127
int ignored_add(session_t *session, const char *uid, ignore_t level)
Definition: userlist.c:778
userlist_t * userlist_add(session_t *session, const char *uid, const char *nickname)
Definition: userlist.c:371
userlist_t * userlist_find(session_t *session, const char *uid)
Definition: userlist.c:458
void userlist_add_entry(session_t *session, const char *line)
Definition: userlist.c:95
const char * get_uid_any(session_t *session, const char *text)
Definition: userlist.c:598
userlist_t * userlist_find_u(userlist_t **userlist, const char *uid)
Definition: userlist.c:471
Definition: userlist.h:142
Definition: userlist.h:128
struct ekg_group * groups
Definition: userlist.h:59
Definition: userlist.h:139
void userlist_free(session_t *session)
Definition: userlist.c:290
Definition: userlist.h:96
struct ekg_resource ekg_resource_t
int valid_plugin_uid(plugin_t *plugin, const char *uid)
Definition: userlist.c:568
int valid_nick(const char *nick)
Definition: userlist.c:510
time_t status_time
Definition: userlist.h:79
unsigned int typing
Definition: userlist.h:75
ignore_t level
Definition: userlist.h:148
int ignore_flags(const char *str)
Definition: userlist.c:852
const char * ignore_format(int level)
Definition: userlist.c:890
Definition: userlist.h:141
Definition: userlist.h:105
private_data_t * priv_list
Definition: userlist.h:81
int ekg_group_member(userlist_t *u, const char *group)
Definition: userlist.c:980
void * priv_data
Definition: userlist.h:80
void * userlist_private_get(plugin_t *plugin, userlist_t *u)
Definition: userlist.c:238
char * descr
Definition: userlist.h:64
int ignored_remove(session_t *session, const char *uid)
Definition: userlist.c:731
int userlist_remove_u(userlist_t **userlist, userlist_t *u)
Definition: userlist.c:419
Definition: userlist.h:85
Definition: userlist.h:136
xstate_t
Definition: userlist.h:84
status_t
Definition: sessions.h:39
int userlist_replace(session_t *session, userlist_t *u)
Definition: userlist.c:440
struct ekg_group * next
Definition: userlist.h:129
const char * get_uid(session_t *session, const char *text)
Definition: userlist.c:635
status_t status
Definition: userlist.h:63
struct userlist userlist_t
char * last_descr
Definition: userlist.h:78
int ekg_group_add(userlist_t *u, const char *group)
Definition: userlist.c:921
Definition: userlist.h:95
userlist_privhandler_func_t
Definition: userlist.h:94
#define line
Definition: bindings.c:50
void * priv_data
Definition: userlist.h:121
status_t status
Definition: userlist.h:118
void userlist_resource_remove(userlist_t *u, ekg_resource_t *r)
Definition: userlist.c:358
char * name
Definition: userlist.h:117
time_t last_seen
Definition: userlist.h:68
void * priv
Definition: userlist.h:72
char * nickname
Definition: userlist.h:58
struct ekg_resource * next
Definition: userlist.h:115
Definition: userlist.h:140
struct userlist * next
Definition: userlist.h:55
userlist_t * userlist_add_u(userlist_t **userlist, const char *uid, const char *nickname)
Definition: userlist.c:390
Definition: userlist.h:54
ekg_resource_t * userlist_resource_find(userlist_t *u, const char *name)
Definition: userlist.c:336
const char * name
Definition: remote.c:88
int userlist_remove(session_t *session, userlist_t *u)
Definition: userlist.c:408
Definition: userlist.h:97
ekg_resource_t * userlist_resource_add(userlist_t *u, const char *name, int prio)
Definition: userlist.c:311
char * get_user_name(userlist_t *u)
Definition: userlist.c:691
char * name
Definition: userlist.h:131
char * descr1line
Definition: userlist.h:65
Definition: userlist.h:103
struct ekg_group * group_init(const char *groups)
Definition: userlist.c:1006
Definition: dynstuff.h:183
#define IGNORE_LABELS_MAX
Definition: userlist.h:152
status_t last_status
Definition: userlist.h:77
Definition: userlist.h:135
Definition: userlist.h:137
const char * format_user(session_t *session, const char *uid)
Definition: userlist.c:708
unsigned int blink
Definition: userlist.h:74
void userlists_destroy(userlist_t **userlist)
Definition: userlist.c:88
Definition: userlist.h:147
const char * get_nickname(session_t *session, const char *text)
Definition: userlist.c:663
Definition: userlist.h:86
ignore_t
Definition: userlist.h:134
Definition: userlist.h:138
int prio
Definition: userlist.h:120
void userlist_write(session_t *session)
Definition: userlist.c:192
int ekg_group_remove(userlist_t *u, const char *group)
Definition: userlist.c:951
struct ignore_label ignore_labels[9]
Definition: userlist.c:42
Definition: userlist.h:144
Definition: userlist.h:114
char * descr
Definition: userlist.h:119
char * foreign
Definition: userlist.h:70
char * name
Definition: userlist.h:149