diff options
author | David Baker <dbkr@users.noreply.github.com> | 2017-04-10 15:42:16 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-10 15:42:16 +0100 |
commit | 405ba4178a898d2d5b893a7ef7f8f4de514f6f1a (patch) | |
tree | 599527f8c0a06d093a3ac979477a75687d3a9cd5 | |
parent | Merge pull request #2109 from matrix-org/erikj/send_queue_fix (diff) | |
parent | Support authenticated SMTP (diff) | |
download | synapse-405ba4178a898d2d5b893a7ef7f8f4de514f6f1a.tar.xz |
Merge pull request #2102 from DanielDent/add-auth-email
Support authenticated SMTP
-rw-r--r-- | synapse/config/emailconfig.py | 16 | ||||
-rw-r--r-- | synapse/push/mailer.py | 6 |
2 files changed, 21 insertions, 1 deletions
diff --git a/synapse/config/emailconfig.py b/synapse/config/emailconfig.py index 0030b5db1e..fe156b6930 100644 --- a/synapse/config/emailconfig.py +++ b/synapse/config/emailconfig.py @@ -71,6 +71,15 @@ class EmailConfig(Config): self.email_riot_base_url = email_config.get( "riot_base_url", None ) + self.email_smtp_user = email_config.get( + "smtp_user", None + ) + self.email_smtp_pass = email_config.get( + "smtp_pass", None + ) + self.require_transport_security = email_config.get( + "require_transport_security", False + ) if "app_name" in email_config: self.email_app_name = email_config["app_name"] else: @@ -91,10 +100,17 @@ class EmailConfig(Config): # Defining a custom URL for Riot is only needed if email notifications # should contain links to a self-hosted installation of Riot; when set # the "app_name" setting is ignored. + # + # If your SMTP server requires authentication, the optional smtp_user & + # smtp_pass variables should be used + # #email: # enable_notifs: false # smtp_host: "localhost" # smtp_port: 25 + # smtp_user: "exampleusername" + # smtp_pass: "examplepassword" + # require_transport_security: False # notif_from: "Your Friendly %(app)s Home Server <noreply@example.com>" # app_name: Matrix # template_dir: res/templates diff --git a/synapse/push/mailer.py b/synapse/push/mailer.py index 3a50c72e0b..f83aa7625c 100644 --- a/synapse/push/mailer.py +++ b/synapse/push/mailer.py @@ -200,7 +200,11 @@ class Mailer(object): yield sendmail( self.hs.config.email_smtp_host, raw_from, raw_to, multipart_msg.as_string(), - port=self.hs.config.email_smtp_port + port=self.hs.config.email_smtp_port, + requireAuthentication=self.hs.config.email_smtp_user is not None, + username=self.hs.config.email_smtp_user, + password=self.hs.config.email_smtp_pass, + requireTransportSecurity=self.hs.config.require_transport_security ) @defer.inlineCallbacks |