protover.c accepts arbitrary bytes in protocol names
dir-spec.txt defines a protocol name as a Keyword, and strictly limits what character set is allowed in a Keyword:
Keyword = KeywordChar+
KeywordChar ::= 'A' ... 'Z' | 'a' ... 'z' | '0' ... '9' | '-'
But "Foo_Bar=1"
, ",,,=1"
, and arbitrary Unicode strings like "Risqu\u00e9=1"
are accepted. Bytes that aren't even valid Unicode like "\xc1=1"
are also fine, as long as no bytes are the null byte, =
, or the space character.
Trac:
Username: cyberpunks