FD.io VPP
v21.06-3-gbb25fbf28
Vector Packet Processing
tls_picotls.h
Go to the documentation of this file.
1
#ifndef __included_tls_picotls_h__
2
#define __included_tls_picotls_h__
3
4
#include <picotls.h>
5
#include <picotls/openssl.h>
6
#include <
vnet/plugin/plugin.h
>
7
#include <
vnet/tls/tls.h
>
8
#include <vpp/app/version.h>
9
10
#define TLS_RX_LEN(x) ((x)->rx_content + (x)->rx_len)
11
#define TLS_RX_OFFSET(x) ((x)->rx_content + (x)->rx_offset)
12
#define TLS_RX_IS_LEFT(x) ((x)->rx_len != 0 && (x)->rx_len != (x)->rx_offset)
13
#define TLS_RX_LEFT_LEN(x) ((x)->rx_len - (x)->rx_offset)
14
15
#define TLS_READ_OFFSET(x) ((x)->read_buffer.base + (x)->read_buffer_offset)
16
#define TLS_READ_IS_LEFT(x) ((x)->read_buffer.off != 0 && (x)->read_buffer.off != (x)->read_buffer_offset)
17
#define TLS_READ_LEFT_LEN(x) ((x)->read_buffer.off - (x)->read_buffer_offset)
18
19
#define TLS_WRITE_OFFSET(x) ((x)->write_buffer.base + (x)->write_buffer_offset)
20
#define TLS_WRITE_IS_LEFT(x) ((x)->write_buffer.off != 0 && (x)->write_buffer.off != (x)->write_buffer_offset)
21
22
23
typedef
struct
tls_ctx_picotls_
24
{
25
tls_ctx_t
ctx
;
26
u32
ptls_ctx_idx
;
27
ptls_t *
tls
;
28
u8
*
rx_content
;
29
int
rx_offset
;
30
int
rx_len
;
31
ptls_buffer_t
read_buffer
;
32
ptls_buffer_t
write_buffer
;
33
uint8_t *
write_content
;
34
int
read_buffer_offset
;
35
int
write_buffer_offset
;
36
}
picotls_ctx_t
;
37
38
typedef
struct
tls_listen_ctx_picotls_
39
{
40
u32
ptls_lctx_index
;
41
ptls_context_t *
ptls_ctx
;
42
}
picotls_listen_ctx_t
;
43
44
typedef
struct
picotls_main_
45
{
46
picotls_ctx_t
***
ctx_pool
;
47
picotls_listen_ctx_t
*
lctx_pool
;
48
ptls_context_t *
client_ptls_ctx
;
49
clib_rwlock_t
crypto_keys_rw_lock
;
50
}
picotls_main_t
;
51
52
#endif
/* __included_quic_certs_h__ */
53
54
/*
55
* fd.io coding-style-patch-verification: ON
56
*
57
* Local Variables:
58
* eval: (c-set-style "gnu")
59
* End:
60
*/
picotls_listen_ctx_t
struct tls_listen_ctx_picotls_ picotls_listen_ctx_t
tls_ctx_picotls_::read_buffer_offset
int read_buffer_offset
Definition:
tls_picotls.h:34
tls_ctx_picotls_::rx_content
u8 * rx_content
Definition:
tls_picotls.h:28
tls_listen_ctx_picotls_::ptls_ctx
ptls_context_t * ptls_ctx
Definition:
tls_picotls.h:41
picotls_ctx_t
struct tls_ctx_picotls_ picotls_ctx_t
tls_ctx_picotls_::write_buffer_offset
int write_buffer_offset
Definition:
tls_picotls.h:35
picotls_main_::client_ptls_ctx
ptls_context_t * client_ptls_ctx
Definition:
tls_picotls.h:48
tls_ctx_picotls_::tls
ptls_t * tls
Definition:
tls_picotls.h:27
tls_ctx_picotls_::read_buffer
ptls_buffer_t read_buffer
Definition:
tls_picotls.h:31
tls_ctx_
Definition:
tls.h:59
tls_ctx_picotls_::ctx
tls_ctx_t ctx
Definition:
tls_picotls.h:25
picotls_main_::crypto_keys_rw_lock
clib_rwlock_t crypto_keys_rw_lock
Definition:
tls_picotls.h:49
clib_rw_lock_
Definition:
lock.h:139
tls_ctx_picotls_
Definition:
tls_picotls.h:23
plugin.h
tls_listen_ctx_picotls_::ptls_lctx_index
u32 ptls_lctx_index
Definition:
tls_picotls.h:40
tls_ctx_picotls_::rx_len
int rx_len
Definition:
tls_picotls.h:30
u32
unsigned int u32
Definition:
types.h:88
picotls_main_t
struct picotls_main_ picotls_main_t
tls_listen_ctx_picotls_
Definition:
tls_picotls.h:38
tls_ctx_picotls_::rx_offset
int rx_offset
Definition:
tls_picotls.h:29
picotls_main_::ctx_pool
picotls_ctx_t *** ctx_pool
Definition:
tls_picotls.h:46
tls_ctx_picotls_::write_buffer
ptls_buffer_t write_buffer
Definition:
tls_picotls.h:32
tls.h
tls_ctx_picotls_::write_content
uint8_t * write_content
Definition:
tls_picotls.h:33
picotls_main_::lctx_pool
picotls_listen_ctx_t * lctx_pool
Definition:
tls_picotls.h:47
u8
unsigned char u8
Definition:
types.h:56
picotls_main_
Definition:
tls_picotls.h:44
tls_ctx_picotls_::ptls_ctx_idx
u32 ptls_ctx_idx
Definition:
tls_picotls.h:26
src
plugins
tlspicotls
tls_picotls.h
Generated on Sat Jan 8 2022 10:04:25 for FD.io VPP by
1.8.17