FD.io VPP  v20.09-64-g4f7b92f0a
Vector Packet Processing
dhcp_proxy.c File Reference
+ Include dependency graph for dhcp_proxy.c:

Go to the source code of this file.

Data Structures

struct  dhcp4_proxy_dump_walk_ctx_t_
 

Typedefs

typedef struct dhcp4_proxy_dump_walk_ctx_t_ dhcp_proxy_dump_walk_cxt_t
 

Functions

static void dhcp_proxy_rx_table_lock (fib_protocol_t proto, u32 fib_index)
 
static void dhcp_proxy_rx_table_unlock (fib_protocol_t proto, u32 fib_index)
 
u32 dhcp_proxy_rx_table_get_table_id (fib_protocol_t proto, u32 fib_index)
 
void dhcp_proxy_walk (fib_protocol_t proto, dhcp_proxy_walk_fn_t fn, void *ctx)
 Walk/Visit each DHCP proxy server. More...
 
void dhcp_vss_walk (fib_protocol_t proto, dhcp_vss_walk_fn_t fn, void *ctx)
 Walk/Visit each DHCP proxy VSS. More...
 
static u32 dhcp_proxy_server_find (dhcp_proxy_t *proxy, fib_protocol_t proto, ip46_address_t *addr, u32 server_table_id)
 
int dhcp_proxy_server_del (fib_protocol_t proto, u32 rx_fib_index, ip46_address_t *addr, u32 server_table_id)
 Delete a DHCP proxy config. More...
 
int dhcp_proxy_server_add (fib_protocol_t proto, ip46_address_t *addr, ip46_address_t *src_address, u32 rx_fib_index, u32 server_table_id)
 Add a new DHCP proxy server configuration. More...
 
static int dhcp_proxy_dump_walk (dhcp_proxy_t *proxy, void *arg)
 
void dhcp_proxy_dump (fib_protocol_t proto, void *opaque, u32 context)
 Dump the proxy configs to the API. More...
 
int dhcp_vss_show_walk (dhcp_vss_t *vss, u32 rx_table_id, void *ctx)
 Show (on CLI) a VSS config during a show walk. More...
 
void update_vss (dhcp_vss_t *v, u8 vss_type, u8 *vpn_ascii_id, u32 oui, u32 vpn_index)
 
int dhcp_proxy_set_vss (fib_protocol_t proto, u32 tbl_id, u8 vss_type, u8 *vpn_ascii_id, u32 oui, u32 vpn_index, u8 is_del)
 Configure/set a new VSS info. More...
 

Variables

dhcp_proxy_main_t dhcp_proxy_main
 Shard 4/6 instance of DHCP main. More...
 

Typedef Documentation

◆ dhcp_proxy_dump_walk_cxt_t

Function Documentation

◆ dhcp_proxy_dump()

void dhcp_proxy_dump ( fib_protocol_t  proto,
void *  opaque,
u32  context 
)

Dump the proxy configs to the API.

Definition at line 248 of file dhcp_proxy.c.

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

◆ dhcp_proxy_dump_walk()

static int dhcp_proxy_dump_walk ( dhcp_proxy_t proxy,
void *  arg 
)
static

Definition at line 238 of file dhcp_proxy.c.

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

◆ dhcp_proxy_rx_table_get_table_id()

u32 dhcp_proxy_rx_table_get_table_id ( fib_protocol_t  proto,
u32  fib_index 
)

Definition at line 46 of file dhcp_proxy.c.

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

◆ dhcp_proxy_rx_table_lock()

static void dhcp_proxy_rx_table_lock ( fib_protocol_t  proto,
u32  fib_index 
)
static

Definition at line 28 of file dhcp_proxy.c.

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

◆ dhcp_proxy_rx_table_unlock()

static void dhcp_proxy_rx_table_unlock ( fib_protocol_t  proto,
u32  fib_index 
)
static

Definition at line 37 of file dhcp_proxy.c.

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

◆ dhcp_proxy_server_add()

int dhcp_proxy_server_add ( fib_protocol_t  proto,
ip46_address_t *  addr,
ip46_address_t *  src_address,
u32  rx_fib_iindex,
u32  server_table_id 
)

Add a new DHCP proxy server configuration.

Returns
1 is the config is new, 0 otherwise (implying a modify of an existing)

Definition at line 184 of file dhcp_proxy.c.

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

◆ dhcp_proxy_server_del()

int dhcp_proxy_server_del ( fib_protocol_t  proto,
u32  rx_fib_index,
ip46_address_t *  addr,
u32  server_table_id 
)

Delete a DHCP proxy config.

Returns
1 if the proxy is deleted, 0 otherwise

Definition at line 144 of file dhcp_proxy.c.

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

◆ dhcp_proxy_server_find()

static u32 dhcp_proxy_server_find ( dhcp_proxy_t proxy,
fib_protocol_t  proto,
ip46_address_t *  addr,
u32  server_table_id 
)
static

Definition at line 121 of file dhcp_proxy.c.

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

◆ dhcp_proxy_set_vss()

int dhcp_proxy_set_vss ( fib_protocol_t  proto,
u32  tbl_id,
u8  vss_type,
u8 vpn_ascii_id,
u32  oui,
u32  vpn_index,
u8  is_del 
)

Configure/set a new VSS info.

Definition at line 309 of file dhcp_proxy.c.

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

◆ dhcp_proxy_walk()

void dhcp_proxy_walk ( fib_protocol_t  proto,
dhcp_proxy_walk_fn_t  fn,
void *  ctx 
)

Walk/Visit each DHCP proxy server.

Definition at line 67 of file dhcp_proxy.c.

+ Here is the caller graph for this function:

◆ dhcp_vss_show_walk()

int dhcp_vss_show_walk ( dhcp_vss_t vss,
u32  rx_table_id,
void *  ctx 
)

Show (on CLI) a VSS config during a show walk.

Definition at line 259 of file dhcp_proxy.c.

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

◆ dhcp_vss_walk()

void dhcp_vss_walk ( fib_protocol_t  proto,
dhcp_vss_walk_fn_t  fn,
void *  ctx 
)

Walk/Visit each DHCP proxy VSS.

Definition at line 87 of file dhcp_proxy.c.

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

◆ update_vss()

void update_vss ( dhcp_vss_t v,
u8  vss_type,
u8 vpn_ascii_id,
u32  oui,
u32  vpn_index 
)

Definition at line 282 of file dhcp_proxy.c.

+ Here is the caller graph for this function:

Variable Documentation

◆ dhcp_proxy_main

dhcp_proxy_main_t dhcp_proxy_main

Shard 4/6 instance of DHCP main.

Definition at line 25 of file dhcp_proxy.c.