Go to the latest version of this document.

# ``twisted`.`mail`.`smtp`.`ESMTP``

class documentation

`class ESMTP(SMTP): (source)`

Constructor: `ESMTP(chal, contextFactory)`

View In Hierarchy

Undocumented

Method | `__init__` | Undocumented
Method | `connectionMade` | Called when a connection is made.
Method | `do_EHLO` | Undocumented
Method | `ext_AUTH` | Undocumented
Method | `ext_STARTTLS` | Undocumented
Method | `extensions` | SMTP service extensions
Method | `greeting` | Undocumented
Method | `listExtensions` | Undocumented
Method | `lookupMethod` | No summary
Method | `state_AUTH` | Handle one step of challenge/response authentication.
Class Variable | `startedTLS` | Undocumented
Instance Variable | `authenticated` | Undocumented
Instance Variable | `canStartTLS` | Undocumented
Instance Variable | `challenge` | Undocumented
Instance Variable | `challenger` | Undocumented
Instance Variable | `challengers` | Undocumented
Instance Variable | `ctx` | Undocumented
Instance Variable | `mode` | Undocumented
Method | `_cbAuthenticated` | Save the state resulting from a successful cred login and mark this connection as authenticated.
Method | `_ebAuthenticated` | Handle cred login errors by translating them to the SMTP authenticate failed. Translate all other errors into a generic SMTP error code and log the failure for inspection. Stop all errors from propagating.
Instance Variable | `_from` | Undocumented
Instance Variable | `_helo` | Undocumented
Instance Variable | `_to` | Undocumented

Inherited from `SMTP`:

Method | `connectionLost` | Called when the connection is shut down.
Method | `dataLineReceived` | Undocumented
Method | `do_DATA` | Undocumented
Method | `do_HELO` | Undocumented
Method | `do_MAIL` | Undocumented
Method | `do_QUIT` | Undocumented
Method | `do_RCPT` | Undocumented
Method | `do_RSET` | Undocumented
Method | `do_UNKNOWN` | Undocumented
Method | `host.setter` | Undocumented
Method | `lineLengthExceeded` | Called when the maximum line length has been reached. Override if it needs to be dealt with in some special way.
Method | `lineReceived` | Override this for when each line is received.
Method | `receivedHeader` | Undocumented
Method | `sendCode` | Send an SMTP code with a message.
Method | `sendSyntaxError` | Undocumented
Method | `state_COMMAND` | Undocumented
Method | `timeoutConnection` | Called when the connection times out.
Method | `validateFrom` | Validate the address from which the message originates.
Method | `validateTo` | Validate the address for which the message is destined.
Class Variable | `mail_re` | Undocumented
Class Variable | `noisy` | Undocumented
Class Variable | `portal` | Undocumented
Class Variable | `qstring` | Undocumented
Class Variable | `rcpt_re` | Undocumented
Class Variable | `timeout` | Undocumented
Instance Variable | `datafailed` | Undocumented
Instance Variable | `delivery` | Undocumented
Instance Variable | `deliveryFactory` | Undocumented
Property | `host` | Undocumented
Method | `_cbAnonymousAuthentication` | Save the state resulting from a successful anonymous cred login.
Method | `_cbFromValidate` | Undocumented
Method | `_cbToValidate` | Undocumented
Method | `_disconnect` | Undocumented
Method | `_ebFromValidate` | Undocumented
Method | `_ebToValidate` | Undocumented
Method | `_messageHandled` | Undocumented
Instance Variable | `__inbody` | Undocumented
Instance Variable | `__inheader` | Undocumented
Instance Variable | `__messages` | Undocumented
Instance Variable | `_host` | Undocumented
Instance Variable | `_onLogout` | Undocumented

Inherited from `LineOnlyReceiver` (via `SMTP`):

Method | `dataReceived` | Translates bytes into lines, and calls lineReceived.
Method | `sendLine` | Sends a line to the other end of the connection.
Constant | `MAX_LENGTH` | The maximum length of a line to allow (If a sent line is longer than this, the connection is dropped). Default is 16384.
Class Variable | `delimiter` | The line-ending delimiter to use. By default this is `b'\r\n'`.
Instance Variable | `_buffer` | Undocumented

Inherited from `Protocol` (via `SMTP`, `LineOnlyReceiver`):

Method | `logPrefix` | Return a prefix matching the class name, to identify log messages related to this protocol instance.
Class Variable | `factory` | Undocumented

Inherited from `BaseProtocol` (via `SMTP`, `LineOnlyReceiver`, `Protocol`):

Method | `makeConnection` | Make a connection to a transport and a server.
Instance Variable | `connected` | Undocumented
Instance Variable | `transport` | Undocumented

Inherited from `TimeoutMixin` (via `SMTP`, `LineOnlyReceiver`, `Protocol`, `BaseProtocol`):

Method | `callLater` | Wrapper around `reactor.callLater` for test purpose.
Method | `resetTimeout` | Reset the timeout count down.
Method | `setTimeout` | Change the timeout period
Instance Variable | `timeOut` | The number of seconds after which to timeout the connection.
Method | `__timedOut` | Undocumented
Instance Variable | `__timeoutCall` | Undocumented

def __init__(self, chal=None, contextFactory=None): (source)
overrides `twisted.mail.smtp.SMTP.__init__`

Undocumented

def connectionMade(self): (source)
from `twisted.internet.interfaces.IProtocol`
overrides `twisted.mail.smtp.SMTP.connectionMade`

Called when a connection is made.

This may be considered the initializer of the protocol, because it is called when the connection is completed. For clients, this is called once the connection to the server has been established; for servers, this is called after an accept() call stops blocking and a socket has been received. If you need to send any greeting or initial message, do it here.

def do_EHLO(self, rest): (source)

Undocumented

def ext_AUTH(self, rest): (source)

Undocumented

def ext_STARTTLS(self, rest): (source)

Undocumented

def extensions(self): (source)

SMTP service extensions

Returns
`dict` with `bytes` keys and a value of either `None` or a `list` of `bytes`. | the SMTP service extensions that are supported.

def greeting(self): (source)
overrides `twisted.mail.smtp.SMTP.greeting`

Undocumented

def listExtensions(self): (source)

Undocumented

def lookupMethod(self, command): (source)
overrides `twisted.mail.smtp.SMTP.lookupMethod`

Parameters
command:`str` | The command to get from this class.

Returns
The function which executes this command.

def state_AUTH(self, response): (source)

Handle one step of challenge/response authentication.

Parameters
response | The text of a response. If None, this function has been called as a result of an AUTH command with no initial response. A response of '*' aborts authentication, as per RFC 2554.

startedTLS: `bool` = (source)

Undocumented

authenticated: `bool` = (source)

Undocumented

canStartTLS = (source)

Undocumented

challenge = (source)

Undocumented

challenger = (source)
overrides `twisted.mail.smtp.SMTP.challenger`

Undocumented

challengers = (source)

Undocumented

ctx = (source)

Undocumented

mode = (source)
overrides `twisted.mail.smtp.SMTP.mode`

Undocumented

def _cbAuthenticated(self, loginInfo): (source)

Save the state resulting from a successful cred login and mark this connection as authenticated.

def _ebAuthenticated(self, reason): (source)

Handle cred login errors by translating them to the SMTP authenticate failed. Translate all other errors into a generic SMTP error code and log the failure for inspection. Stop all errors from propagating.

Parameters
reason | Reason for failure.

_from = (source)
overrides `twisted.mail.smtp.SMTP._from`

Undocumented

_helo = (source)
overrides `twisted.mail.smtp.SMTP._helo`

Undocumented

_to: `list` = (source)
overrides `twisted.mail.smtp.SMTP._to`

Undocumented