Tor 0.4.9.0-alpha-dev
tls Directory Reference

lib/tls: TLS library wrappers

More...

Files

file  buffers_tls.c [code]
 Read and write data on a tor_tls_t connection from a buf_t object.
 
file  buffers_tls.h [code]
 Header for buffers_tls.c.
 
file  ciphers.inc [code]
 
file  nss_countbytes.c [code]
 A PRFileDesc layer to let us count the number of bytes bytes actually written on a PRFileDesc.
 
file  nss_countbytes.h [code]
 Header for nss_countbytes.c, which lets us count the number of bytes actually written on a PRFileDesc.
 
file  tortls.c [code]
 Shared functionality for our TLS backends.
 
file  tortls.h [code]
 Headers for tortls.c.
 
file  tortls_internal.h [code]
 Declare internal functions for lib/tls.
 
file  tortls_nss.c [code]
 Wrapper functions to present a consistent interface to TLS and SSL X.509 functions from NSS.
 
file  tortls_openssl.c [code]
 
file  tortls_st.h [code]
 Structure declarations for internal TLS types.
 
file  tortls_sys.h [code]
 Declare subsystem object for the tortls module.
 
file  x509.c [code]
 
file  x509.h [code]
 Headers for tortls.c.
 
file  x509_internal.h [code]
 
file  x509_nss.c [code]
 Wrapper functions to present a consistent interface to X.509 functions from NSS.
 
file  x509_openssl.c [code]
 Wrapper functions to present a consistent interface to X.509 functions.
 

Detailed Description

lib/tls: TLS library wrappers

This module has compatibility wrappers around the library (NSS or OpenSSL, depending on configuration) that Tor uses to implement the TLS link security protocol.

It also implements the logic for some legacy TLS protocol usage we used to support in old versions of Tor, involving conditional delivery of certificate chains (v1 link protocol) and conditional renegotiation (v2 link protocol).