summaryrefslogtreecommitdiff
path: root/src/leap/mail/smtp/__init__.py
diff options
context:
space:
mode:
authordrebs <drebs@leap.se>2013-08-14 17:24:57 -0300
committerdrebs <drebs@leap.se>2013-08-14 17:24:57 -0300
commitc4aadb757e1434ae955e0de8ed024dca6aa4869d (patch)
treee40e7d83cfc8e8f46d0eb4f7568a62f5dc6bc27e /src/leap/mail/smtp/__init__.py
parentf26d4c395f56ae07d7341fd48f8e5b244db8328c (diff)
Make SMTP Relay emit signals.
Diffstat (limited to 'src/leap/mail/smtp/__init__.py')
-rw-r--r--src/leap/mail/smtp/__init__.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/leap/mail/smtp/__init__.py b/src/leap/mail/smtp/__init__.py
index 3b4d9d6..1139afa 100644
--- a/src/leap/mail/smtp/__init__.py
+++ b/src/leap/mail/smtp/__init__.py
@@ -22,6 +22,7 @@ SMTP relay helper function.
from twisted.internet import reactor
+from leap.common.events import proto, signal
from leap.mail.smtp.smtprelay import SMTPFactory
@@ -70,4 +71,8 @@ def setup_smtp_relay(port, keymanager, smtp_host, smtp_port,
# configure the use of this service with twistd
factory = SMTPFactory(keymanager, config)
- reactor.listenTCP(port, factory)
+ try:
+ reactor.listenTCP(port, factory)
+ signal(proto.SMTP_SERVICE_STARTED, str(smtp_port))
+ except CannotListenError:
+ signal(proto.SMTP_SERVICE_FAILED_TO_START, str(smtp_port))