47#define DCO_IROUTE_METRIC 100
48#define DCO_DEFAULT_METRIC 200
50#if defined(ENABLE_DCO)
160 const struct key2 *
key2,
int key_direction,
161 const char *ciphername,
bool server);
194 int keepalive_interval,
int keepalive_timeout,
int mss);
239 const bool raise_sigusr1_on_err);
275static inline const char *
278 return "not-compiled";
330 const struct key2 *
key2,
int key_direction,
331 const char *ciphername,
bool server)
351 int keepalive_interval,
int keepalive_timeout,
int mss)
380 const bool raise_sigusr1_on_err)
391static inline const char *
static bool dco_available(int msglevel)
static int dco_set_peer(dco_context_t *dco, unsigned int peerid, int keepalive_interval, int keepalive_timeout, int mss)
static const char * dco_get_supported_ciphers(void)
static bool dco_supports_epoch_data(struct context *c)
static int dco_do_read(dco_context_t *dco)
static void dco_event_set(dco_context_t *dco, struct event_set *es, void *arg)
static void dco_remove_peer(struct context *c)
static int open_tun_dco(struct tuntap *tt, openvpn_net_ctx_t *ctx, const char *dev)
static int dco_get_peer_stats_multi(dco_context_t *dco, struct multi_context *m, const bool raise_sigusr1_on_err)
static void dco_install_iroute(struct multi_context *m, struct multi_instance *mi, struct mroute_addr *addr)
static bool dco_check_startup_option(int msglevel, const struct options *o)
static int dco_p2p_add_new_peer(struct context *c)
static bool ovpn_dco_init(int mode, dco_context_t *dco, const char *dev_node)
static bool dco_check_option(int msglevel, const struct options *o)
static bool dco_update_keys(dco_context_t *dco, struct tls_multi *multi)
static const char * dco_version_string(struct gc_arena *gc)
static int dco_multi_add_new_peer(struct multi_context *m, struct multi_instance *mi)
static void close_tun_dco(struct tuntap *tt, openvpn_net_ctx_t *ctx)
static void dco_delete_iroutes(struct multi_context *m, struct multi_instance *mi)
static int dco_get_peer_stats(struct context *c, const bool raise_sigusr1_on_err)
static bool dco_check_pull_options(int msglevel, const struct options *o)
static int init_key_dco_bi(struct tls_multi *multi, struct key_state *ks, const struct key2 *key2, int key_direction, const char *ciphername, bool server)
Contains all state information for one tunnel.
Garbage collection arena used to keep track of dynamically allocated memory.
Container for bidirectional cipher and HMAC key material.
Security parameter state of one TLS and data channel key session.
Main OpenVPN server state structure.
Server-mode state structure for one single VPN tunnel.
Security parameter state for a single VPN tunnel.