diff --git a/aiosmtpd/__init__.py b/aiosmtpd/__init__.py
index 778795f..d8a299d 100644
--- a/aiosmtpd/__init__.py
+++ b/aiosmtpd/__init__.py
@@ -1,4 +1,4 @@
 # Copyright 2014-2021 The aiosmtpd Developers
 # SPDX-License-Identifier: Apache-2.0
 
-__version__ = "1.4.0"
+__version__ = "1.4.1a1"
diff --git a/aiosmtpd/docs/NEWS.rst b/aiosmtpd/docs/NEWS.rst
index 5cd2841..ac079d4 100644
--- a/aiosmtpd/docs/NEWS.rst
+++ b/aiosmtpd/docs/NEWS.rst
@@ -3,6 +3,15 @@
 ###################
 
 
+1.4.1 (aiosmtpd-next)
+=====================
+
+Fixed/Improved
+--------------
+* Maximum length of email address local part is customizable, defaults to no limit. (Closes #257)
+
+
+
 1.4.0 (2021-02-26)
 ==================
 
diff --git a/aiosmtpd/docs/smtp.rst b/aiosmtpd/docs/smtp.rst
index a1246d8..f48b717 100644
--- a/aiosmtpd/docs/smtp.rst
+++ b/aiosmtpd/docs/smtp.rst
@@ -390,6 +390,16 @@ aiosmtpd.smtp
          :attr:`line_length_limit` to ``2**16`` *before* instantiating the
          :class:`SMTP` class.
 
+   .. py:attribute:: local_part_limit
+
+      The maximum lengh (in octets) of the local part of email addresses.
+
+      :rfc:`RFC 5321 § 4.5.3.1.1 <5321#section-4.5.3.1.1>` specifies a maximum length of 64 octets,
+      but this requirement is flexible and can be relaxed at the server's discretion
+      (see :rfc:`§ 4.5.3.1 <5321#section-4.5.3.1>`).
+
+      Setting this to `0` (the default) disables this limit completely.
+
    .. py:attribute:: AuthLoginUsernameChallenge
 
       A ``str`` containing the base64-encoded challenge to be sent as the first challenge
diff --git a/aiosmtpd/smtp.py b/aiosmtpd/smtp.py
index 702faad..667b4af 100644
--- a/aiosmtpd/smtp.py
+++ b/aiosmtpd/smtp.py
@@ -277,12 +277,19 @@ class SMTP(asyncio.StreamReaderProtocol):
     command_size_limit = 512
     command_size_limits: Dict[str, int] = collections.defaultdict(
         lambda x=command_size_limit: x)
+
     line_length_limit = 1001
     """Maximum line length according to RFC 5321 s 4.5.3.1.6"""
     # The number comes from this calculation:
     # (RFC 5322 s 2.1.1 + RFC 6532 s 3.4) 998 octets + CRLF = 1000 octets
     # (RFC 5321 s 4.5.3.1.6) 1000 octets + "transparent dot" = 1001 octets
 
+    local_part_limit: int = 0
+    """
+    Maximum local part length. (RFC 5321 § 4.5.3.1.1 specifies 64, but lenient)
+    If 0 or Falsey, local part length is unlimited.
+    """
+
     AuthLoginUsernameChallenge = "User Name\x00"
     AuthLoginPasswordChallenge = "Password\x00"
 
@@ -455,6 +462,18 @@ class SMTP(asyncio.StreamReaderProtocol):
         except ValueError:
             return self.command_size_limit
 
+    def __del__(self):  # pragma: nocover
+        # This is nocover-ed because the contents *totally* does NOT affect function-
+        # ality, and in addition this comes directly from StreamReaderProtocol.__del__()
+        # but with a getattr()+check addition to stop the annoying (but harmless)
+        # "exception ignored" messages caused by AttributeError when self._closed is
+        # missing (which seems to happen randomly).
+        closed = getattr(self, "_closed", None)
+        if closed is None:
+            return
+        if closed.done() and not closed.cancelled():
+            closed.exception()
+
     def connection_made(self, transport):
         # Reset state due to rfc3207 part 4.2.
         self._set_rset_state()
@@ -1112,10 +1131,9 @@ class SMTP(asyncio.StreamReaderProtocol):
             return None, None
         address = address.addr_spec
         localpart, atsign, domainpart = address.rpartition("@")
-        if len(localpart) > 64:  # RFC 5321 § 4.5.3.1.1
+        if self.local_part_limit and len(localpart) > self.local_part_limit:
             return None, None
-        else:
-            return address, rest
+        return address, rest
 
     def _getparams(self, params):
         # Return params as dictionary. Return None if not all parameters

diff --git a/aiosmtpd/tests/test_smtp.py b/aiosmtpd/tests/test_smtp.py
index ee2c614..b614bc1 100644
--- a/aiosmtpd/tests/test_smtp.py
+++ b/aiosmtpd/tests/test_smtp.py
@@ -489,16 +489,21 @@ class TestSMTP(_CommonMethods):
         "customer/department=shipping@example.com",
         "$A12345@example.com",
         "!def!xyz%abc@example.com",
+        "a" * 65 + "@example.com",  # local-part > 64 chars -- see Issue#257
+        "b" * 488 + "@example.com",  # practical longest for MAIL FROM
+        "c" * 500,  # practical longest domainless for MAIL FROM
     ]
 
     valid_rcptto_addresses = valid_mailfrom_addresses + [
         # Postmaster -- RFC5321 § 4.1.1.3
         "<Postmaster>",
+        "b" * 490 + "@example.com",  # practical longest for RCPT TO
+        "c" * 502,  # practical longest domainless for RCPT TO
     ]
 
     invalid_email_addresses = [
-        "<@example.com>",  # no local part
-        "a" * 65 + "@example.com",  # local-part > 64 chars
+        "<@example.com>",  # null local part
+        "<johnathon@>",  # null domain part
     ]
 
     @pytest.mark.parametrize("data", [b"\x80FAIL\r\n", b"\x80 FAIL\r\n"])
@@ -1659,6 +1664,16 @@ class TestCustomization(_CommonMethods):
         resp = client.docmd("MAIL FROM: <anne@example.com> BODY=FOOBAR")
         assert resp == S.S501_MAIL_BODY
 
+    def test_limitlocalpart(self, plain_controller, client):
+        plain_controller.smtpd.local_part_limit = 64
+        client.ehlo("example.com")
+        locpart = "a" * 64
+        resp = client.docmd(f"MAIL FROM: {locpart}@example.com")
+        assert resp == S.S250_OK
+        locpart = "b" * 65
+        resp = client.docmd(f"RCPT TO: {locpart}@example.com")
+        assert resp == S.S553_MALFORMED
+
 
 class TestClientCrash(_CommonMethods):
     def test_connection_reset_during_DATA(

SMTP doesn't accept RCPT with local part > 64 octets.
smtp.py in the code in _getaddr() at lines 1097 - 1118 contains at lines 1115,1116
```
        if len(localpart) > 64:  # RFC 5321 § 4.5.3.1.1
            return None, None
```
While it is true that RFC 5321 § 4.5.3.1.1 specifies 64 octets as the maximum length of a local part, § 4.5.3.1
says in part `To the  maximum extent possible, implementation techniques that impose no  limits on the length of these objects should be used.`

Also, the stdlib smtpd.py _getaddr() contains no such restriction.

Thus, I think SMTP should be more forgiving since I see no reason to enforce this limit.

This restriction results in issues for GNU Mailman which uses the LMTP class to receive messages and receives confirmation messages addressed to `LISTNAME-confirm+TOKEN@example .com. The length of the token is 40 bytes which means if the length of the list name is > 15 bytes, the local part will exceed 64 bytes and be rejected.
aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[37] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[38] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[37] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[38] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[41]
aiosmtpd/tests/test_smtp.py::TestProtocol::test_honors_mail_delimiters aiosmtpd/tests/test_smtp.py::TestProtocol::test_empty_email aiosmtpd/tests/test_smtp.py::TestSMTP::test_binary[\x80FAIL\r\n] aiosmtpd/tests/test_smtp.py::TestSMTP::test_binary[\x80 aiosmtpd/tests/test_smtp.py::TestSMTP::test_helo aiosmtpd/tests/test_smtp.py::TestSMTP::test_close_then_continue aiosmtpd/tests/test_smtp.py::TestSMTP::test_helo_no_hostname aiosmtpd/tests/test_smtp.py::TestSMTP::test_helo_duplicate aiosmtpd/tests/test_smtp.py::TestSMTP::test_ehlo aiosmtpd/tests/test_smtp.py::TestSMTP::test_ehlo_duplicate aiosmtpd/tests/test_smtp.py::TestSMTP::test_ehlo_no_hostname aiosmtpd/tests/test_smtp.py::TestSMTP::test_helo_then_ehlo aiosmtpd/tests/test_smtp.py::TestSMTP::test_ehlo_then_helo aiosmtpd/tests/test_smtp.py::TestSMTP::test_noop aiosmtpd/tests/test_smtp.py::TestSMTP::test_noop_with_arg aiosmtpd/tests/test_smtp.py::TestSMTP::test_quit aiosmtpd/tests/test_smtp.py::TestSMTP::test_quit_with_args aiosmtpd/tests/test_smtp.py::TestSMTP::test_help aiosmtpd/tests/test_smtp.py::TestSMTP::test_help_[HELO] aiosmtpd/tests/test_smtp.py::TestSMTP::test_help_[EHLO] aiosmtpd/tests/test_smtp.py::TestSMTP::test_help_[MAIL] aiosmtpd/tests/test_smtp.py::TestSMTP::test_help_[RCPT] aiosmtpd/tests/test_smtp.py::TestSMTP::test_help_[DATA] aiosmtpd/tests/test_smtp.py::TestSMTP::test_help_[RSET] aiosmtpd/tests/test_smtp.py::TestSMTP::test_help_[NOOP] aiosmtpd/tests/test_smtp.py::TestSMTP::test_help_[QUIT] aiosmtpd/tests/test_smtp.py::TestSMTP::test_help_[VRFY] aiosmtpd/tests/test_smtp.py::TestSMTP::test_help_[AUTH] aiosmtpd/tests/test_smtp.py::TestSMTP::test_help_esmtp[MAIL] aiosmtpd/tests/test_smtp.py::TestSMTP::test_help_esmtp[RCPT] aiosmtpd/tests/test_smtp.py::TestSMTP::test_help_bad_arg aiosmtpd/tests/test_smtp.py::TestSMTP::test_expn aiosmtpd/tests/test_smtp.py::TestSMTP::test_no_helo[MAIL] aiosmtpd/tests/test_smtp.py::TestSMTP::test_no_helo[RCPT] aiosmtpd/tests/test_smtp.py::TestSMTP::test_no_helo[DATA] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[0] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[1] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[2] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[3] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[4] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[5] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[6] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[7] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[8] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[9] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[10] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[11] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[12] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[13] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[14] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[15] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[16] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[17] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[18] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[19] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[20] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[21] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[22] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[23] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[24] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[25] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[26] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[27] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[28] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[29] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[30] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[31] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[32] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[33] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[34] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[35] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[36] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_valid_address[39] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_smtp_errsyntax[noarg] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_smtp_errsyntax[nofrom] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_smtp_errsyntax[noaddr] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_smtp_errsyntax[params_noesmtp] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_smtp_errsyntax[malformed] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_params_esmtp[norm] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_params_esmtp[extralead] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_params_esmtp[extratail] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_from_twice aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_esmtp_errsyntax[malformed] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_esmtp_errsyntax[missing] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_esmtp_errsyntax[badsyntax] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_esmtp_errsyntax[space] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_esmtp_params_unrecognized aiosmtpd/tests/test_smtp.py::TestSMTP::test_bpo27931fix_smtp aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_invalid_address[0] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_invalid_address[1] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_esmtp_invalid_address[0] aiosmtpd/tests/test_smtp.py::TestSMTP::test_mail_esmtp_invalid_address[1] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_no_mail aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_smtp_errsyntax[noarg] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_smtp_errsyntax[noto] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_smtp_errsyntax[noaddr] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_smtp_errsyntax[params] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_smtp_errsyntax[malformed] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_esmtp_errsyntax[noarg] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_esmtp_errsyntax[noto] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_esmtp_errsyntax[noaddr] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_esmtp_errsyntax[badparams] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_esmtp_errsyntax[malformed] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_unknown_params aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[0] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[1] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[2] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[3] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[4] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[5] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[6] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[7] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[8] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[9] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[10] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[11] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[12] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[13] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[14] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[15] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[16] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[17] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[18] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[19] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[20] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[21] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[22] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[23] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[24] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[25] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[26] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[27] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[28] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[29] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[30] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[31] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[32] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[33] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[34] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[35] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[36] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[39] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[40] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_valid_address[42] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_invalid_address[0] aiosmtpd/tests/test_smtp.py::TestSMTP::test_rcpt_invalid_address[1] aiosmtpd/tests/test_smtp.py::TestSMTP::test_bpo27931fix_esmtp aiosmtpd/tests/test_smtp.py::TestSMTP::test_rset aiosmtpd/tests/test_smtp.py::TestSMTP::test_rset_with_arg aiosmtpd/tests/test_smtp.py::TestSMTP::test_vrfy aiosmtpd/tests/test_smtp.py::TestSMTP::test_vrfy_no_arg aiosmtpd/tests/test_smtp.py::TestSMTP::test_vrfy_not_address aiosmtpd/tests/test_smtp.py::TestSMTP::test_data_no_rcpt aiosmtpd/tests/test_smtp.py::TestSMTP::test_data_354 aiosmtpd/tests/test_smtp.py::TestSMTP::test_data_invalid_params aiosmtpd/tests/test_smtp.py::TestSMTP::test_empty_command aiosmtpd/tests/test_smtp.py::TestSMTP::test_too_long_command aiosmtpd/tests/test_smtp.py::TestSMTP::test_way_too_long_command aiosmtpd/tests/test_smtp.py::TestSMTP::test_unknown_command aiosmtpd/tests/test_smtp.py::TestSMTPNonDecoding::test_mail_invalid_body_param aiosmtpd/tests/test_smtp.py::TestSMTPAuth::test_no_ehlo aiosmtpd/tests/test_smtp.py::TestSMTPAuth::test_helo aiosmtpd/tests/test_smtp.py::TestSMTPAuth::test_not_enough_values aiosmtpd/tests/test_smtp.py::TestSMTPAuth::test_already_authenticated aiosmtpd/tests/test_smtp.py::TestSMTPAuth::test_auth_individually aiosmtpd/tests/test_smtp.py::TestSMTPAuth::test_rset_maintain_authenticated aiosmtpd/tests/test_smtp.py::TestSMTPAuth::test_auth_loginteract_warning aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_ehlo aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_not_supported_mechanism[GSSAPI] aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_not_supported_mechanism[DIGEST-MD5] aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_not_supported_mechanism[MD5] aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_not_supported_mechanism[CRAM-MD5] aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_custom_mechanism aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_disabled_mechanism aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_byclient[login-True] aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_byclient[plain-True] aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_byclient[plain-False] aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_plain1_bad_base64_encoding aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_plain1_bad_base64_length aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_plain1_too_many_values aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_plain1_bad_username aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_plain1_bad_password aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_plain1_empty aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_plain1_good_credentials aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_plain1_goodcreds_sanitized_log aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_plain2_good_credentials aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_plain2_bad_credentials aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_plain2_no_credentials aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_plain2_abort aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_plain2_bad_base64_encoding aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_login2_bad_base64 aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_login2_good_credentials aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_login3_good_credentials aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_login3_bad_base64 aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_login3_bad_username aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_login3_bad_password aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_login3_empty_credentials aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_login3_abort_username aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_login3_abort_password aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_DENYFALSE aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_DENYMISSING aiosmtpd/tests/test_smtp.py::TestAuthMechanisms::test_NONE aiosmtpd/tests/test_smtp.py::TestAuthenticator::test_success aiosmtpd/tests/test_smtp.py::TestAuthenticator::test_fail_withmesg aiosmtpd/tests/test_smtp.py::TestRequiredAuthentication::test_help_unauthenticated aiosmtpd/tests/test_smtp.py::TestRequiredAuthentication::test_help_authenticated aiosmtpd/tests/test_smtp.py::TestRequiredAuthentication::test_vrfy_unauthenticated aiosmtpd/tests/test_smtp.py::TestRequiredAuthentication::test_mail_unauthenticated aiosmtpd/tests/test_smtp.py::TestRequiredAuthentication::test_rcpt_unauthenticated aiosmtpd/tests/test_smtp.py::TestRequiredAuthentication::test_rcpt_nomail_authenticated aiosmtpd/tests/test_smtp.py::TestRequiredAuthentication::test_data_unauthenticated aiosmtpd/tests/test_smtp.py::TestRequiredAuthentication::test_data_authenticated aiosmtpd/tests/test_smtp.py::TestRequiredAuthentication::test_vrfy_authenticated aiosmtpd/tests/test_smtp.py::TestRequiredAuthentication::test_mail_authenticated aiosmtpd/tests/test_smtp.py::TestRequiredAuthentication::test_data_norcpt_authenticated aiosmtpd/tests/test_smtp.py::TestResetCommands::test_helo aiosmtpd/tests/test_smtp.py::TestResetCommands::test_ehlo aiosmtpd/tests/test_smtp.py::TestResetCommands::test_rset aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_mail_with_size_too_large aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_mail_with_compatible_smtputf8 aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_mail_with_unrequited_smtputf8 aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_mail_with_incompatible_smtputf8 aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_mail_invalid_body aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_esmtp_no_size_limit aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_process_message_error aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_too_long_message_body aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_dots_escaped aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_unexpected_errors aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_unexpected_errors_unhandled aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_unexpected_errors_custom_response aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_exception_handler_exception aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_exception_handler_undescribable aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_exception_handler_multiple_connections_lost aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_bad_encodings aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_data_line_too_long aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_long_line_double_count aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_long_line_leak aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_too_long_body_delay_error aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_too_long_body_then_too_long_lines aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_too_long_line_delay_error aiosmtpd/tests/test_smtp.py::TestSMTPWithController::test_too_long_lines_then_too_long_body aiosmtpd/tests/test_smtp.py::TestCustomization::test_custom_hostname aiosmtpd/tests/test_smtp.py::TestCustomization::test_default_greeting aiosmtpd/tests/test_smtp.py::TestCustomization::test_custom_greeting aiosmtpd/tests/test_smtp.py::TestCustomization::test_mail_invalid_body_param aiosmtpd/tests/test_smtp.py::TestCustomization::test_limitlocalpart aiosmtpd/tests/test_smtp.py::TestClientCrash::test_connection_reset_during_DATA aiosmtpd/tests/test_smtp.py::TestClientCrash::test_connection_reset_during_command aiosmtpd/tests/test_smtp.py::TestClientCrash::test_connection_reset_in_long_command aiosmtpd/tests/test_smtp.py::TestClientCrash::test_close_in_command aiosmtpd/tests/test_smtp.py::TestClientCrash::test_close_in_command_2 aiosmtpd/tests/test_smtp.py::TestClientCrash::test_close_in_long_command aiosmtpd/tests/test_smtp.py::TestClientCrash::test_close_in_data aiosmtpd/tests/test_smtp.py::TestClientCrash::test_sockclose_after_helo aiosmtpd/tests/test_smtp.py::TestStrictASCII::test_ehlo aiosmtpd/tests/test_smtp.py::TestStrictASCII::test_bad_encoded_param aiosmtpd/tests/test_smtp.py::TestStrictASCII::test_mail_param aiosmtpd/tests/test_smtp.py::TestStrictASCII::test_data aiosmtpd/tests/test_smtp.py::TestSleepingHandler::test_close_after_helo aiosmtpd/tests/test_smtp.py::TestTimeout::test_timeout aiosmtpd/tests/test_smtp.py::TestAuthArgs::test_warn_authreqnotls aiosmtpd/tests/test_smtp.py::TestAuthArgs::test_log_authmechanisms aiosmtpd/tests/test_smtp.py::TestAuthArgs::test_authmechname_decorator_badname[has aiosmtpd/tests/test_smtp.py::TestAuthArgs::test_authmechname_decorator_badname[has.dot] aiosmtpd/tests/test_smtp.py::TestAuthArgs::test_authmechname_decorator_badname[has/slash] aiosmtpd/tests/test_smtp.py::TestAuthArgs::test_authmechname_decorator_badname[has\\backslash] aiosmtpd/tests/test_smtp.py::TestLimits::test_limit_wrong_type aiosmtpd/tests/test_smtp.py::TestLimits::test_limit_wrong_value_type aiosmtpd/tests/test_smtp.py::TestLimits::test_all_limit_15 aiosmtpd/tests/test_smtp.py::TestLimits::test_different_limits aiosmtpd/tests/test_smtp.py::TestLimits::test_different_limits_custom_default aiosmtpd/tests/test_smtp.py::TestLimits::test_limit_bogus