summaryrefslogtreecommitdiffstats
path: root/Lib/logging
diff options
context:
space:
mode:
authorVinay Sajip <vinay_sajip@yahoo.co.uk>2015-10-17 15:17:52 (GMT)
committerVinay Sajip <vinay_sajip@yahoo.co.uk>2015-10-17 15:17:52 (GMT)
commit3f445f799aeb041cada532be23d835c15a61d432 (patch)
treebd7051b2a5bb35f6bcd5f0a9b260ffcc6436a3b0 /Lib/logging
parenta83a0e23168f3d4ac730ba7cd931eb25df77e7f3 (diff)
parent277640af0f528f71c9882a30c9325cd02b10a31a (diff)
downloadcpython-3f445f799aeb041cada532be23d835c15a61d432.zip
cpython-3f445f799aeb041cada532be23d835c15a61d432.tar.gz
cpython-3f445f799aeb041cada532be23d835c15a61d432.tar.bz2
Closes #25411: Merged fix from 3.4.
Diffstat (limited to 'Lib/logging')
-rw-r--r--Lib/logging/handlers.py18
1 files changed, 10 insertions, 8 deletions
diff --git a/Lib/logging/handlers.py b/Lib/logging/handlers.py
index 02a5fc1..b810fa9 100644
--- a/Lib/logging/handlers.py
+++ b/Lib/logging/handlers.py
@@ -965,24 +965,26 @@ class SMTPHandler(logging.Handler):
"""
try:
import smtplib
- from email.utils import formatdate
+ from email.message import EmailMessage
+ import email.utils
+
port = self.mailport
if not port:
port = smtplib.SMTP_PORT
smtp = smtplib.SMTP(self.mailhost, port, timeout=self.timeout)
- msg = self.format(record)
- msg = "From: %s\r\nTo: %s\r\nSubject: %s\r\nDate: %s\r\n\r\n%s" % (
- self.fromaddr,
- ",".join(self.toaddrs),
- self.getSubject(record),
- formatdate(), msg)
+ msg = EmailMessage()
+ msg['From'] = self.fromaddr
+ msg['To'] = ','.join(self.toaddrs)
+ msg['Subject'] = self.getSubject(record)
+ msg['Date'] = email.utils.localtime()
+ msg.set_content(self.format(record))
if self.username:
if self.secure is not None:
smtp.ehlo()
smtp.starttls(*self.secure)
smtp.ehlo()
smtp.login(self.username, self.password)
- smtp.sendmail(self.fromaddr, self.toaddrs, msg)
+ smtp.send_message(msg)
smtp.quit()
except Exception:
self.handleError(record)