Modeless channels (+channels) are described in RFC 2811;
so my modifications to
530112b114ffa7d5352c0733790ddf90253f41f9
('Add support for modeless channels')
to disable +channels for --strict-rfc configurations
were wrong. This reverts those changes.
{
assert( Name != NULL );
- switch (Name[0]) {
- case '#': break;
-#ifndef STRICT_RFC
- case '+': /* modeless channel */
- break;
-#endif
- default: return false;
- }
+ if (strchr("+#", Name[0]) == NULL)
+ return false;
if (strlen(Name) >= CHANNEL_NAME_LEN)
return false;
if (!chan) {
/*
* New Channel: first user will be channel operator
- * unless this is a modeless channel... */
-#ifndef STRICT_RFC
+ * unless this is a modeless channel.
+ */
if (*channame != '+')
-#endif
flags = "o";
} else
if (!join_allowed(Client, target, chan, channame, key))
long l;
size_t len;
-#ifndef STRICT_RFC
/* Are modes allowed on channel? */
if (Channel_Name(Channel)[0] == '+')
return IRC_WriteStrClient(Client, ERR_NOCHANMODES_MSG,
Client_ID(Client), Channel_Name(Channel));
-#endif
+
/* Mode request: let's answer it :-) */
if (Req->argc <= 1)
return Channel_Mode_Answer_Request(Origin, Channel);