diff options
| author | 2018-09-12 10:18:12 +0100 | |
|---|---|---|
| committer | 2018-09-12 10:18:12 +0100 | |
| commit | 08aa72de82afe82c1c333b830388451b3bcc02d8 (patch) | |
| tree | 9e6fcf40b5d3ac04019db968b4bd99b3f1636583 /Utils.py | |
| parent | Don't return 0 as "time until next ping" when we've already sent a ping. return (diff) | |
Support 'strict-rfc1459' case mapping
Diffstat (limited to 'Utils.py')
| -rw-r--r-- | Utils.py | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -8,6 +8,8 @@ REGEX_HTTP = re.compile("https?://", re.I) RFC1459_UPPER = r'\[]~' RFC1459_LOWER = r'|{}^' +STRICT_RFC1459_UPPER = r'\[]' +STRICT_RFC1459_LOWER = r'|{}' def remove_colon(s): if s.startswith(":"): @@ -21,11 +23,17 @@ def _rfc1459_lower(s): for upper, lower in zip(RFC1459_UPPER, RFC1459_LOWER): s = s.replace(upper, lower) return s.lower() +def _strict_rfc1459_lower(s): + for upper, lower in zip(STRICT_RFC1459_UPPER, STRICT_RFC1459_LOWER): + s = s.replace(upper, lower) + return s.lower() def irc_lower(server, s): if server.case_mapping == "ascii": return s.lower() elif server.case_mapping == "rfc1459": return _rfc1459_lower(s) + elif server.case_mapping == "strict-rfc1459": + return _strict_rfc1459_lower(s) else: raise ValueError("unknown casemapping '%s'" % server.case_mapping) |
