FD.io VPP  v21.01.1
Vector Packet Processing
dhcp_api.c File Reference
+ Include dependency graph for dhcp_api.c:

Go to the source code of this file.

Data Structures

struct  dhcp_client_send_walk_ctx_t_
 

Macros

#define REPLY_MSG_ID_BASE   dhcp_base_msg_id
 
#define DHCP_PLUGIN_VERSION_MAJOR   1
 
#define DHCP_PLUGIN_VERSION_MINOR   0
 

Typedefs

typedef struct dhcp_client_send_walk_ctx_t_ dhcp_client_send_walk_ctx_t
 

Functions

static void vl_api_dhcp_plugin_get_version_t_handler (vl_api_dhcp_plugin_get_version_t *mp)
 
static void vl_api_dhcp_plugin_control_ping_t_handler (vl_api_dhcp_plugin_control_ping_t *mp)
 
static void vl_api_dhcp6_duid_ll_set_t_handler (vl_api_dhcp6_duid_ll_set_t *mp)
 
static void vl_api_dhcp_proxy_set_vss_t_handler (vl_api_dhcp_proxy_set_vss_t *mp)
 
static void vl_api_dhcp_proxy_config_t_handler (vl_api_dhcp_proxy_config_t *mp)
 
static void vl_api_dhcp_proxy_dump_t_handler (vl_api_dhcp_proxy_dump_t *mp)
 
void dhcp_send_details (fib_protocol_t proto, void *opaque, u32 context, dhcp_proxy_t *proxy)
 Send the details of a proxy session to the API client during a dump. More...
 
static void dhcp_client_lease_encode (vl_api_dhcp_lease_t *lease, const dhcp_client_t *client)
 
static void dhcp_client_data_encode (vl_api_dhcp_client_t *vclient, const dhcp_client_t *client)
 
static void dhcp_compl_event_callback (u32 client_index, const dhcp_client_t *client)
 
static void vl_api_dhcp_client_config_t_handler (vl_api_dhcp_client_config_t *mp)
 
static int send_dhcp_client_entry (const dhcp_client_t *client, void *arg)
 
static void vl_api_dhcp_client_dump_t_handler (vl_api_dhcp_client_dump_t *mp)
 
static void vl_api_dhcp6_clients_enable_disable_t_handler (vl_api_dhcp6_clients_enable_disable_t *mp)
 
void vl_api_want_dhcp6_reply_events_t_handler (vl_api_want_dhcp6_reply_events_t *mp)
 
void vl_api_want_dhcp6_pd_reply_events_t_handler (vl_api_want_dhcp6_pd_reply_events_t *mp)
 
void vl_api_dhcp6_send_client_message_t_handler (vl_api_dhcp6_send_client_message_t *mp)
 
void vl_api_dhcp6_pd_send_client_message_t_handler (vl_api_dhcp6_pd_send_client_message_t *mp)
 
static clib_error_tcall_dhcp6_reply_event_callbacks (void *data, _vnet_dhcp6_reply_event_function_list_elt_t *elt)
 
static uword dhcp6_reply_process (vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f)
 
static clib_error_tcall_dhcp6_pd_reply_event_callbacks (void *data, _vnet_dhcp6_pd_reply_event_function_list_elt_t *elt)
 
static uword dhcp6_pd_reply_process (vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f)
 
static clib_error_tdhcp_api_hookup (vlib_main_t *vm)
 
 VLIB_API_INIT_FUNCTION (dhcp_api_hookup)
 
 VLIB_PLUGIN_REGISTER ()
 

Variables

static u32 dhcp_base_msg_id
 Base message ID fot the plugin. More...
 
vlib_node_registration_t dhcp6_reply_process_node
 (constructor) VLIB_REGISTER_NODE (dhcp6_reply_process_node) More...
 
vlib_node_registration_t dhcp6_pd_reply_process_node
 (constructor) VLIB_REGISTER_NODE (dhcp6_pd_reply_process_node) More...
 

Macro Definition Documentation

◆ DHCP_PLUGIN_VERSION_MAJOR

#define DHCP_PLUGIN_VERSION_MAJOR   1

Definition at line 46 of file dhcp_api.c.

◆ DHCP_PLUGIN_VERSION_MINOR

#define DHCP_PLUGIN_VERSION_MINOR   0

Definition at line 47 of file dhcp_api.c.

◆ REPLY_MSG_ID_BASE

#define REPLY_MSG_ID_BASE   dhcp_base_msg_id

Definition at line 42 of file dhcp_api.c.

Typedef Documentation

◆ dhcp_client_send_walk_ctx_t

Function Documentation

◆ call_dhcp6_pd_reply_event_callbacks()

static clib_error_t* call_dhcp6_pd_reply_event_callbacks ( void *  data,
_vnet_dhcp6_pd_reply_event_function_list_elt_t *  elt 
)
static

Definition at line 739 of file dhcp_api.c.

+ Here is the caller graph for this function:

◆ call_dhcp6_reply_event_callbacks()

static clib_error_t* call_dhcp6_reply_event_callbacks ( void *  data,
_vnet_dhcp6_reply_event_function_list_elt_t *  elt 
)
static

Definition at line 629 of file dhcp_api.c.

+ Here is the caller graph for this function:

◆ dhcp6_pd_reply_process()

static uword dhcp6_pd_reply_process ( vlib_main_t vm,
vlib_node_runtime_t rt,
vlib_frame_t f 
)
static

Definition at line 757 of file dhcp_api.c.

+ Here is the call graph for this function:

◆ dhcp6_reply_process()

static uword dhcp6_reply_process ( vlib_main_t vm,
vlib_node_runtime_t rt,
vlib_frame_t f 
)
static

Definition at line 647 of file dhcp_api.c.

+ Here is the call graph for this function:

◆ dhcp_api_hookup()

static clib_error_t* dhcp_api_hookup ( vlib_main_t vm)
static

Definition at line 860 of file dhcp_api.c.

+ Here is the call graph for this function:

◆ dhcp_client_data_encode()

static void dhcp_client_data_encode ( vl_api_dhcp_client_t *  vclient,
const dhcp_client_t client 
)
static

Definition at line 290 of file dhcp_api.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dhcp_client_lease_encode()

static void dhcp_client_lease_encode ( vl_api_dhcp_lease_t *  lease,
const dhcp_client_t client 
)
static

Definition at line 259 of file dhcp_api.c.

+ Here is the caller graph for this function:

◆ dhcp_compl_event_callback()

static void dhcp_compl_event_callback ( u32  client_index,
const dhcp_client_t client 
)
static

Definition at line 315 of file dhcp_api.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dhcp_send_details()

void dhcp_send_details ( fib_protocol_t  proto,
void *  opaque,
u32  context,
dhcp_proxy_t proxy 
)

Send the details of a proxy session to the API client during a dump.

Definition at line 176 of file dhcp_api.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ send_dhcp_client_entry()

static int send_dhcp_client_entry ( const dhcp_client_t client,
void *  arg 
)
static

Definition at line 371 of file dhcp_api.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vl_api_dhcp6_clients_enable_disable_t_handler()

static void vl_api_dhcp6_clients_enable_disable_t_handler ( vl_api_dhcp6_clients_enable_disable_t mp)
static

Definition at line 416 of file dhcp_api.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vl_api_dhcp6_duid_ll_set_t_handler()

static void vl_api_dhcp6_duid_ll_set_t_handler ( vl_api_dhcp6_duid_ll_set_t mp)
static

Definition at line 88 of file dhcp_api.c.

◆ vl_api_dhcp6_pd_send_client_message_t_handler()

void vl_api_dhcp6_pd_send_client_message_t_handler ( vl_api_dhcp6_pd_send_client_message_t mp)

Definition at line 575 of file dhcp_api.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vl_api_dhcp6_send_client_message_t_handler()

void vl_api_dhcp6_send_client_message_t_handler ( vl_api_dhcp6_send_client_message_t mp)

Definition at line 525 of file dhcp_api.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vl_api_dhcp_client_config_t_handler()

static void vl_api_dhcp_client_config_t_handler ( vl_api_dhcp_client_config_t mp)
static

Definition at line 335 of file dhcp_api.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vl_api_dhcp_client_dump_t_handler()

static void vl_api_dhcp_client_dump_t_handler ( vl_api_dhcp_client_dump_t mp)
static

Definition at line 399 of file dhcp_api.c.

+ Here is the call graph for this function:

◆ vl_api_dhcp_plugin_control_ping_t_handler()

static void vl_api_dhcp_plugin_control_ping_t_handler ( vl_api_dhcp_plugin_control_ping_t mp)
static

Definition at line 73 of file dhcp_api.c.

◆ vl_api_dhcp_plugin_get_version_t_handler()

static void vl_api_dhcp_plugin_get_version_t_handler ( vl_api_dhcp_plugin_get_version_t mp)
static

Definition at line 50 of file dhcp_api.c.

+ Here is the call graph for this function:

◆ vl_api_dhcp_proxy_config_t_handler()

static void vl_api_dhcp_proxy_config_t_handler ( vl_api_dhcp_proxy_config_t mp)
static

Definition at line 126 of file dhcp_api.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vl_api_dhcp_proxy_dump_t_handler()

static void vl_api_dhcp_proxy_dump_t_handler ( vl_api_dhcp_proxy_dump_t mp)
static

Definition at line 163 of file dhcp_api.c.

+ Here is the call graph for this function:

◆ vl_api_dhcp_proxy_set_vss_t_handler()

static void vl_api_dhcp_proxy_set_vss_t_handler ( vl_api_dhcp_proxy_set_vss_t mp)
static

Definition at line 107 of file dhcp_api.c.

+ Here is the call graph for this function:

◆ vl_api_want_dhcp6_pd_reply_events_t_handler()

void vl_api_want_dhcp6_pd_reply_events_t_handler ( vl_api_want_dhcp6_pd_reply_events_t mp)

Definition at line 476 of file dhcp_api.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vl_api_want_dhcp6_reply_events_t_handler()

void vl_api_want_dhcp6_reply_events_t_handler ( vl_api_want_dhcp6_reply_events_t mp)

Definition at line 428 of file dhcp_api.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ VLIB_API_INIT_FUNCTION()

VLIB_API_INIT_FUNCTION ( dhcp_api_hookup  )
+ Here is the caller graph for this function:

◆ VLIB_PLUGIN_REGISTER()

VLIB_PLUGIN_REGISTER ( )
+ Here is the caller graph for this function:

Variable Documentation

◆ dhcp6_pd_reply_process_node

vlib_node_registration_t dhcp6_pd_reply_process_node
Initial value:
= {
.name = "dhcp6-pd-reply-publisher-process",
}
static uword dhcp6_pd_reply_process(vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f)
Definition: dhcp_api.c:757

(constructor) VLIB_REGISTER_NODE (dhcp6_pd_reply_process_node)

Definition at line 843 of file dhcp_api.c.

◆ dhcp6_reply_process_node

vlib_node_registration_t dhcp6_reply_process_node
Initial value:
= {
.function = dhcp6_reply_process,
.name = "dhcp6-reply-publisher-process",
}
static uword dhcp6_reply_process(vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f)
Definition: dhcp_api.c:647

(constructor) VLIB_REGISTER_NODE (dhcp6_reply_process_node)

Definition at line 731 of file dhcp_api.c.

◆ dhcp_base_msg_id

u32 dhcp_base_msg_id
static

Base message ID fot the plugin.

Definition at line 41 of file dhcp_api.c.