FD.io VPP  v20.09-64-g4f7b92f0a
Vector Packet Processing
tls.h File Reference
+ Include dependency graph for tls.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  tls_cxt_id_
 
struct  tls_ctx_
 
struct  tls_main_
 
struct  tls_engine_vft_
 

Macros

#define TLS_DEBUG   0
 
#define TLS_DEBUG_LEVEL_CLIENT   0
 
#define TLS_DEBUG_LEVEL_SERVER   0
 
#define TLS_CHUNK_SIZE   (1 << 14)
 
#define TLS_CA_CERT_PATH   "/etc/ssl/certs/ca-certificates.crt"
 
#define TLS_DBG(_lvl, _fmt, _args...)
 
#define parent_app_wrk_index   c_tls_ctx_id.parent_app_wrk_index
 
#define app_session_handle   c_tls_ctx_id.app_session_handle
 
#define tls_session_handle   c_tls_ctx_id.tls_session_handle
 
#define listener_ctx_index   c_tls_ctx_id.listener_ctx_index
 
#define tcp_is_ip4   c_tls_ctx_id.tcp_is_ip4
 
#define tls_ctx_engine   c_tls_ctx_id.tls_engine_id
 
#define tls_ssl_ctx   c_tls_ctx_id.ssl_ctx
 
#define tls_ctx_handle   c_c_index
 
#define parent_app_api_context   c_tls_ctx_id.parent_app_api_ctx
 

Typedefs

typedef struct tls_cxt_id_ tls_ctx_id_t
 
typedef struct tls_ctx_ tls_ctx_t
 
typedef struct tls_main_ tls_main_t
 
typedef struct tls_engine_vft_ tls_engine_vft_t
 

Functions

 STATIC_ASSERT (sizeof(tls_ctx_id_t)<=TRANSPORT_CONN_ID_LEN, "ctx id must be less than TRANSPORT_CONN_ID_LEN")
 
tls_main_tvnet_tls_get_main (void)
 
void tls_register_engine (const tls_engine_vft_t *vft, crypto_engine_type_t type)
 
int tls_add_vpp_q_rx_evt (session_t *s)
 
int tls_add_vpp_q_tx_evt (session_t *s)
 
int tls_add_vpp_q_builtin_tx_evt (session_t *s)
 
int tls_add_vpp_q_builtin_rx_evt (session_t *s)
 
int tls_notify_app_accept (tls_ctx_t *ctx)
 
int tls_notify_app_connected (tls_ctx_t *ctx, session_error_t err)
 
void tls_notify_app_enqueue (tls_ctx_t *ctx, session_t *app_session)
 
void tls_disconnect_transport (tls_ctx_t *ctx)
 

Macro Definition Documentation

◆ app_session_handle

#define app_session_handle   c_tls_ctx_id.app_session_handle

Definition at line 66 of file tls.h.

◆ listener_ctx_index

#define listener_ctx_index   c_tls_ctx_id.listener_ctx_index

Definition at line 68 of file tls.h.

◆ parent_app_api_context

#define parent_app_api_context   c_tls_ctx_id.parent_app_api_ctx

Definition at line 75 of file tls.h.

◆ parent_app_wrk_index

#define parent_app_wrk_index   c_tls_ctx_id.parent_app_wrk_index

Definition at line 65 of file tls.h.

◆ tcp_is_ip4

#define tcp_is_ip4   c_tls_ctx_id.tcp_is_ip4

Definition at line 69 of file tls.h.

◆ TLS_CA_CERT_PATH

#define TLS_CA_CERT_PATH   "/etc/ssl/certs/ca-certificates.crt"

Definition at line 29 of file tls.h.

◆ TLS_CHUNK_SIZE

#define TLS_CHUNK_SIZE   (1 << 14)

Definition at line 28 of file tls.h.

◆ tls_ctx_engine

#define tls_ctx_engine   c_tls_ctx_id.tls_engine_id

Definition at line 70 of file tls.h.

◆ tls_ctx_handle

#define tls_ctx_handle   c_c_index

Definition at line 72 of file tls.h.

◆ TLS_DBG

#define TLS_DBG (   _lvl,
  _fmt,
  _args... 
)

Definition at line 36 of file tls.h.

◆ TLS_DEBUG

#define TLS_DEBUG   0

Definition at line 24 of file tls.h.

◆ TLS_DEBUG_LEVEL_CLIENT

#define TLS_DEBUG_LEVEL_CLIENT   0

Definition at line 25 of file tls.h.

◆ TLS_DEBUG_LEVEL_SERVER

#define TLS_DEBUG_LEVEL_SERVER   0

Definition at line 26 of file tls.h.

◆ tls_session_handle

#define tls_session_handle   c_tls_ctx_id.tls_session_handle

Definition at line 67 of file tls.h.

◆ tls_ssl_ctx

#define tls_ssl_ctx   c_tls_ctx_id.ssl_ctx

Definition at line 71 of file tls.h.

Typedef Documentation

◆ tls_ctx_id_t

typedef struct tls_cxt_id_ tls_ctx_id_t

◆ tls_ctx_t

typedef struct tls_ctx_ tls_ctx_t

◆ tls_engine_vft_t

◆ tls_main_t

typedef struct tls_main_ tls_main_t

Function Documentation

◆ STATIC_ASSERT()

STATIC_ASSERT ( sizeof(tls_ctx_id_t)<=  TRANSPORT_CONN_ID_LEN,
"ctx id must be less than TRANSPORT_CONN_ID_LEN  
)

◆ tls_add_vpp_q_builtin_rx_evt()

int tls_add_vpp_q_builtin_rx_evt ( session_t s)

Definition at line 62 of file tls.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tls_add_vpp_q_builtin_tx_evt()

int tls_add_vpp_q_builtin_tx_evt ( session_t s)

◆ tls_add_vpp_q_rx_evt()

int tls_add_vpp_q_rx_evt ( session_t s)

Definition at line 54 of file tls.c.

+ Here is the call graph for this function:

◆ tls_add_vpp_q_tx_evt()

int tls_add_vpp_q_tx_evt ( session_t s)

Definition at line 70 of file tls.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tls_disconnect_transport()

void tls_disconnect_transport ( tls_ctx_t ctx)

Definition at line 30 of file tls.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tls_notify_app_accept()

int tls_notify_app_accept ( tls_ctx_t ctx)

Definition at line 181 of file tls.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tls_notify_app_connected()

int tls_notify_app_connected ( tls_ctx_t ctx,
session_error_t  err 
)

Definition at line 211 of file tls.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tls_notify_app_enqueue()

void tls_notify_app_enqueue ( tls_ctx_t ctx,
session_t app_session 
)

Definition at line 172 of file tls.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tls_register_engine()

void tls_register_engine ( const tls_engine_vft_t vft,
crypto_engine_type_t  type 
)

Definition at line 903 of file tls.c.

+ Here is the caller graph for this function:

◆ vnet_tls_get_main()

tls_main_t* vnet_tls_get_main ( void  )

Definition at line 996 of file tls.c.

+ Here is the caller graph for this function: