diff --git a/VERSION b/VERSION index 8cc74977..dcf9788c 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -Version 2.9.12-beta+timestamp.2015.01.12.21.00.43 +Version 2.9.12-beta+timestamp.2015.01.15.09.47.52 diff --git a/gluon/tools.py b/gluon/tools.py index 8db8d0ae..d718f1f4 100644 --- a/gluon/tools.py +++ b/gluon/tools.py @@ -136,6 +136,7 @@ class Mail(object): mail.settings.server mail.settings.sender mail.settings.login + mail.settings.timeout = 60 # seconds (default) When server is 'logging', email is logged but not sent (debug mode) @@ -265,6 +266,7 @@ class Mail(object): settings.sender = sender settings.login = login settings.tls = tls + settings.timeout = 60 # seconds settings.hostname = None settings.ssl = False settings.cipher_type = None @@ -787,10 +789,11 @@ class Mail(object): subject=subject, body=text, **xcc) else: smtp_args = self.settings.server.split(':') + kwargs = dict(timeout = self.settings.timeout) if self.settings.ssl: - server = smtplib.SMTP_SSL(*smtp_args) + server = smtplib.SMTP_SSL(*smtp_args, **kwargs) else: - server = smtplib.SMTP(*smtp_args) + server = smtplib.SMTP(*smtp_args, **kwargs) if self.settings.tls and not self.settings.ssl: server.ehlo(self.settings.hostname) server.starttls()