static_always_inline wg_if_t * wg_if_get(index_t wgii)
wg_if_t * wg_if_pool
Data-plane exposed functions.
u32 index_t
A Data-Path Object is an object that represents actions that are applied to packets are they are swit...
walk_rc_t(* wg_if_walk_cb_t)(index_t wgi, void *data)
index_t wg_if_peer_walk(wg_if_t *wgi, wg_if_peer_walk_cb_t fn, void *data)
index_t wg_if_find_by_sw_if_index(u32 sw_if_index)
int wg_if_create(u32 user_instance, const u8 private_key_64[NOISE_PUBLIC_KEY_LEN], u16 port, const ip_address_t *src_ip, u32 *sw_if_indexp)
enum walk_rc_t_ walk_rc_t
Walk return code.
#define static_always_inline
int wg_if_delete(u32 sw_if_index)
void wg_if_peer_remove(wg_if_t *wgi, index_t peeri)
#define NOISE_PUBLIC_KEY_LEN
index_t * wg_if_index_by_port
#define pool_elt_at_index(p, i)
Returns pointer to element at given index.
u8 * format_wg_if(u8 *s, va_list *va)
walk_rc_t(* wg_if_peer_walk_cb_t)(wg_if_t *wgi, index_t peeri, void *data)
void wg_if_walk(wg_if_walk_cb_t fn, void *data)
wg_index_table_t index_table
static_always_inline wg_if_t * wg_if_get_by_port(u16 port)
#define vec_len(v)
Number of elements in vector (rvalue-only, NULL tolerant)
#define INDEX_INVALID
Invalid index - used when no index is known blazoned capitals INVALID speak volumes where ~0 does not...
cookie_checker_t cookie_checker
void wg_if_peer_add(wg_if_t *wgi, index_t peeri)