FD.io VPP  v19.08.3-2-gbabecb413
Vector Packet Processing
mactime.h File Reference
+ Include dependency graph for mactime.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  mactime_device_t
 
struct  mactime_key_t
 
struct  mactime_main_t
 

Macros

#define MACTIME_RANGE_TYPE_DROP   0
 
#define MACTIME_RANGE_TYPE_ALLOW   1
 
#define MACTIME_DEVICE_FLAG_STATIC_DROP   (1<<0)
 Always drop packets from this device. More...
 
#define MACTIME_DEVICE_FLAG_STATIC_ALLOW   (1<<1)
 
#define MACTIME_DEVICE_FLAG_DYNAMIC_DROP   (1<<2)
 
#define MACTIME_DEVICE_FLAG_DYNAMIC_ALLOW   (1<<3)
 
#define MACTIME_DEVICE_FLAG_DYNAMIC_ALLOW_QUOTA   (1<<4)
 
#define MACTIME_DEVICE_FLAG_DROP_UDP_10001   (1<<5)
 
#define MACTIME_NUM_BUCKETS   128
 
#define MACTIME_MEMORY_SIZE   (256<<10)
 
#define MACTIME_EVENT1   1
 
#define MACTIME_EVENT2   2
 
#define MACTIME_EVENT_PERIODIC_ENABLE_DISABLE   3
 

Functions

void mactime_send_create_entry_message (u8 *mac_address)
 Create a lookup table entry for the indicated mac address. More...
 

Variables

mactime_main_t mactime_main
 
vlib_node_registration_t mactime_node
 (constructor) VLIB_REGISTER_NODE (mactime_node) More...
 
vlib_node_registration_t mactime_tx_node
 (constructor) VLIB_REGISTER_NODE (mactime_tx_node) More...
 

Macro Definition Documentation

◆ MACTIME_DEVICE_FLAG_DROP_UDP_10001

#define MACTIME_DEVICE_FLAG_DROP_UDP_10001   (1<<5)

Definition at line 51 of file mactime.h.

◆ MACTIME_DEVICE_FLAG_DYNAMIC_ALLOW

#define MACTIME_DEVICE_FLAG_DYNAMIC_ALLOW   (1<<3)

Definition at line 49 of file mactime.h.

◆ MACTIME_DEVICE_FLAG_DYNAMIC_ALLOW_QUOTA

#define MACTIME_DEVICE_FLAG_DYNAMIC_ALLOW_QUOTA   (1<<4)

Definition at line 50 of file mactime.h.

◆ MACTIME_DEVICE_FLAG_DYNAMIC_DROP

#define MACTIME_DEVICE_FLAG_DYNAMIC_DROP   (1<<2)

Definition at line 48 of file mactime.h.

◆ MACTIME_DEVICE_FLAG_STATIC_ALLOW

#define MACTIME_DEVICE_FLAG_STATIC_ALLOW   (1<<1)

Definition at line 47 of file mactime.h.

◆ MACTIME_DEVICE_FLAG_STATIC_DROP

#define MACTIME_DEVICE_FLAG_STATIC_DROP   (1<<0)

Always drop packets from this device.

Definition at line 46 of file mactime.h.

◆ MACTIME_EVENT1

#define MACTIME_EVENT1   1

Definition at line 112 of file mactime.h.

◆ MACTIME_EVENT2

#define MACTIME_EVENT2   2

Definition at line 113 of file mactime.h.

◆ MACTIME_EVENT_PERIODIC_ENABLE_DISABLE

#define MACTIME_EVENT_PERIODIC_ENABLE_DISABLE   3

Definition at line 114 of file mactime.h.

◆ MACTIME_MEMORY_SIZE

#define MACTIME_MEMORY_SIZE   (256<<10)

Definition at line 102 of file mactime.h.

◆ MACTIME_NUM_BUCKETS

#define MACTIME_NUM_BUCKETS   128

Definition at line 101 of file mactime.h.

◆ MACTIME_RANGE_TYPE_ALLOW

#define MACTIME_RANGE_TYPE_ALLOW   1

Definition at line 33 of file mactime.h.

◆ MACTIME_RANGE_TYPE_DROP

#define MACTIME_RANGE_TYPE_DROP   0

Definition at line 32 of file mactime.h.

Function Documentation

◆ mactime_send_create_entry_message()

void mactime_send_create_entry_message ( u8 mac_address)

Create a lookup table entry for the indicated mac address.

Definition at line 188 of file mactime.c.

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

Variable Documentation

◆ mactime_main

mactime_main_t mactime_main

Definition at line 53 of file mactime.c.

◆ mactime_node

Initial value:
=
{
.function = mactime_node_fn,
.name = "mactime",
.vector_size = sizeof (u32),
.format_trace = format_mactime_trace,
.error_strings = mactime_error_strings,
.n_next_nodes = MACTIME_N_NEXT,
.next_nodes =
{
[MACTIME_NEXT_ETHERNET_INPUT] = "ethernet-input",
[MACTIME_NEXT_DROP] = "error-drop",
},
}
static char * mactime_error_strings[]
Definition: node.c:50
unsigned int u32
Definition: types.h:88
vl_api_fib_path_type_t type
Definition: fib_types.api:123
#define ARRAY_LEN(x)
Definition: clib.h:63
static u8 * format_mactime_trace(u8 *s, va_list *args)
Definition: node.c:65
static uword mactime_node_fn(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
Definition: node.c:347

(constructor) VLIB_REGISTER_NODE (mactime_node)

Definition at line 354 of file node.c.

◆ mactime_tx_node

vlib_node_registration_t mactime_tx_node
Initial value:
=
{
.function = mactime_tx_node_fn,
.name = "mactime-tx",
.vector_size = sizeof (u32),
.format_trace = format_mactime_trace,
.error_strings = mactime_error_strings,
.n_next_nodes = MACTIME_N_NEXT,
.next_nodes =
{
[MACTIME_NEXT_DROP] = "error-drop",
[MACTIME_NEXT_ETHERNET_INPUT] = "ethernet-input",
},
}
static char * mactime_error_strings[]
Definition: node.c:50
unsigned int u32
Definition: types.h:88
vl_api_fib_path_type_t type
Definition: fib_types.api:123
static uword mactime_tx_node_fn(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
Definition: node.c:377
#define ARRAY_LEN(x)
Definition: clib.h:63
static u8 * format_mactime_trace(u8 *s, va_list *args)
Definition: node.c:65

(constructor) VLIB_REGISTER_NODE (mactime_tx_node)

Definition at line 384 of file node.c.