tlslite.integration.POP3_TLS.POP3_TLS

Package tlslite :: Package integration :: Module POP3_TLS :: Class POP3_TLS |
[show private | hide private]
[frames | no frames]

## Class POP3_TLS

            POP3 --+
                   |
    ClientHelper --+
                   |
                  POP3_TLS

This class extends `poplib.POP3` with TLS support.

Method Summary
| ``__init__`(self, host, port, username, password, sharedKey, certChain, privateKey, cryptoID, protocol, x509Fingerprint, x509TrustList, x509CommonName, settings)` Create a new POP3_TLS.
Inherited from POP3
| ``apop`(self, user, secret)` Authorisation - only possible if server has supplied a timestamp in initial greeting.
| ``dele`(self, which)` Delete message number 'which'.
| ``getwelcome`(self)`
| ``list`(self, which)` Request listing, return result.
| ``noop`(self)` Does nothing.
| ``pass_`(self, pswd)` Send password, return response
| ``quit`(self)` Signoff: commit changes on server, unlock mailbox, close connection.
| ``retr`(self, which)` Retrieve whole message number 'which'.
| ``rpop`(self, user)` Not sure what this does.
| ``rset`(self)` Not sure what this does.
| ``set_debuglevel`(self, level)`
| ``stat`(self)` Get mailbox status.
| ``top`(self, which, howmuch)` Retrieve message header of message number 'which' and first 'howmuch' lines of message body.
| ``uidl`(self, which)` Return message digest (unique id) list.
| ``user`(self, user)` Send user name, return response
| ``_getline`(self)`
| ``_getlongresp`(self)`
| ``_getresp`(self)`
| ``_longcmd`(self, line)`
| ``_putcmd`(self, line)`
| ``_putline`(self, line)`
| ``_shortcmd`(self, line)`
Inherited from ClientHelper
| ``_handshake`(self, tlsConnection)`

Class Variable Summary
Inherited from POP3
`SRE_Pattern` | `timestamp` = `\+OK.*(<[^>]+>)`

Method Details

### __init__(self, host, port=995, username=None, password=None, sharedKey=None, certChain=None, privateKey=None, cryptoID=None, protocol=None, x509Fingerprint=None, x509TrustList=None, x509CommonName=None, settings=None) (Constructor) Create a new POP3_TLS. For client authentication, use one of these argument combinations: username, password (SRP) username, sharedKey (shared-key) certChain, privateKey (certificate) For server authentication, you can either rely on the implicit mutual authentication performed by SRP or shared-keys, or you can do certificate-based server authentication with one of these argument combinations: cryptoID[, protocol] (requires cryptoIDlib) x509Fingerprint x509TrustList[, x509CommonName] (requires cryptlib_py) Certificate-based server authentication is compatible with SRP or certificate-based client authentication. It is not compatible with shared-keys. The caller should be prepared to handle TLS-specific exceptions. See the client handshake functions in `tlslite.TLSConnection.TLSConnection` for details on which exceptions might be raised. Parameters: `host` - Server to connect to. (type=str) `port` - Port to connect to. (type=int) `username` - SRP or shared-key username. Requires the 'password' or 'sharedKey' argument. (type=str) `password` - SRP password for mutual authentication. Requires the 'username' argument. (type=str) `sharedKey` - Shared key for mutual authentication. Requires the 'username' argument. (type=str) `certChain` - Certificate chain for client authentication. Requires the 'privateKey' argument. Excludes the SRP or shared-key related arguments. (type=`tlslite.X509CertChain.X509CertChain` or `cryptoIDlib.CertChain.CertChain`) `privateKey` - Private key for client authentication. Requires the 'certChain' argument. Excludes the SRP or shared-key related arguments. (type=`tlslite.utils.RSAKey.RSAKey`) `cryptoID` - cryptoID for server authentication. Mutually exclusive with the 'x509...' arguments. (type=str) `protocol` - cryptoID protocol URI for server authentication. Requires the 'cryptoID' argument. (type=str) `x509Fingerprint` - Hex-encoded X.509 fingerprint for server authentication. Mutually exclusive with the 'cryptoID' and 'x509TrustList' arguments. (type=str) `x509TrustList` - A list of trusted root certificates. The other party must present a certificate chain which extends to one of these root certificates. The cryptlib_py module must be installed to use this parameter. Mutually exclusive with the 'cryptoID' and 'x509Fingerprint' arguments. (type=list of `tlslite.X509.X509`) `x509CommonName` - The end-entity certificate's 'CN' field must match this value. For a web server, this is typically a server name such as 'www.amazon.com'. Mutually exclusive with the 'cryptoID' and 'x509Fingerprint' arguments. Requires the 'x509TrustList' argument. (type=str) `settings` - Various settings which can be used to control the ciphersuites, certificate types, and SSL/TLS versions offered by the client. (type=`tlslite.HandshakeSettings.HandshakeSettings`) Overrides: `poplib.POP3.__init__`

Generated by Epydoc 2.0 on Mon Feb 21 21:56:56 2005 | http://epydoc.sf.net