session: support registration of custom crypto engines
Type: feature Change-Id: I888d415ff645b3827df7d4cfb0d3c5f4ac940617 Signed-off-by: Florin Coras <fcoras@cisco.com>
This commit is contained in:

committed by
Damjan Marion

parent
ef7cbf6adf
commit
79ba25d402
@ -1630,6 +1630,7 @@ cert_key_pair_store_init (vlib_main_t * vm)
|
||||
{
|
||||
/* Add a certificate with index 0 to support legacy apis */
|
||||
(void) app_cert_key_pair_alloc ();
|
||||
app_main.last_crypto_engine = CRYPTO_ENGINE_LAST;
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -1651,6 +1652,18 @@ VLIB_CLI_COMMAND (show_certificate_command, static) =
|
||||
};
|
||||
/* *INDENT-ON* */
|
||||
|
||||
crypto_engine_type_t
|
||||
app_crypto_engine_type_add (void)
|
||||
{
|
||||
return (++app_main.last_crypto_engine);
|
||||
}
|
||||
|
||||
u8
|
||||
app_crypto_engine_n_types (void)
|
||||
{
|
||||
return (app_main.last_crypto_engine + 1);
|
||||
}
|
||||
|
||||
/*
|
||||
* fd.io coding-style-patch-verification: ON
|
||||
*
|
||||
|
@ -139,6 +139,11 @@ typedef struct app_main_
|
||||
* Pool from which we allocate certificates (key, cert)
|
||||
*/
|
||||
app_cert_key_pair_t *cert_key_pair_store;
|
||||
|
||||
/*
|
||||
* Last registered crypto engine type
|
||||
*/
|
||||
crypto_engine_type_t last_crypto_engine;
|
||||
} app_main_t;
|
||||
|
||||
typedef struct app_init_args_
|
||||
@ -291,6 +296,9 @@ int mq_send_session_connected_cb (u32 app_wrk_index, u32 api_context,
|
||||
void mq_send_unlisten_reply (app_worker_t * app_wrk, session_handle_t sh,
|
||||
u32 context, int rv);
|
||||
|
||||
crypto_engine_type_t app_crypto_engine_type_add (void);
|
||||
u8 app_crypto_engine_n_types (void);
|
||||
|
||||
#endif /* SRC_VNET_SESSION_APPLICATION_H_ */
|
||||
|
||||
/*
|
||||
|
@ -166,7 +166,7 @@ typedef enum crypto_engine_type_
|
||||
CRYPTO_ENGINE_OPENSSL,
|
||||
CRYPTO_ENGINE_VPP,
|
||||
CRYPTO_ENGINE_PICOTLS,
|
||||
CRYPTO_N_ENGINES
|
||||
CRYPTO_ENGINE_LAST = CRYPTO_ENGINE_PICOTLS,
|
||||
} crypto_engine_type_t;
|
||||
|
||||
typedef struct _vnet_app_add_cert_key_pair_args_
|
||||
|
Reference in New Issue
Block a user