FD.io VPP  v18.11-rc0-18-g2a3fb1a
Vector Packet Processing
arp_packet.h File Reference
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ethernet_arp_header_t
 
struct  ethernet_arp_ip4_entry_t
 

Macros

#define foreach_ethernet_arp_hardware_type
 
#define foreach_ethernet_arp_opcode
 

Typedefs

typedef enum ethernet_arp_entry_flags_t_ ethernet_arp_entry_flags_t
 

Enumerations

enum  ethernet_arp_hardware_type_t { foreach_ethernet_arp_hardware_type }
 
enum  ethernet_arp_opcode_t { ETHERNET_ARP_N_OPCODE }
 
enum  ip4_arp_next_t { IP4_ARP_NEXT_DROP, IP4_ARP_N_NEXT }
 
enum  ip4_arp_error_t {
  IP4_ARP_ERROR_DROP, IP4_ARP_ERROR_REQUEST_SENT, IP4_ARP_ERROR_NON_ARP_ADJ, IP4_ARP_ERROR_REPLICATE_DROP,
  IP4_ARP_ERROR_REPLICATE_FAIL, IP4_ARP_ERROR_NO_SOURCE_ADDRESS
}
 
enum  ethernet_arp_entry_flags_t_ { ETHERNET_ARP_IP4_ENTRY_FLAG_STATIC = (1 << 0), ETHERNET_ARP_IP4_ENTRY_FLAG_DYNAMIC = (1 << 1), ETHERNET_ARP_IP4_ENTRY_FLAG_NO_FIB_ENTRY = (1 << 2) }
 

Functions

typedef CLIB_PACKED (struct{u8 ethernet[6];ip4_address_t ip4;}) ethernet_arp_ip4_over_ethernet_address_t
 
ethernet_arp_ip4_entry_tip4_neighbors_pool (void)
 
ethernet_arp_ip4_entry_tip4_neighbor_entries (u32 sw_if_index)
 
u8format_ethernet_arp_ip4_entry (u8 *s, va_list *va)
 
void send_ip4_garp (vlib_main_t *vm, u32 sw_if_index)
 
void send_ip4_garp_w_addr (vlib_main_t *vm, const ip4_address_t *ip4_addr, u32 sw_if_index)
 

Macro Definition Documentation

#define foreach_ethernet_arp_hardware_type
Value:
_ (0, reserved) \
_ (1, ethernet) \
_ (2, experimental_ethernet) \
_ (3, ax_25) \
_ (4, proteon_pronet_token_ring) \
_ (5, chaos) \
_ (6, ieee_802) \
_ (7, arcnet) \
_ (8, hyperchannel) \
_ (9, lanstar) \
_ (10, autonet) \
_ (11, localtalk) \
_ (12, localnet) \
_ (13, ultra_link) \
_ (14, smds) \
_ (15, frame_relay) \
_ (16, atm) \
_ (17, hdlc) \
_ (18, fibre_channel) \
_ (19, atm19) \
_ (20, serial_line) \
_ (21, atm21) \
_ (22, mil_std_188_220) \
_ (23, metricom) \
_ (24, ieee_1394) \
_ (25, mapos) \
_ (26, twinaxial) \
_ (27, eui_64) \
_ (28, hiparp) \
_ (29, iso_7816_3) \
_ (30, arpsec) \
_ (31, ipsec_tunnel) \
_ (32, infiniband) \
_ (33, cai) \
_ (34, wiegand) \
_ (35, pure_ip) \
_ (36, hw_exp1) \
_ (256, hw_exp2)

Definition at line 21 of file arp_packet.h.

#define foreach_ethernet_arp_opcode
Value:
_ (reserved) \
_ (request) \
_ (reply) \
_ (reverse_request) \
_ (reverse_reply) \
_ (drarp_request) \
_ (drarp_reply) \
_ (drarp_error) \
_ (inarp_request) \
_ (inarp_reply) \
_ (arp_nak) \
_ (mars_request) \
_ (mars_multi) \
_ (mars_mserv) \
_ (mars_join) \
_ (mars_leave) \
_ (mars_nak) \
_ (mars_unserv) \
_ (mars_sjoin) \
_ (mars_sleave) \
_ (mars_grouplist_request) \
_ (mars_grouplist_reply) \
_ (mars_redirect_map) \
_ (mapos_unarp) \
_ (exp1) \
_ (exp2)
vhost_user_req_t request
Definition: vhost_user.h:109

Definition at line 61 of file arp_packet.h.

Typedef Documentation

Enumeration Type Documentation

Enumerator
ETHERNET_ARP_IP4_ENTRY_FLAG_STATIC 
ETHERNET_ARP_IP4_ENTRY_FLAG_DYNAMIC 
ETHERNET_ARP_IP4_ENTRY_FLAG_NO_FIB_ENTRY 

Definition at line 143 of file arp_packet.h.

Enumerator
foreach_ethernet_arp_hardware_type 

Definition at line 89 of file arp_packet.h.

Enumerator
ETHERNET_ARP_N_OPCODE 

Definition at line 96 of file arp_packet.h.

Enumerator
IP4_ARP_ERROR_DROP 
IP4_ARP_ERROR_REQUEST_SENT 
IP4_ARP_ERROR_NON_ARP_ADJ 
IP4_ARP_ERROR_REPLICATE_DROP 
IP4_ARP_ERROR_REPLICATE_FAIL 
IP4_ARP_ERROR_NO_SOURCE_ADDRESS 

Definition at line 110 of file arp_packet.h.

Enumerator
IP4_ARP_NEXT_DROP 
IP4_ARP_N_NEXT 

Definition at line 104 of file arp_packet.h.

Function Documentation

typedef CLIB_PACKED ( struct{u8 ethernet[6];ip4_address_t ip4;}  )
u8* format_ethernet_arp_ip4_entry ( u8 s,
va_list *  va 
)

Definition at line 249 of file arp.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ethernet_arp_ip4_entry_t* ip4_neighbor_entries ( u32  sw_if_index)

Definition at line 1379 of file arp.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ethernet_arp_ip4_entry_t* ip4_neighbors_pool ( void  )

Definition at line 1372 of file arp.c.

+ Here is the caller graph for this function:

void send_ip4_garp ( vlib_main_t vm,
u32  sw_if_index 
)

Definition at line 2568 of file arp.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void send_ip4_garp_w_addr ( vlib_main_t vm,
const ip4_address_t ip4_addr,
u32  sw_if_index 
)

Definition at line 2577 of file arp.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function: