[PATCH] Make SMTP port and authentication configurable
Lukas Fleischer
lfleischer at archlinux.org
Fri Feb 7 12:53:20 UTC 2020
Signed-off-by: Lukas Fleischer <lfleischer at archlinux.org>
---
aurweb/scripts/notify.py | 19 ++++++++++++++++++-
conf/config.defaults | 5 +++++
2 files changed, 23 insertions(+), 1 deletion(-)
diff --git a/aurweb/scripts/notify.py b/aurweb/scripts/notify.py
index 35d2701..ddf4736 100755
--- a/aurweb/scripts/notify.py
+++ b/aurweb/scripts/notify.py
@@ -65,6 +65,11 @@ class Notification:
def send(self):
server_addr = aurweb.config.get('notifications', 'smtp-server')
+ server_port = aurweb.config.getint('notifications', 'smtp-port')
+ use_ssl = aurweb.config.getboolean('notifications', 'smtp-use-ssl')
+ use_starttls = aurweb.config.getboolean('notifications', 'smtp-use-starttls')
+ smtp_user = aurweb.config.get('notifications', 'smtp-user')
+ smtp_passwd = aurweb.config.get('notifications', 'smtp-password')
sender = aurweb.config.get('notifications', 'sender')
reply_to = aurweb.config.get('notifications', 'reply-to')
reason = self.__class__.__name__
@@ -85,7 +90,19 @@ class Notification:
for key, value in self.get_headers().items():
msg[key] = value
- server = smtplib.SMTP(server_addr)
+ if use_ssl:
+ server = smtplib.SMTP_SSL(server_addr, server_port)
+ else:
+ server = smtplib.SMTP(server_addr, server_port)
+
+ if use_starttls:
+ server.ehlo()
+ server.starttls()
+ server.ehlo()
+
+ if user and password:
+ server.login(user, passwd)
+
server.set_debuglevel(1)
server.sendmail(sender, recipient, msg.as_bytes())
server.quit()
diff --git a/conf/config.defaults b/conf/config.defaults
index af85ce8..83820c0 100644
--- a/conf/config.defaults
+++ b/conf/config.defaults
@@ -48,6 +48,11 @@ window_length = 86400
[notifications]
notify-cmd = /usr/local/bin/aurweb-notify
smtp-server = orion.archlinux.org
+smtp-port = 587
+smtp-use-ssl = 0
+smtp-use-starttls = 1
+smtp-user = aur
+smtp-password = aur
sender = notify at aur.archlinux.org
reply-to = noreply at aur.archlinux.org
--
2.25.0
More information about the aur-dev
mailing list