if (mode_on)
{
std::string ChanToJoin = params[0];
- chanrec* c = Srv->FindChannel(ChanToJoin);
+ chanrec *c;
+
+ if (!IsValidChannelName(ChanToJoin.c_str()))
+ {
+ WriteServ(user->fd,"403 %s %s :Invalid channel name",user->nick, ChanToJoin.c_str());
+ return 0;
+ }
+
+ c = Srv->FindChannel(ChanToJoin);
if (c)
{
/* Fix by brain: Dont let a channel be linked to *itself* either */
- if ((c == target) || (c->IsCustomModeSet('L')))
+ if ((c == target) || (c->IsModeSet('L')))
{
WriteServ(user->fd,"690 %s :Circular redirection, mode +L to %s not allowed.",user->nick,params[0].c_str());
return 0;
{
if (chan)
{
- if (chan->IsCustomModeSet('L'))
+ if (chan->IsModeSet('L'))
{
if (Srv->CountUsers(chan) >= chan->limit)
{