"""Telnet functions and constants for the mudpy engine."""
-# Copyright (c) 2004-2015 Jeremy Stanley <fungi@yuggoth.org>. Permission
+# Copyright (c) 2004-2018 Jeremy Stanley <fungi@yuggoth.org>. Permission
# to use, copy, modify, and distribute this software is granted under
# terms provided in the LICENSE file distributed with this software.
# the byte following the IAC is our command
command = text[position+1]
- # replace a double (literal) IAC if there's an LF later
+ # replace a double (literal) IAC if there's a CR+NUL or CR+LF later
if command is IAC:
- if text.find("\n", position) > 0:
+ if (
+ text.find(b"\r\0", position) > 0 or
+ text.find(b"\r\n", position) > 0):
position += 1
text = text[:position] + text[position + 1:]
else: