FD.io VPP  v20.09-64-g4f7b92f0a
Vector Packet Processing
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
wireguard.api File Reference

Go to the source code of this file.

Data Structures

struct  vl_api_wireguard_interface_create_t
 Create an Wireguard interface. More...
 
struct  vl_api_wireguard_interface_create_reply_t
 Add Wireguard interface interface response. More...
 
struct  vl_api_wireguard_interface_delete_t
 
struct  vl_api_wireguard_interface_dump_t
 
struct  vl_api_wireguard_interface_details_t
 
struct  vl_api_wireguard_peer_add_t
 Create new peer. More...
 
struct  vl_api_wireguard_peer_add_reply_t
 
struct  vl_api_wireguard_peer_remove_t
 Remove peer by public_key. More...
 
struct  vl_api_wireguard_peers_dump_t
 Dump all peers. More...
 
struct  vl_api_wireguard_peers_details_t
 Dump peers response. More...
 

Enumerations

enum  wireguard_peer_flags : u8 { WIREGUARD_PEER_STATUS_DEAD = 0x1 }
 

Variables

option version = "0.1.0"
 
import vnet interface_types api
 
typedef wireguard_interface
 Create wireguard interface. More...
 
vl_api_interface_index_t sw_if_index
 
u8 private_key [32]
 
u16 port
 
vl_api_address_t src_ip
 
typedef wireguard_peer
 Create new peer. More...
 
u16 persistent_keepalive
 
u32 table_id
 
vl_api_address_t endpoint
 
vl_api_wireguard_peer_flags_t flags
 
u8 n_allowed_ips
 
vl_api_prefix_t allowed_ips [n_allowed_ips]
 

Enumeration Type Documentation

◆ wireguard_peer_flags

Enumerator
WIREGUARD_PEER_STATUS_DEAD 

Definition at line 81 of file wireguard.api.

Variable Documentation

◆ allowed_ips

vl_api_prefix_t allowed_ips[n_allowed_ips]

Definition at line 105 of file wireguard.api.

◆ api

import vnet ip ip_types api

Definition at line 19 of file wireguard.api.

◆ endpoint

vl_api_address_t endpoint

Definition at line 101 of file wireguard.api.

◆ flags

vl_api_gbp_ext_itf_flags_t flags

Definition at line 103 of file wireguard.api.

◆ n_allowed_ips

u8 n_allowed_ips

Definition at line 104 of file wireguard.api.

◆ persistent_keepalive

u16 persistent_keepalive

Definition at line 99 of file wireguard.api.

◆ port

u16 port

Definition at line 35 of file wireguard.api.

◆ private_key

u8 private_key[32]

Definition at line 34 of file wireguard.api.

◆ src_ip

vl_api_address_t src_ip

Definition at line 36 of file wireguard.api.

◆ sw_if_index

vl_api_interface_index_t sw_if_index

Definition at line 33 of file wireguard.api.

◆ table_id

u32 table_id

Definition at line 100 of file wireguard.api.

◆ version

option version = "0.1.0"

Definition at line 17 of file wireguard.api.

◆ wireguard_interface

typedef wireguard_interface
Initial value:
{
u32 user_instance [default=0xffffffff]
unsigned int u32
Definition: types.h:88

Create wireguard interface.

Template Parameters
client_index- opaque cookie to identify the sender
context- sender context, to match reply w/ request
private_key- private key in binary format of this device
port- port of this device
src_ip- packet sent through this interface us this address as the IP source.

Definition at line 31 of file wireguard.api.

◆ wireguard_peer

typedef wireguard_peer
Initial value:
{
u8 public_key[32]
unsigned char u8
Definition: types.h:56

Create new peer.

Template Parameters
public_key- public key (in binary format) of destination peer
port- destination port
table_id- The IP table in which 'endpoint' is reachable
endpoint- destination ip
allowed_ip- allowed incoming ip tunnel
tun_sw_if_index- tunnel interface
persistent_keepalive- keepalive packet timeout

Definition at line 96 of file wireguard.api.