degesch: review todo items

This commit is contained in:
Přemysl Eric Janouch 2015-05-10 00:06:43 +02:00
parent d05b610636
commit e859693bf2

View File

@ -1003,13 +1003,6 @@ struct server
// TODO: an output queue to prevent excess floods (this will be needed
// especially for away status polling)
// XXX: there can be buffers for non-existent users
// TODO: initialize key_strxfrm according to server properties;
// note that collisions may arise on reconnecting
// TODO: when disconnected, get rid of all users everywhere;
// maybe also broadcast all buffers about the disconnection event
// TODO: when getting connected again, rejoin all current channels
struct buffer *buffer; ///< The buffer for this server
struct str_map irc_users; ///< IRC user data
@ -3905,6 +3898,9 @@ irc_process_numeric (struct server *s,
case IRC_RPL_ISUPPORT:
// TODO: parse this, mainly PREFIX; see
// http://www.irc.org/tech_docs/draft-brocklesby-irc-isupport-03.txt
// TODO: initialize key_strxfrm according to server properties;
// note that collisions may arise on reconnecting
break;
case IRC_RPL_NAMREPLY:
// TODO: find the channel and if found, push nicks to names_buf
@ -3914,7 +3910,7 @@ irc_process_numeric (struct server *s,
// however take care to combine channel user modes
break;
case IRC_ERR_NICKNAMEINUSE:
// TODO: if not connected yet (irc_ready), use a different nick;
// TODO: if (state == IRC_CONNECTED), use a different nick;
// either use a number suffix, or accept commas in "nickname" config
break;
}
@ -3955,6 +3951,8 @@ irc_process_message (const struct irc_message *msg,
const char *autojoin = get_config_string (s->ctx, "server.autojoin");
if (autojoin)
irc_send (s, "JOIN :%s", autojoin);
// TODO: rejoin all current channels (mark those we've left manually?)
}
struct irc_handler key = { .name = msg->command };