embeddable-wg-library: add named wg_endpoint union
Define wg_endpoint as a named union to allow users of the emeddable library to use the type in function arguments, variables etc. Signed-off-by: Mikael Magnusson <mikma@users.sourceforge.net> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
parent
1ee37b8e48
commit
b906ecb614
|
@ -40,17 +40,19 @@ enum wg_peer_flags {
|
||||||
WGPEER_HAS_PERSISTENT_KEEPALIVE_INTERVAL = 1U << 4
|
WGPEER_HAS_PERSISTENT_KEEPALIVE_INTERVAL = 1U << 4
|
||||||
};
|
};
|
||||||
|
|
||||||
|
typedef union wg_endpoint {
|
||||||
|
struct sockaddr addr;
|
||||||
|
struct sockaddr_in addr4;
|
||||||
|
struct sockaddr_in6 addr6;
|
||||||
|
} wg_endpoint;
|
||||||
|
|
||||||
typedef struct wg_peer {
|
typedef struct wg_peer {
|
||||||
enum wg_peer_flags flags;
|
enum wg_peer_flags flags;
|
||||||
|
|
||||||
wg_key public_key;
|
wg_key public_key;
|
||||||
wg_key preshared_key;
|
wg_key preshared_key;
|
||||||
|
|
||||||
union {
|
wg_endpoint endpoint;
|
||||||
struct sockaddr addr;
|
|
||||||
struct sockaddr_in addr4;
|
|
||||||
struct sockaddr_in6 addr6;
|
|
||||||
} endpoint;
|
|
||||||
|
|
||||||
struct timespec64 last_handshake_time;
|
struct timespec64 last_handshake_time;
|
||||||
uint64_t rx_bytes, tx_bytes;
|
uint64_t rx_bytes, tx_bytes;
|
||||||
|
|
Loading…
Reference in New Issue