972 |
|
|
973 |
|
chan_list = channel_find_last0(client_p, channel); |
974 |
|
|
975 |
< |
for (const char *chan = strtok_r(chan_list, ",", &p); chan; |
976 |
< |
chan = strtok_r(NULL, ",", &p)) |
975 |
> |
for (const char *name = strtok_r(chan_list, ",", &p); name; |
976 |
> |
name = strtok_r(NULL, ",", &p)) |
977 |
|
{ |
978 |
|
const char *key = NULL; |
979 |
|
|
985 |
|
if (key && *key == '\0') |
986 |
|
key = NULL; |
987 |
|
|
988 |
< |
if (!channel_check_name(chan, 1)) |
988 |
> |
if (!channel_check_name(name, 1)) |
989 |
|
{ |
990 |
< |
sendto_one_numeric(client_p, &me, ERR_BADCHANNAME, chan); |
990 |
> |
sendto_one_numeric(client_p, &me, ERR_BADCHANNAME, name); |
991 |
|
continue; |
992 |
|
} |
993 |
|
|
994 |
|
if (!HasFlag(client_p, FLAGS_EXEMPTRESV) && |
995 |
|
!(HasUMode(client_p, UMODE_OPER) && HasOFlag(client_p, OPER_FLAG_JOIN_RESV)) && |
996 |
< |
((resv = resv_find(chan, match)) && !resv_exempt_find(client_p, resv))) |
996 |
> |
((resv = resv_find(name, match)) && !resv_exempt_find(client_p, resv))) |
997 |
|
{ |
998 |
< |
sendto_one_numeric(client_p, &me, ERR_CHANBANREASON, chan, resv->reason); |
998 |
> |
sendto_one_numeric(client_p, &me, ERR_CHANBANREASON, name, resv->reason); |
999 |
|
sendto_realops_flags(UMODE_REJ, L_ALL, SEND_NOTICE, |
1000 |
|
"Forbidding reserved channel %s from user %s", |
1001 |
< |
chan, get_client_name(client_p, HIDE_IP)); |
1001 |
> |
name, get_client_name(client_p, HIDE_IP)); |
1002 |
|
continue; |
1003 |
|
} |
1004 |
|
|
1005 |
|
if (dlink_list_length(&client_p->channel) >= |
1006 |
|
((class->max_channels) ? class->max_channels : ConfigChannel.max_channels)) |
1007 |
|
{ |
1008 |
< |
sendto_one_numeric(client_p, &me, ERR_TOOMANYCHANNELS, chan); |
1008 |
> |
sendto_one_numeric(client_p, &me, ERR_TOOMANYCHANNELS, name); |
1009 |
|
break; |
1010 |
|
} |
1011 |
|
|
1012 |
< |
if ((chptr = hash_find_channel(chan))) |
1012 |
> |
if ((chptr = hash_find_channel(name))) |
1013 |
|
{ |
1014 |
|
if (IsMember(client_p, chptr)) |
1015 |
|
continue; |
1034 |
|
else |
1035 |
|
{ |
1036 |
|
flags = CHFL_CHANOP; |
1037 |
< |
chptr = channel_make(chan); |
1037 |
> |
chptr = channel_make(name); |
1038 |
|
} |
1039 |
|
|
1040 |
|
if (!HasUMode(client_p, UMODE_OPER)) |