4 #define CHANUSERFLAG_OPPED 0x01;
5 #define CHANUSERFLAG_VOICED 0x02;
8 #define CHANUSERFLAG_OPPED_OR_VOICED (CHANUSERFLAG_OPPED | CHANUSERFLAG_VOICED);
15 struct ChanNode *chan;
16 struct UserNode *user;
18 struct ChanUser *next_user;
19 struct ChanUser *next_chan;
22 struct ChanUser* addChanUser(struct ChanNode *chan, struct UserNode *user);
23 int isUserOnChan(struct UserNode *user, struct ChanNode *chan);
24 struct ChanUser* getChanUser(struct UserNode *user, struct ChanNode *chan);
25 struct ChanUser* getChannelUsers(struct ChanNode *chan, struct ChanUser *last);
26 struct ChanUser* getUserChannels(struct UserNode *user, struct ChanUser *last);
27 void delChanUser(struct ChanUser *chanuser, int freeChanUser);
28 void quitChanUser(struct ChanUser *chanuser, int freeChanUser);