FD.io VPP  v17.10-9-gd594711
Vector Packet Processing
pppoe.h File Reference
+ Include dependency graph for pppoe.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  pppoe_header_t
 
struct  pppoe_session_t
 
struct  pppoe_entry_key_t
 
struct  pppoe_entry_result_t
 
struct  pppoe_main_t
 
struct  vnet_pppoe_add_del_session_args_t
 
struct  vnet_pppoe_add_del_tap_args_t
 

Macros

#define PPPOE_VER_TYPE   0x11
 
#define PPPOE_PADS   0x65
 
#define foreach_pppoe_input_next
 
#define pppoe_error(n, s)   PPPOE_ERROR_##n,
 
#define MTU   1500
 
#define MTU_BUFFERS   ((MTU + VLIB_BUFFER_DATA_SIZE - 1) / VLIB_BUFFER_DATA_SIZE)
 
#define NUM_BUFFERS_TO_ALLOC   32
 
#define PPPOE_NUM_BUCKETS   (128 * 1024)
 
#define PPPOE_MEMORY_SIZE   (16<<20)
 

Enumerations

enum  pppoe_input_next_t { PPPOE_INPUT_N_NEXT }
 
enum  pppoe_input_error_t { PPPOE_N_ERROR }
 

Functions

int vnet_pppoe_add_del_session (vnet_pppoe_add_del_session_args_t *a, u32 *sw_if_indexp)
 
static u64 pppoe_make_key (u8 *mac_address, u16 session_id)
 
static_always_inline void pppoe_lookup_1 (BVT(clib_bihash)*session_table, pppoe_entry_key_t *cached_key, pppoe_entry_result_t *cached_result, u8 *mac0, u16 session_id0, pppoe_entry_key_t *key0, u32 *bucket0, pppoe_entry_result_t *result0)
 
static_always_inline void pppoe_update_1 (BVT(clib_bihash)*session_table, u8 *mac0, u16 session_id0, pppoe_entry_key_t *key0, u32 *bucket0, pppoe_entry_result_t *result0)
 

Variables

pppoe_main_t pppoe_main
 
vlib_node_registration_t pppoe_input_node
 (constructor) VLIB_REGISTER_NODE (pppoe_input_node) More...
 
vlib_node_registration_t pppoe_tap_dispatch_node
 (constructor) VLIB_REGISTER_NODE (pppoe_tap_dispatch_node) More...
 

Macro Definition Documentation

#define foreach_pppoe_input_next
Value:
_(DROP, "error-drop") \
_(IP4_INPUT, "ip4-input") \
_(IP6_INPUT, "ip6-input" ) \
_(CP_INPUT, "pppoe-tap-dispatch" ) \
DROP
Definition: error.def:41

Definition at line 72 of file pppoe.h.

#define MTU   1500

Definition at line 95 of file pppoe.h.

#define MTU_BUFFERS   ((MTU + VLIB_BUFFER_DATA_SIZE - 1) / VLIB_BUFFER_DATA_SIZE)

Definition at line 96 of file pppoe.h.

#define NUM_BUFFERS_TO_ALLOC   32

Definition at line 97 of file pppoe.h.

#define pppoe_error (   n,
 
)    PPPOE_ERROR_##n,

Definition at line 88 of file pppoe.h.

#define PPPOE_MEMORY_SIZE   (16<<20)

Definition at line 103 of file pppoe.h.

#define PPPOE_NUM_BUCKETS   (128 * 1024)

Definition at line 102 of file pppoe.h.

#define PPPOE_PADS   0x65

Definition at line 47 of file pppoe.h.

#define PPPOE_VER_TYPE   0x11

Definition at line 46 of file pppoe.h.

Enumeration Type Documentation

Enumerator
PPPOE_N_ERROR 

Definition at line 86 of file pppoe.h.

Enumerator
PPPOE_INPUT_N_NEXT 

Definition at line 78 of file pppoe.h.

Function Documentation

static_always_inline void pppoe_lookup_1 ( BVT(clib_bihash)*  session_table,
pppoe_entry_key_t cached_key,
pppoe_entry_result_t cached_result,
u8 mac0,
u16  session_id0,
pppoe_entry_key_t key0,
u32 bucket0,
pppoe_entry_result_t result0 
)

Definition at line 230 of file pppoe.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u64 pppoe_make_key ( u8 mac_address,
u16  session_id 
)
inlinestatic

Definition at line 202 of file pppoe.h.

+ Here is the caller graph for this function:

static_always_inline void pppoe_update_1 ( BVT(clib_bihash)*  session_table,
u8 mac0,
u16  session_id0,
pppoe_entry_key_t key0,
u32 bucket0,
pppoe_entry_result_t result0 
)

Definition at line 264 of file pppoe.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int vnet_pppoe_add_del_session ( vnet_pppoe_add_del_session_args_t a,
u32 sw_if_indexp 
)

Definition at line 248 of file pppoe.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Variable Documentation

vlib_node_registration_t pppoe_input_node

(constructor) VLIB_REGISTER_NODE (pppoe_input_node)

Definition at line 401 of file pppoe_decap.c.

pppoe_main_t pppoe_main

Definition at line 39 of file jvpp_pppoe.h.

vlib_node_registration_t pppoe_tap_dispatch_node
Initial value:
= {
.function = pppoe_tap_dispatch,
.name = "pppoe-tap-dispatch",
.vector_size = sizeof (u32),
.n_next_nodes = PPPOE_TAP_N_NEXT,
.next_nodes = {
#define _(s,n)
},
.format_trace = format_pppoe_tap_trace,
}
static uword pppoe_tap_dispatch(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame)
static u8 * format_pppoe_tap_trace(u8 *s, va_list *args)
#define foreach_pppoe_tap_next
unsigned int u32
Definition: types.h:88

(constructor) VLIB_REGISTER_NODE (pppoe_tap_dispatch_node)

Definition at line 280 of file pppoe_tap_node.c.