static USERLIST_CALLBACK(got_channel_userlist) {
struct ChanUser *chanuser = data;
event_join(chanuser);
- putsock(client, "PRIVMSG %s :[BOT JOIN] Users on this Channel:", chan->name);
- for(chanuser = getChannelUsers(chan, NULL); chanuser; chanuser = getChannelUsers(chan, chanuser)) {
- putsock(client, "PRIVMSG %s : %s!%s@%s [%s] rights: %d", chan->name, chanuser->user->nick, chanuser->user->ident, chanuser->user->host, ((chanuser->user->flags & USERFLAG_ISAUTHED) ? chanuser->user->auth : "*"), chanuser->flags);
- }
}
static IRC_CMD(raw_001) {
client->flags |= SOCKET_FLAG_READY;
- putsock(client, "JOIN #pktest");
+ event_bot_ready(client);
return 1;
}
static IRC_CMD(raw_nick) {
if(from == NULL || argc == 0) return 0;
struct UserNode *user = getUserByMask(from);
+ if(user == NULL) return 0;
event_nick(user, argv[0]);
renameUser(user, argv[0]);
return 1;
return 1;
}
-void parser_init() {
+void init_parser() {
//all the raws we receive...
register_irc_function("001", raw_001);
register_irc_function("324", raw_324);
register_irc_function("PING", raw_ping);
register_irc_function("PRIVMSG", raw_privmsg);
}
+
+void free_parser() {
+ struct irc_cmd *cmd, *next;
+ for(cmd = irc_commands; cmd; cmd = next) {
+ next = cmd->next;
+ free(cmd);
+ }
+}
+