mirror of
https://github.com/progval/irctest.git
synced 2025-04-07 15:59:49 +00:00
24 lines
752 B
Python
24 lines
752 B
Python
"""
|
|
Handles ambiguities of RFCs.
|
|
"""
|
|
|
|
from typing import List
|
|
|
|
|
|
def normalize_namreply_params(params: List[str]) -> List[str]:
|
|
# So… RFC 2812 says:
|
|
# "( "=" / "*" / "@" ) <channel>
|
|
# :[ "@" / "+" ] <nick> *( " " [ "@" / "+" ] <nick> )
|
|
# but spaces seem to be missing (eg. before the colon), so we
|
|
# don't know if there should be one before the <channel> and its
|
|
# prefix.
|
|
# So let's normalize this to “with space”, and strip spaces at the
|
|
# end of the nick list.
|
|
params = list(params) # copy the list
|
|
if len(params) == 3:
|
|
assert params[1][0] in "=*@", params
|
|
params.insert(1, params[1][0])
|
|
params[2] = params[2][1:]
|
|
params[3] = params[3].rstrip()
|
|
return params
|