diff options
Diffstat (limited to 'irc_commands.c')
-rw-r--r-- | irc_commands.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/irc_commands.c b/irc_commands.c index 19855075..f45f94e2 100644 --- a/irc_commands.c +++ b/irc_commands.c @@ -192,6 +192,7 @@ static void irc_cmd_authenticate(irc_t *irc, char **cmd) /* no check_login here - wait for CAP END */ irc_setpass(irc, pass); } + irc->status |= USTATUS_SASL_AUTHENTICATED; } g_free(user); @@ -786,10 +787,18 @@ static void irc_cmd_away(irc_t *irc, char **cmd) } away[j] = '\0'; - irc_send_num(irc, 306, ":You're now away: %s", away); + if (set_getbool(&irc->b->set, "strict_away")) { + irc_send_num(irc, 306, ":You have been marked as being away"); + } else { + irc_send_num(irc, 306, ":You're now away: %s", away); + } set_setstr(&irc->b->set, "away", away); } else { - irc_send_num(irc, 305, ":Welcome back"); + if (set_getbool(&irc->b->set, "strict_away")) { + irc_send_num(irc, 305, ":You are no longer marked as being away"); + } else { + irc_send_num(irc, 305, ":Welcome back"); + } set_setstr(&irc->b->set, "away", NULL); } } |