Package nbxmpp :: Module tls_nb :: Class NonBlockingTLS |
[hide private]
[frames] | no frames]

# Class NonBlockingTLS

source code

TLS connection used to encrypts already estabilished tcp connection

Can be plugged into NonBlockingTCP and will make use of StdlibSSLWrapper or PyOpenSSLWrapper.

Instance Methods | [hide private]
__init__(self, cacerts, mycerts) | source code
plugin(self, owner) Use to PlugIn TLS into transport and start establishing immediately. Returns True if TLS/SSL was established correctly, otherwise False | source code
_dumpX509(self, cert, stream=sys.stderr) | source code
_dumpX509Name(self, name, stream=sys.stderr) | source code
_dumpPKey(self, pkey, stream=sys.stderr) | source code
_startSSL(self) Immediatedly switch socket to TLS mode. Used internally | source code
_load_cert_file(self, cert_path, cert_store, logg=True) | source code
_startSSL_pyOpenSSL(self) | source code
_startSSL_stdlib(self) | source code
_ssl_verify_callback(self, sslconn, cert, errnum, depth, ok) | source code
Inherited from `plugin.PlugIn`: `PlugIn`, `PlugOut`

Class Methods | [hide private]
Inherited from `plugin.PlugIn`: `get_instance`

Class Variables | [hide private]
| ssl_h_bits = ``{``'``SSL_CB_ALERT``'``:` 16384`,` `'``SSL_CB_EXIT``'``:` 2`,` `'``SSL_CB``...``

Method Details | [hide private]

### __init__(self, cacerts, mycerts) (Constructor) | source code
Parameters: `cacerts` - path to pem file with certificates of known XMPP servers `mycerts` - path to pem file with certificates of user trusted servers Overrides: plugin.PlugIn.__init__

### plugin(self, owner) | source code
Use to PlugIn TLS into transport and start establishing immediately. Returns True if TLS/SSL was established correctly, otherwise False

### _dumpX509(self, cert, stream=sys.stderr) | source code

### _dumpX509Name(self, name, stream=sys.stderr) | source code

### _dumpPKey(self, pkey, stream=sys.stderr) | source code

### _startSSL(self) | source code
Immediatedly switch socket to TLS mode. Used internally

### _load_cert_file(self, cert_path, cert_store, logg=True) | source code

### _startSSL_pyOpenSSL(self) | source code

### _startSSL_stdlib(self) | source code

### _ssl_verify_callback(self, sslconn, cert, errnum, depth, ok) | source code

Class Variable Details | [hide private]

  ### ssl_h_bits Value:
      {'SSL_CB_ALERT': 16384,
       'SSL_CB_EXIT': 2,
       'SSL_CB_HANDSHAKE_DONE': 32,
       'SSL_CB_HANDSHAKE_START': 16,
       'SSL_CB_LOOP': 1,
       'SSL_CB_READ': 4,
       'SSL_CB_WRITE': 8,
       'SSL_ST_ACCEPT': 8192,
      ...