commit 51d7674ee7b17553a7481b7a154145300797d6e3 from: Alexander Barton date: Fri Aug 19 09:09:40 2011 UTC New 2nd message "Nickname too long" for error code 432 commit - 1189200d4a1df4cf338c7d5979c2a54fc7edfc8d commit + 51d7674ee7b17553a7481b7a154145300797d6e3 blob - 0f151ac8685469f83a8807682a72ddfd32a7ac9b blob + 16c551f97a89b422bf356465f45b0cc85a522e11 --- src/ngircd/client.c +++ 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; } blob - 93bef3d78eb0ba033722136ce842a2518a077f5c blob + 12791d23d3a4ed319e34910d27bc3a25cf333524 --- src/ngircd/messages.h +++ 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"