FD.io VPP  v19.01.3-6-g70449b9b9
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   16
 

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, stream_session_t *tls_session)
 
static int openssl_try_handshake_write (openssl_ctx_t *oc, stream_session_t *tls_session)
 
int openssl_ctx_handshake_rx (tls_ctx_t *ctx, stream_session_t *tls_session)
 
static int openssl_ctx_write (tls_ctx_t *ctx, stream_session_t *app_session)
 
static int openssl_ctx_read (tls_ctx_t *ctx, stream_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)
 
int tls_init_ca_chain (void)
 
static int tls_openssl_set_ciphers (char *ciphers)
 
static clib_error_ttls_openssl_init (vlib_main_t *vm)
 
 VLIB_PLUGIN_REGISTER ()
 

Variables

static openssl_main_t openssl_main
 
static const tls_engine_vft_t openssl_engine
 

Macro Definition Documentation

◆ MAX_CRYPTO_LEN

#define MAX_CRYPTO_LEN   16

Definition at line 29 of file tls_openssl.c.

Function Documentation

◆ openssl_ctx_alloc()

static u32 openssl_ctx_alloc ( void  )
static

Definition at line 33 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 52 of file tls_openssl.c.

◆ openssl_ctx_get()

tls_ctx_t* openssl_ctx_get ( u32  ctx_index)

Definition at line 66 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 75 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,
stream_session_t tls_session 
)

Definition at line 212 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 463 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 662 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,
stream_session_t tls_session 
)
inlinestatic

Definition at line 382 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,
stream_session_t app_session 
)
inlinestatic

Definition at line 304 of file tls_openssl.c.

+ Here is the call graph for this function:

◆ openssl_handshake_is_over()

static u8 openssl_handshake_is_over ( tls_ctx_t ctx)
static

Definition at line 719 of file tls_openssl.c.

◆ openssl_lctx_get()

openssl_listen_ctx_t* openssl_lctx_get ( u32  lctx_index)

Definition at line 102 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 83 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 96 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 558 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 644 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,
stream_session_t tls_session 
)
static

Definition at line 108 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,
stream_session_t tls_session 
)
static

Definition at line 140 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 742 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 806 of file tls_openssl.c.

+ Here is the call graph for this function:

◆ tls_openssl_set_ciphers()

static int tls_openssl_set_ciphers ( char *  ciphers)
static

Definition at line 785 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,
}
static u8 openssl_handshake_is_over(tls_ctx_t *ctx)
Definition: tls_openssl.c:719
static u32 openssl_ctx_alloc(void)
Definition: tls_openssl.c:33
static void openssl_ctx_free(tls_ctx_t *ctx)
Definition: tls_openssl.c:52
static int openssl_stop_listen(tls_ctx_t *lctx)
Definition: tls_openssl.c:644
tls_ctx_t * openssl_ctx_get(u32 ctx_index)
Definition: tls_openssl.c:66
static int openssl_ctx_write(tls_ctx_t *ctx, stream_session_t *app_session)
Definition: tls_openssl.c:304
static int openssl_ctx_init_client(tls_ctx_t *ctx)
Definition: tls_openssl.c:463
tls_ctx_t * openssl_ctx_get_w_thread(u32 ctx_index, u8 thread_index)
Definition: tls_openssl.c:75
static int openssl_ctx_init_server(tls_ctx_t *ctx)
Definition: tls_openssl.c:662
static int openssl_start_listen(tls_ctx_t *lctx)
Definition: tls_openssl.c:558
static int openssl_ctx_read(tls_ctx_t *ctx, stream_session_t *tls_session)
Definition: tls_openssl.c:382

Definition at line 727 of file tls_openssl.c.

◆ openssl_main

openssl_main_t openssl_main
static

Definition at line 31 of file tls_openssl.c.