repo: ngircd action: commit revision: path_from: revision_from: 51d7674ee7b17553a7481b7a154145300797d6e3: path_to: revision_to:
commit 51d7674ee7b17553a7481b7a154145300797d6e3 Author: Alexander BartonDate: Fri Aug 19 11:09:40 2011 +0200 New 2nd message "Nickname too long" for error code 432 diff --git a/src/ngircd/client.c b/src/ngircd/client.c
--- a/src/ngircd/client.c
+++ b/src/ngircd/client.c
@@ -864,8 +864,13 @@ Client_CheckNick(CLIENT *Client, char *Nick)
assert(Nick != NULL);
if (!Client_IsValidNick(Nick)) {
- IRC_WriteStrClient(Client, ERR_ERRONEUSNICKNAME_MSG,
- Client_ID(Client), Nick);
+ if (strlen(Nick ) >= Conf_MaxNickLength)
+ IRC_WriteStrClient(Client, ERR_NICKNAMETOOLONG_MSG,
+ Client_ID(Client), Nick,
+ Conf_MaxNickLength - 1);
+ else
+ IRC_WriteStrClient(Client, ERR_ERRONEUSNICKNAME_MSG,
+ Client_ID(Client), Nick);
return false;
}
diff --git a/src/ngircd/messages.h b/src/ngircd/messages.h
--- a/src/ngircd/messages.h +++ b/src/ngircd/messages.h @@ -105,6 +105,7 @@ #define ERR_NOMOTD_MSG "422 %s :MOTD file is missing" #define ERR_NONICKNAMEGIVEN_MSG "431 %s :No nickname given" #define ERR_ERRONEUSNICKNAME_MSG "432 %s %s :Erroneous nickname" +#define ERR_NICKNAMETOOLONG_MSG "432 %s %s :Nickname too long, max. %u characters" #define ERR_NICKNAMEINUSE_MSG "433 %s %s :Nickname already in use" #define ERR_USERNOTINCHANNEL_MSG "441 %s %s %s :They aren't on that channel" #define ERR_NOTONCHANNEL_MSG "442 %s %s :You are not on that channel"
-----END OF PAGE-----