wg_softc
wg_destroy_session(struct wg_softc *wg, struct wg_session *wgs)
wg_get_session_index(struct wg_softc *wg, struct wg_session *wgs)
wg_put_session_index(struct wg_softc *wg, struct wg_session *wgs)
wg_fill_msg_init(struct wg_softc *wg, struct wg_peer *wgp,
wg_initiator_priority(struct wg_softc *wg, struct wg_peer *wgp)
wg_handle_msg_init(struct wg_softc *wg, const struct wg_msg_init *wgmi,
wg_get_so_by_af(struct wg_softc *wg, const int af)
wg_send_cookie(struct wg_softc *wg, const struct sockaddr *src, struct mbuf *m)
wg_send_handshake_msg_init(struct wg_softc *wg, struct wg_peer *wgp)
wg_fill_msg_resp(struct wg_softc *wg, struct wg_peer *wgp,
wg_swap_sessions(struct wg_softc *wg, struct wg_peer *wgp)
wg_handle_msg_resp(struct wg_softc *wg, const struct wg_msg_resp *wgmr,
wg_send_handshake_msg_resp(struct wg_softc *wg, struct wg_peer *wgp,
wg_lookup_peer_by_pubkey(struct wg_softc *wg,
wg_bake_cookie(struct wg_softc *wg,
wg_fill_msg_cookie(struct wg_softc *wg,
wg_send_cookie_msg(struct wg_softc *wg,
wg_is_underload(struct wg_softc *wg, int msgtype)
wg_lookup_session_by_index(struct wg_softc *wg, const uint32_t index,
wg_validate_route(struct wg_softc *wg, struct wg_peer *wgp_expected,
wg_handle_msg_data(struct wg_softc *wg, struct mbuf *m,
wg_handle_msg_cookie(struct wg_softc *wg, const struct wg_msg_cookie *wgmc)
wg_validate_msg_header(struct wg_softc *wg, struct mbuf *m)
wg_handle_packet(struct wg_softc *wg, struct mbuf *m,
wg_receive_packets(struct wg_softc *wg, const int af)
wg_task_send_init_message(struct wg_softc *wg, struct wg_peer *wgp)
wg_task_retry_handshake(struct wg_softc *wg, struct wg_peer *wgp)
wg_task_establish_session(struct wg_softc *wg, struct wg_peer *wgp)
wg_task_endpoint_changed(struct wg_softc *wg, struct wg_peer *wgp)
wg_task_send_keepalive_message(struct wg_softc *wg, struct wg_peer *wgp)
wg_task_destroy_prev_session(struct wg_softc *wg, struct wg_peer *wgp)
struct wg_softc *wg = wgp->wgp_sc;
struct wg_softc *wg = container_of(job, struct wg_softc, wg_job);
wg_bind_port(struct wg_softc *wg, const uint16_t port)
struct wg_softc *wg = cookie;
struct wg_softc *wg = arg;
wg_socreate(struct wg_softc *wg, int af, struct socket **sop)
wg_alloc_peer(struct wg_softc *wg)
struct wg_softc *wg = wgp->wgp_sc;
wg_destroy_all_peers(struct wg_softc *wg)
wg_destroy_peer_name(struct wg_softc *wg, const char *name)
wg_if_attach(struct wg_softc *wg)
wg_if_detach(struct wg_softc *wg)
struct wg_softc *wg;
struct wg_softc *wg = container_of(ifp, struct wg_softc, wg_if);
wg_pick_peer_by_sa(struct wg_softc *wg, const struct sockaddr *sa,
wg_fill_msg_data(struct wg_softc *wg, struct wg_peer *wgp,
struct wg_softc *wg = ifp->if_softc;
struct wg_softc *wg = wgp->wgp_sc;
wg_rtable_add_route(struct wg_softc *wg, struct wg_allowedip *wga)
wg_handle_prop_peer(struct wg_softc *wg, prop_dictionary_t peer,
wg_ioctl_set_private_key(struct wg_softc *wg, struct ifdrv *ifd)
wg_ioctl_set_listen_port(struct wg_softc *wg, struct ifdrv *ifd)
wg_ioctl_add_peer(struct wg_softc *wg, struct ifdrv *ifd)
wg_ioctl_delete_peer(struct wg_softc *wg, struct ifdrv *ifd)
wg_is_authorized(struct wg_softc *wg, u_long cmd)
wg_ioctl_get(struct wg_softc *wg, struct ifdrv *ifd)
struct wg_softc *wg = ifp->if_softc;
wg_user_mode(struct wg_softc *wg)
wg_ioctl_linkstr(struct wg_softc *wg, struct ifdrv *ifd)
struct wg_softc *wg = wgp->wgp_sc;
wg_send_cookie_user(struct wg_softc *wg, const struct sockaddr *src,
struct wg_softc *wg = ifp->if_softc;
wg_bind_port_user(struct wg_softc *wg, const uint16_t port)
rumpkern_wg_recv_user(struct wg_softc *wg, const struct sockaddr *dst,
rumpkern_wg_recv_peer(struct wg_softc *wg, const struct sockaddr *src,
struct wg_softc;
struct wg_softc *wgp_sc;
LIST_ENTRY(wg_softc) wg_list;
static void wg_bake_cookie(struct wg_softc *,
static void wg_send_cookie_msg(struct wg_softc *,
static void wg_send_handshake_msg_resp(struct wg_softc *, struct wg_peer *,
wg_pick_peer_by_sa(struct wg_softc *, const struct sockaddr *,
wg_lookup_peer_by_pubkey(struct wg_softc *,
wg_lookup_session_by_index(struct wg_softc *,
static bool wg_is_underload(struct wg_softc *, int);
static int wg_send_cookie(struct wg_softc *, const struct sockaddr *,
static int wg_bind_port(struct wg_softc *, const uint16_t);
int (*send_cookie)(struct wg_softc *, const struct sockaddr *,
int (*bind_port)(struct wg_softc *, const uint16_t);
static bool wg_user_mode(struct wg_softc *);
static int wg_ioctl_linkstr(struct wg_softc *, struct ifdrv *);
static int wg_send_cookie_user(struct wg_softc *, const struct sockaddr *,
static int wg_bind_port_user(struct wg_softc *, const uint16_t);
wg_rnh(struct wg_softc *wg, const int family)
rumpuser_wg_create(const char *tun_name, struct wg_softc *wg,
struct wg_softc *wgu_sc;
struct wg_softc;
int rumpuser_wg_create(const char *tun_name, struct wg_softc *,
void rumpkern_wg_recv_user(struct wg_softc *, const struct sockaddr *,
void rumpkern_wg_recv_peer(struct wg_softc *, const struct sockaddr *,