diff --git a/Lib/smtplib.py b/Lib/smtplib.py index 14e62504d32..dbccf489821 100755 --- a/Lib/smtplib.py +++ b/Lib/smtplib.py @@ -231,6 +231,7 @@ class SMTP: ehlo_msg = "ehlo" ehlo_resp = None does_esmtp = 0 + default_port = SMTP_PORT def __init__(self, host='', port=0, local_hostname=None, timeout=socket._GLOBAL_DEFAULT_TIMEOUT): @@ -246,7 +247,6 @@ class SMTP: """ self.timeout = timeout self.esmtp_features = {} - self.default_port = SMTP_PORT if host: (code, msg) = self.connect(host, port) if code != 220: @@ -804,13 +804,15 @@ if _have_ssl: are also optional - they can contain a PEM formatted private key and certificate chain file for the SSL connection. """ + + default_port = SMTP_SSL_PORT + def __init__(self, host='', port=0, local_hostname=None, keyfile=None, certfile=None, timeout=socket._GLOBAL_DEFAULT_TIMEOUT): self.keyfile = keyfile self.certfile = certfile SMTP.__init__(self, host, port, local_hostname, timeout) - self.default_port = SMTP_SSL_PORT def _get_socket(self, host, port, timeout): if self.debuglevel > 0: diff --git a/Lib/test/test_smtpnet.py b/Lib/test/test_smtpnet.py index f0f1edd127a..0198ab669e0 100644 --- a/Lib/test/test_smtpnet.py +++ b/Lib/test/test_smtpnet.py @@ -17,6 +17,13 @@ class SmtpSSLTest(unittest.TestCase): server.ehlo() server.quit() + def test_connect_default_port(self): + support.get_attribute(smtplib, 'SMTP_SSL') + with support.transient_internet(self.testServer): + server = smtplib.SMTP_SSL(self.testServer) + server.ehlo() + server.quit() + def test_main(): support.run_unittest(SmtpSSLTest) diff --git a/Misc/ACKS b/Misc/ACKS index efbd30bae9b..5c33b2e0a2b 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -366,6 +366,7 @@ Malte Helmert Lance Finn Helsten Jonathan Hendry James Henstridge +Kasun Herath Chris Herborth Ivan Herman Jürgen Hermann diff --git a/Misc/NEWS b/Misc/NEWS index da4a46c79f3..7fe9376ff99 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -83,6 +83,9 @@ Core and Builtins Library ------- +- Issue #11927: SMTP_SSL now uses port 465 by default as documented. Patch + by Kasun Herath. + - Issue 11999: fixed sporadic sync failure mailbox.Maildir due to its trying to detect mtime changes by comparing to the system clock instead of to the previous value of the mtime.