FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
dhcp.api File Reference

Go to the source code of this file.

Data Structures

struct  vl_api_dhcp_plugin_get_version_t
 Get the plugin version. More...
 
struct  vl_api_dhcp_plugin_get_version_reply_t
 Reply to get the plugin version. More...
 
struct  vl_api_dhcp_plugin_control_ping_t
 Control ping from client to api server request. More...
 
struct  vl_api_dhcp_plugin_control_ping_reply_t
 Control ping from the client to the server response. More...
 
struct  vl_api_dhcp_proxy_config_t
 DHCP Proxy config add / del request. More...
 
struct  vl_api_dhcp_proxy_set_vss_t
 DHCP Proxy set / unset vss request. More...
 
struct  vl_api_dhcp_client_config_t
 DHCP Client config add / del request. More...
 
struct  vl_api_dhcp_compl_event_t
 Tell client about a DHCP completion event. More...
 
struct  vl_api_dhcp_client_dump_t
 Dump the DHCP client configurations. More...
 
struct  vl_api_dhcp_client_details_t
 DHCP Client details returned from dump. More...
 
struct  vl_api_dhcp_proxy_dump_t
 Dump DHCP proxy table. More...
 
struct  vl_api_dhcp_proxy_details_t
 Tell client about a DHCP completion event. More...
 
struct  vl_api_dhcp6_duid_ll_set_t
 Set DHCPv6 DUID-LL. More...
 
struct  vl_api_dhcp6_clients_enable_disable_t
 Enable/disable listening on DHCPv6 client port. More...
 
struct  vl_api_dhcp6_send_client_message_t
 Send DHCPv6 client message of specified type. More...
 
struct  vl_api_dhcp6_pd_send_client_message_t
 Send DHCPv6 PD client message of specified type. More...
 
struct  vl_api_want_dhcp6_reply_events_t
 Register for DHCPv6 reply events. More...
 
struct  vl_api_want_dhcp6_pd_reply_events_t
 Register for DHCPv6 PD reply events. More...
 
struct  vl_api_dhcp6_reply_event_t
 Tell client about a DHCPv6 server reply event. More...
 
struct  vl_api_dhcp6_pd_reply_event_t
 Tell client about a DHCPv6 PD server reply event. More...
 

Enumerations

enum  vss_type { VSS_TYPE_API_ASCII = 0, VSS_TYPE_API_VPN_ID = 1, VSS_TYPE_API_INVALID = 123, VSS_TYPE_API_DEFAULT = 255 }
 
enum  dhcp_client_state { DHCP_CLIENT_STATE_API_DISCOVER, DHCP_CLIENT_STATE_API_REQUEST, DHCP_CLIENT_STATE_API_BOUND }
 
enum  dhcpv6_msg_type {
  DHCPV6_MSG_API_SOLICIT = 1, DHCPV6_MSG_API_ADVERTISE = 2, DHCPV6_MSG_API_REQUEST = 3, DHCPV6_MSG_API_CONFIRM = 4,
  DHCPV6_MSG_API_RENEW = 5, DHCPV6_MSG_API_REBIND = 6, DHCPV6_MSG_API_REPLY = 7, DHCPV6_MSG_API_RELEASE = 8,
  DHCPV6_MSG_API_DECLINE = 9, DHCPV6_MSG_API_RECONFIGURE = 10, DHCPV6_MSG_API_INFORMATION_REQUEST = 11, DHCPV6_MSG_API_RELAY_FORW = 12,
  DHCPV6_MSG_API_RELAY_REPL = 13
}
 

Variables

option version = "3.0.1"
 
import vnet interface_types api
 
typedef dhcp_client
 DHCP Client config data. More...
 
string hostname [64]
 
u8 id [64]
 
bool want_dhcp_event
 
bool set_broadcast_flag
 
vl_api_ip_dscp_t dscp
 
u32 pid
 
typedef domain_server
 Struct representing domain server. More...
 
typedef dhcp_lease
 Data learned by the client during the DHCP process. More...
 
vl_api_dhcp_client_state_t state
 
bool is_ipv6
 
u8 mask_width
 
vl_api_address_t host_address
 
vl_api_address_t router_address
 
vl_api_mac_address_t host_mac
 
u8 count
 
 service
 
typedef dhcp_server
 
typedef dhcp6_address_info
 Struct representing DHCPv6 address. More...
 
u32 valid_time
 
u32 preferred_time
 
typedef dhcp6_pd_prefix_info
 Struct representing DHCPv6 PD prefix. More...
 

Enumeration Type Documentation

◆ dhcp_client_state

Enumerator
DHCP_CLIENT_STATE_API_DISCOVER 
DHCP_CLIENT_STATE_API_REQUEST 
DHCP_CLIENT_STATE_API_BOUND 

Definition at line 29 of file dhcp.api.

◆ dhcpv6_msg_type

Enumerator
DHCPV6_MSG_API_SOLICIT 
DHCPV6_MSG_API_ADVERTISE 
DHCPV6_MSG_API_REQUEST 
DHCPV6_MSG_API_CONFIRM 
DHCPV6_MSG_API_RENEW 
DHCPV6_MSG_API_REBIND 
DHCPV6_MSG_API_REPLY 
DHCPV6_MSG_API_RELEASE 
DHCPV6_MSG_API_DECLINE 
DHCPV6_MSG_API_RECONFIGURE 
DHCPV6_MSG_API_INFORMATION_REQUEST 
DHCPV6_MSG_API_RELAY_FORW 
DHCPV6_MSG_API_RELAY_REPL 

Definition at line 35 of file dhcp.api.

◆ vss_type

enum vss_type
Enumerator
VSS_TYPE_API_ASCII 
VSS_TYPE_API_VPN_ID 
VSS_TYPE_API_INVALID 
VSS_TYPE_API_DEFAULT 

Definition at line 22 of file dhcp.api.

Variable Documentation

◆ api

import vnet ethernet ethernet_types api

Definition at line 18 of file dhcp.api.

◆ count

int count

Definition at line 208 of file dhcp.api.

◆ dhcp6_address_info

typedef dhcp6_address_info
Initial value:
{
vl_api_ip6_address_t address

Struct representing DHCPv6 address.

Template Parameters
address- address
valid_time- valid lifetime
preferred_time- preferred lifetime

Definition at line 310 of file dhcp.api.

◆ dhcp6_pd_prefix_info

typedef dhcp6_pd_prefix_info
Initial value:
{
vl_api_ip6_prefix_t prefix

Struct representing DHCPv6 PD prefix.

Template Parameters
prefix- prefix
valid_time- valid lifetime
preferred_time- preferred lifetime

Definition at line 322 of file dhcp.api.

◆ dhcp_client

typedef dhcp_client
Initial value:
{
vl_api_interface_index_t sw_if_index

DHCP Client config data.

Template Parameters
sw_if_index- index of the interface for DHCP client
hostname- hostname
id- Client ID - option 61
want_dhcp_event- DHCP event sent to the sender via dhcp_compl_event API message if non-zero
set_broadcast_flag- in the DHCP Discover to control how the resulting OFFER is addressed.
dscp- DSCP value set in IP packets sent by the client
pid- sender's pid

Definition at line 157 of file dhcp.api.

◆ dhcp_lease

typedef dhcp_lease
Initial value:
{
vl_api_interface_index_t sw_if_index

Data learned by the client during the DHCP process.

Template Parameters
sw_if_index- the interface on which the client is configured
state- the state of the lease
is_ipv6- if non-zero the address is ipv6, else ipv4
mask_width- The length of the subnet mask assigned
host_address- Host IP address
router_address- Router IP address
host_mac- Host MAC address

Definition at line 199 of file dhcp.api.

◆ dhcp_server

vl_api_address_t dhcp_server
Initial value:
{
u32 server_vrf_id

Definition at line 259 of file dhcp.api.

◆ domain_server

vl_api_domain_server_t domain_server
Initial value:
{
vl_api_address_t address

Struct representing domain server.

Template Parameters
address- IP address

Definition at line 185 of file dhcp.api.

◆ dscp

vl_api_ip_dscp_t dscp

Definition at line 163 of file dhcp.api.

◆ host_address

vl_api_address_t host_address

Definition at line 205 of file dhcp.api.

◆ host_mac

vl_api_mac_address_t host_mac

Definition at line 207 of file dhcp.api.

◆ hostname

string hostname

Definition at line 159 of file dhcp.api.

◆ id

u8 id[64]

Definition at line 160 of file dhcp.api.

◆ is_ipv6

bool is_ipv6

Definition at line 202 of file dhcp.api.

◆ mask_width

u8 mask_width

Definition at line 204 of file dhcp.api.

◆ pid

u32 pid

Definition at line 164 of file dhcp.api.

◆ preferred_time

u32 preferred_time

Definition at line 313 of file dhcp.api.

◆ router_address

vl_api_address_t router_address

Definition at line 206 of file dhcp.api.

◆ service

service
Initial value:
{
rpc dhcp_client_config returns dhcp_client_config_reply events dhcp_compl_event

Definition at line 224 of file dhcp.api.

◆ set_broadcast_flag

bool set_broadcast_flag

Definition at line 162 of file dhcp.api.

◆ state

vl_api_dhcp_client_state_t state

Definition at line 201 of file dhcp.api.

◆ valid_time

u32 valid_time

Definition at line 312 of file dhcp.api.

◆ version

option version = "3.0.1"

Definition at line 16 of file dhcp.api.

◆ want_dhcp_event

bool want_dhcp_event

Definition at line 161 of file dhcp.api.

events
static perfmon_event_t events[]
Definition: core.c:21
address
manual_print typedef address
Definition: ip_types.api:96
u32
unsigned int u32
Definition: types.h:88
sw_if_index
vl_api_interface_index_t sw_if_index
Definition: wireguard.api:34
dhcp_client_config
int dhcp_client_config(u32 is_add, u32 client_index, vlib_main_t *vm, u32 sw_if_index, u8 *hostname, u8 *client_id, dhcp_event_cb_t event_callback, u8 set_broadcast_flag, ip_dscp_t dscp, u32 pid)
Add/Delete DHCP clients.
Definition: client.c:1031
prefix
vl_api_prefix_t prefix
Definition: ip.api:146