Data Fields
tor_tls_t Struct Reference

#include <tortls_st.h>

Data Fields

uint32_t magic
tor_tls_impl_t * ssl
tor_socket_t socket
char * address
tor_tls_state_bitfield_t state: 3
unsigned int isServer:1
unsigned int wasV2Handshake:1
unsigned int got_renegotiate:1

Detailed Description

Holds a SSL object and its associated data. Members are only accessed from within tortls.c.

Definition at line 41 of file tortls_st.h.

Field Documentation

◆ address

char* address

An address to log when describing this connection.

Definition at line 47 of file tortls_st.h.

Referenced by tls_log_errors(), and tor_tls_set_logged_address().

◆ got_renegotiate

unsigned int got_renegotiate

True iff we should call negotiated_callback when we're done reading.

Definition at line 58 of file tortls_st.h.

◆ isServer

unsigned int isServer

True iff this is a server-side connection

Definition at line 51 of file tortls_st.h.

Referenced by tor_tls_is_server().

◆ socket

tor_socket_t socket

The underlying file descriptor for this TLS connection.

Definition at line 45 of file tortls_st.h.

◆ ssl

tor_tls_impl_t* ssl

A link to the context object for this tls. An OpenSSL SSL object or NSS PRFileDesc.

Definition at line 44 of file tortls_st.h.

Referenced by tor_tls_export_key_material(), tor_tls_free_(), tor_tls_get_n_raw_bytes(), tor_tls_get_own_cert(), tor_tls_get_peer_cert(), tor_tls_get_pending_bytes(), tor_tls_peer_has_cert(), tor_tls_read(), and tor_tls_write().

◆ state

tor_tls_state_bitfield_t state

The current SSL state, depending on which operations have completed successfully.

Definition at line 48 of file tortls_st.h.

Referenced by tor_tls_handshake().

◆ wasV2Handshake

unsigned int wasV2Handshake

True iff the original handshake for this connection used the updated version of the connection protocol (client sends different cipher list, server sends only one certificate).

Definition at line 52 of file tortls_st.h.

The documentation for this struct was generated from the following file: