aboutsummaryrefslogtreecommitdiff
path: root/degesch.c
diff options
context:
space:
mode:
Diffstat (limited to 'degesch.c')
-rw-r--r--degesch.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/degesch.c b/degesch.c
index 7b0af26..8bf40ad 100644
--- a/degesch.c
+++ b/degesch.c
@@ -1286,7 +1286,7 @@ irc_user_on_destroy (void *object, void *user_data)
str_map_set (&ctx->irc_users, user->nickname, NULL);
}
-struct user *
+static struct user *
irc_make_user (struct app_context *ctx, char *nickname)
{
hard_assert (!str_map_find (&ctx->irc_users, nickname));
@@ -1307,7 +1307,7 @@ irc_channel_on_destroy (void *object, void *user_data)
str_map_set (&ctx->irc_channels, channel->name, NULL);
}
-struct channel *
+static struct channel *
irc_make_channel (struct app_context *ctx, char *name)
{
hard_assert (!str_map_find (&ctx->irc_channels, name));
@@ -2294,6 +2294,7 @@ irc_process_numeric (struct app_context *ctx,
const struct irc_message *msg, unsigned long numeric)
{
// Numerics typically have human-readable information
+ // TODO: try to output certain replies in more specific buffers
// Get rid of the first parameter, if there's any at all,
// as it contains our nickname and is of no practical use to the user
@@ -2325,7 +2326,12 @@ irc_process_numeric (struct app_context *ctx,
// TODO: find the channel and if found, push nicks to names_buf
break;
case IRC_RPL_ENDOFNAMES:
- // TODO: find the channel and if found, overwrite users
+ // TODO: find the channel and if found, overwrite users;
+ // however take care to combine channel user modes
+ break;
+ case IRC_ERR_NICKNAMEINUSE:
+ // TODO: if not connected yet (irc_ready), use a different nick;
+ // either use a number suffix, or accept commas in "nickname" config
break;
}
}
@@ -2809,6 +2815,7 @@ handle_command_part (struct app_context *ctx, char *arguments)
if (*arguments)
// TODO: check if the arguments are in the form of "channel(,channel)*"
+ // TODO: make sure to send the reason as one argument
irc_send (ctx, "PART %s", arguments);
else
{