FD.io VPP  v20.01-48-g3e0dafb74
Vector Packet Processing
tls_openssl.c File Reference
+ Include dependency graph for tls_openssl.c:

Go to the source code of this file.

Macros

#define MAX_CRYPTO_LEN   64
 

Functions

static u32 openssl_ctx_alloc (void)
 
static void openssl_ctx_free (tls_ctx_t *ctx)
 
tls_ctx_topenssl_ctx_get (u32 ctx_index)
 
tls_ctx_topenssl_ctx_get_w_thread (u32 ctx_index, u8 thread_index)
 
static u32 openssl_listen_ctx_alloc (void)
 
static void openssl_listen_ctx_free (openssl_listen_ctx_t *lctx)
 
openssl_listen_ctx_topenssl_lctx_get (u32 lctx_index)
 
static int openssl_try_handshake_read (openssl_ctx_t *oc, session_t *tls_session)
 
static int openssl_try_handshake_write (openssl_ctx_t *oc, session_t *tls_session)
 
static void openssl_handle_handshake_failure (tls_ctx_t *ctx)
 
int openssl_ctx_handshake_rx (tls_ctx_t *ctx, session_t *tls_session)
 
static void openssl_confirm_app_close (tls_ctx_t *ctx)
 
static int openssl_ctx_write (tls_ctx_t *ctx, session_t *app_session)
 
static int openssl_ctx_read (tls_ctx_t *ctx, session_t *tls_session)
 
static int openssl_ctx_init_client (tls_ctx_t *ctx)
 
static int openssl_start_listen (tls_ctx_t *lctx)
 
static int openssl_stop_listen (tls_ctx_t *lctx)
 
static int openssl_ctx_init_server (tls_ctx_t *ctx)
 
static u8 openssl_handshake_is_over (tls_ctx_t *ctx)
 
static int openssl_transport_close (tls_ctx_t *ctx)
 
static int openssl_app_close (tls_ctx_t *ctx)
 
int tls_init_ca_chain (void)
 
int tls_openssl_set_ciphers (char *ciphers)
 
static clib_error_ttls_openssl_init (vlib_main_t *vm)
 
 VLIB_PLUGIN_REGISTER ()
 

Variables

openssl_main_t openssl_main
 
static const tls_engine_vft_t openssl_engine
 

Macro Definition Documentation

◆ MAX_CRYPTO_LEN

#define MAX_CRYPTO_LEN   64

Definition at line 30 of file tls_openssl.c.

Function Documentation

◆ openssl_app_close()

static int openssl_app_close ( tls_ctx_t ctx)
static

Definition at line 782 of file tls_openssl.c.

+ Here is the call graph for this function:

◆ openssl_confirm_app_close()

static void openssl_confirm_app_close ( tls_ctx_t ctx)
static

Definition at line 327 of file tls_openssl.c.

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

◆ openssl_ctx_alloc()

static u32 openssl_ctx_alloc ( void  )
static

Definition at line 34 of file tls_openssl.c.

+ Here is the call graph for this function:

◆ openssl_ctx_free()

static void openssl_ctx_free ( tls_ctx_t ctx)
static

Definition at line 53 of file tls_openssl.c.

◆ openssl_ctx_get()

tls_ctx_t* openssl_ctx_get ( u32  ctx_index)

Definition at line 68 of file tls_openssl.c.

+ Here is the call graph for this function:

◆ openssl_ctx_get_w_thread()

tls_ctx_t* openssl_ctx_get_w_thread ( u32  ctx_index,
u8  thread_index 
)

Definition at line 77 of file tls_openssl.c.

+ Here is the caller graph for this function:

◆ openssl_ctx_handshake_rx()

int openssl_ctx_handshake_rx ( tls_ctx_t ctx,
session_t tls_session 
)

Definition at line 232 of file tls_openssl.c.

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

◆ openssl_ctx_init_client()

static int openssl_ctx_init_client ( tls_ctx_t ctx)
static

Definition at line 502 of file tls_openssl.c.

+ Here is the call graph for this function:

◆ openssl_ctx_init_server()

static int openssl_ctx_init_server ( tls_ctx_t ctx)
static

Definition at line 704 of file tls_openssl.c.

+ Here is the call graph for this function:

◆ openssl_ctx_read()

static int openssl_ctx_read ( tls_ctx_t ctx,
session_t tls_session 
)
inlinestatic

Definition at line 417 of file tls_openssl.c.

+ Here is the call graph for this function:

◆ openssl_ctx_write()

static int openssl_ctx_write ( tls_ctx_t ctx,
session_t app_session 
)
inlinestatic

Definition at line 334 of file tls_openssl.c.

+ Here is the call graph for this function:

◆ openssl_handle_handshake_failure()

static void openssl_handle_handshake_failure ( tls_ctx_t ctx)
static

Definition at line 210 of file tls_openssl.c.

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

◆ openssl_handshake_is_over()

static u8 openssl_handshake_is_over ( tls_ctx_t ctx)
static

Definition at line 761 of file tls_openssl.c.

+ Here is the caller graph for this function:

◆ openssl_lctx_get()

openssl_listen_ctx_t* openssl_lctx_get ( u32  lctx_index)

Definition at line 104 of file tls_openssl.c.

+ Here is the caller graph for this function:

◆ openssl_listen_ctx_alloc()

static u32 openssl_listen_ctx_alloc ( void  )
static

Definition at line 85 of file tls_openssl.c.

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

◆ openssl_listen_ctx_free()

static void openssl_listen_ctx_free ( openssl_listen_ctx_t lctx)
static

Definition at line 98 of file tls_openssl.c.

+ Here is the caller graph for this function:

◆ openssl_start_listen()

static int openssl_start_listen ( tls_ctx_t lctx)
static

Definition at line 597 of file tls_openssl.c.

+ Here is the call graph for this function:

◆ openssl_stop_listen()

static int openssl_stop_listen ( tls_ctx_t lctx)
static

Definition at line 686 of file tls_openssl.c.

+ Here is the call graph for this function:

◆ openssl_transport_close()

static int openssl_transport_close ( tls_ctx_t ctx)
static

Definition at line 770 of file tls_openssl.c.

+ Here is the call graph for this function:

◆ openssl_try_handshake_read()

static int openssl_try_handshake_read ( openssl_ctx_t oc,
session_t tls_session 
)
static

Definition at line 110 of file tls_openssl.c.

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

◆ openssl_try_handshake_write()

static int openssl_try_handshake_write ( openssl_ctx_t oc,
session_t tls_session 
)
static

Definition at line 141 of file tls_openssl.c.

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

◆ tls_init_ca_chain()

int tls_init_ca_chain ( void  )

Definition at line 814 of file tls_openssl.c.

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

◆ tls_openssl_init()

static clib_error_t* tls_openssl_init ( vlib_main_t vm)
static

Definition at line 883 of file tls_openssl.c.

+ Here is the call graph for this function:

◆ tls_openssl_set_ciphers()

int tls_openssl_set_ciphers ( char *  ciphers)

Definition at line 862 of file tls_openssl.c.

+ Here is the caller graph for this function:

◆ VLIB_PLUGIN_REGISTER()

VLIB_PLUGIN_REGISTER ( )

Variable Documentation

◆ openssl_engine

const tls_engine_vft_t openssl_engine
static
Initial value:
= {
.ctx_alloc = openssl_ctx_alloc,
.ctx_free = openssl_ctx_free,
.ctx_get = openssl_ctx_get,
.ctx_get_w_thread = openssl_ctx_get_w_thread,
.ctx_init_server = openssl_ctx_init_server,
.ctx_init_client = openssl_ctx_init_client,
.ctx_write = openssl_ctx_write,
.ctx_read = openssl_ctx_read,
.ctx_handshake_is_over = openssl_handshake_is_over,
.ctx_start_listen = openssl_start_listen,
.ctx_stop_listen = openssl_stop_listen,
.ctx_transport_close = openssl_transport_close,
.ctx_app_close = openssl_app_close,
}
static int openssl_transport_close(tls_ctx_t *ctx)
Definition: tls_openssl.c:770
static u8 openssl_handshake_is_over(tls_ctx_t *ctx)
Definition: tls_openssl.c:761
static u32 openssl_ctx_alloc(void)
Definition: tls_openssl.c:34
static void openssl_ctx_free(tls_ctx_t *ctx)
Definition: tls_openssl.c:53
static int openssl_stop_listen(tls_ctx_t *lctx)
Definition: tls_openssl.c:686
tls_ctx_t * openssl_ctx_get(u32 ctx_index)
Definition: tls_openssl.c:68
static int openssl_ctx_init_client(tls_ctx_t *ctx)
Definition: tls_openssl.c:502
static int openssl_app_close(tls_ctx_t *ctx)
Definition: tls_openssl.c:782
static int openssl_ctx_write(tls_ctx_t *ctx, session_t *app_session)
Definition: tls_openssl.c:334
static int openssl_ctx_read(tls_ctx_t *ctx, session_t *tls_session)
Definition: tls_openssl.c:417
tls_ctx_t * openssl_ctx_get_w_thread(u32 ctx_index, u8 thread_index)
Definition: tls_openssl.c:77
static int openssl_ctx_init_server(tls_ctx_t *ctx)
Definition: tls_openssl.c:704
static int openssl_start_listen(tls_ctx_t *lctx)
Definition: tls_openssl.c:597

Definition at line 797 of file tls_openssl.c.

◆ openssl_main

openssl_main_t openssl_main

Definition at line 32 of file tls_openssl.c.