From e5bfe5639379294e78225090e8bbc223f906a291 Mon Sep 17 00:00:00 2001 From: tommyrot Date: Sun, 7 May 2023 16:46:22 +0200 Subject: [PATCH 1/2] List channel membership prefixes in the nickname as prohibited, and advise server implementations to avoid possible detrimental ambiguity. Should solve #203 --- _includes/concepts.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/_includes/concepts.md b/_includes/concepts.md index 604b654..f851f32 100644 --- a/_includes/concepts.md +++ b/_includes/concepts.md @@ -55,9 +55,10 @@ Nicknames are non-empty strings with the following restrictions: - They MUST NOT contain any of the following characters: space `(' ', 0x20)`, comma `(',', 0x2C)`, asterisk `('*', 0x2A)`, question mark `('?', 0x3F)`, exclamation mark `('!', 0x21)`, at sign `('@', 0x40)`. - They MUST NOT start with any of the following characters: dollar `('$', 0x24)`, colon `(':', 0x3A)`. - They MUST NOT start with a character listed as a [channel type](#channel-types) prefix. +- They MUST NOT start with a character listed as a [channel membership prefix](#channel-membership-prefixes), or prefix listed in the IRCv3 [`multi-prefix` Extension](https://ircv3.net/specs/extensions/multi-prefix). - They SHOULD NOT contain any dot character `('.', 0x2E)`. -Servers MAY have additional implementation-specific nickname restrictions. +Servers MAY have additional implementation-specific nickname restrictions and SHOULD avoid the use of nicknames which are ambiguous with commands or command parameters where this could lead to confusion or error. ### Services From c3e90d51162025ac2adee88a876ecfa58047ea3d Mon Sep 17 00:00:00 2001 From: tommyrot Date: Sun, 7 May 2023 17:56:47 +0200 Subject: [PATCH 2/2] Merge the MUST NOT lines related to prefixes together --- _includes/concepts.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/_includes/concepts.md b/_includes/concepts.md index f851f32..877e4ba 100644 --- a/_includes/concepts.md +++ b/_includes/concepts.md @@ -54,8 +54,7 @@ Nicknames are non-empty strings with the following restrictions: - They MUST NOT contain any of the following characters: space `(' ', 0x20)`, comma `(',', 0x2C)`, asterisk `('*', 0x2A)`, question mark `('?', 0x3F)`, exclamation mark `('!', 0x21)`, at sign `('@', 0x40)`. - They MUST NOT start with any of the following characters: dollar `('$', 0x24)`, colon `(':', 0x3A)`. -- They MUST NOT start with a character listed as a [channel type](#channel-types) prefix. -- They MUST NOT start with a character listed as a [channel membership prefix](#channel-membership-prefixes), or prefix listed in the IRCv3 [`multi-prefix` Extension](https://ircv3.net/specs/extensions/multi-prefix). +- They MUST NOT start with a character listed as a [channel type](#channel-types), [channel membership prefix](#channel-membership-prefixes), or prefix listed in the IRCv3 [`multi-prefix` Extension](https://ircv3.net/specs/extensions/multi-prefix). - They SHOULD NOT contain any dot character `('.', 0x2E)`. Servers MAY have additional implementation-specific nickname restrictions and SHOULD avoid the use of nicknames which are ambiguous with commands or command parameters where this could lead to confusion or error.