1 #ifndef __SILC_CHANNELS_H
2 #define __SILC_CHANNELS_H
4 #include "chat-protocols.h"
6 #include "silc-servers.h"
8 /* Returns SILC_CHANNEL_REC if it's SILC channel, NULL if it isn't. */
9 #define SILC_CHANNEL(channel) \
10 PROTO_CHECK_CAST(CHANNEL(channel), SILC_CHANNEL_REC, chat_type, "SILC")
11 #define IS_SILC_CHANNEL(channel) \
12 (SILC_CHANNEL(channel) ? TRUE : FALSE)
13 #define silc_channel_find(server, name) \
14 SILC_CHANNEL(channel_find(SERVER(server), name))
16 #define STRUCT_SERVER_REC SILC_SERVER_REC
18 #include "channel-rec.h"
19 GSList *banlist; /* list of bans */
20 GSList *ebanlist; /* list of ban exceptions */
21 GSList *invitelist; /* invite list */
22 SilcChannelEntry entry;
25 void silc_channels_init(void);
26 void silc_channels_deinit(void);
28 /* Create new SILC channel record */
29 SILC_CHANNEL_REC *silc_channel_create(SILC_SERVER_REC *server,
30 const char *name, int automatic);
31 SILC_CHANNEL_REC *silc_channel_find_entry(SILC_SERVER_REC *server,
32 SilcChannelEntry entry);