diff options
author | Ivan Alejandro <ivanalejandro0@gmail.com> | 2013-09-03 11:41:00 -0300 |
---|---|---|
committer | Ivan Alejandro <ivanalejandro0@gmail.com> | 2013-09-03 11:41:00 -0300 |
commit | daf11353454378378d54ba3244a7c3b6f30e586b (patch) | |
tree | b9b1f284a3e881e1c682845d8d8a6bb1b4de0ffb | |
parent | 9a6927faf5d5baf8abf606606681554592a9a4a9 (diff) | |
parent | 14902d1cc79d1777361e144ff3c46ff52cc005fd (diff) |
Merge remote-tracking branch 'kali/feature/return-smtp-factory' into develop
-rw-r--r-- | changes/feature_return-smtp-factory | 1 | ||||
-rw-r--r-- | src/leap/mail/smtp/__init__.py | 35 |
2 files changed, 20 insertions, 16 deletions
diff --git a/changes/feature_return-smtp-factory b/changes/feature_return-smtp-factory new file mode 100644 index 0000000..d46cac3 --- /dev/null +++ b/changes/feature_return-smtp-factory @@ -0,0 +1 @@ + o SMTP service invocation returns factory instance. diff --git a/src/leap/mail/smtp/__init__.py b/src/leap/mail/smtp/__init__.py index d5d61bf..cc9cc26 100644 --- a/src/leap/mail/smtp/__init__.py +++ b/src/leap/mail/smtp/__init__.py @@ -37,22 +37,24 @@ def setup_smtp_relay(port, keymanager, smtp_host, smtp_port, This function sets up the SMTP relay configuration and the Twisted reactor. - @param port: The port in which to run the server. - @type port: int - @param keymanager: A Key Manager from where to get recipients' public - keys. - @type keymanager: leap.common.keymanager.KeyManager - @param smtp_host: The hostname of the remote SMTP server. - @type smtp_host: str - @param smtp_port: The port of the remote SMTP server. - @type smtp_port: int - @param smtp_cert: The client certificate for authentication. - @type smtp_cert: str - @param smtp_key: The client key for authentication. - @type smtp_key: str - @param encrypted_only: Whether the SMTP relay should send unencrypted mail - or not. - @type encrypted_only: bool + :param port: The port in which to run the server. + :type port: int + :param keymanager: A Key Manager from where to get recipients' public + keys. + :type keymanager: leap.common.keymanager.KeyManager + :param smtp_host: The hostname of the remote SMTP server. + :type smtp_host: str + :param smtp_port: The port of the remote SMTP server. + :type smtp_port: int + :param smtp_cert: The client certificate for authentication. + :type smtp_cert: str + :param smtp_key: The client key for authentication. + :type smtp_key: str + :param encrypted_only: Whether the SMTP relay should send unencrypted mail + or not. + :type encrypted_only: bool + + :returns: SMTPFactory """ # The configuration for the SMTP relay is a dict with the following # format: @@ -77,6 +79,7 @@ def setup_smtp_relay(port, keymanager, smtp_host, smtp_port, try: reactor.listenTCP(port, factory) signal(proto.SMTP_SERVICE_STARTED, str(smtp_port)) + return factory except CannotListenError: logger.error("STMP Service failed to start: " "cannot listen in port %s" % ( |