FD.io VPP  v19.01.3-6-g70449b9b9
Vector Packet Processing
pg.h File Reference
+ Include dependency graph for pg.h:

Go to the source code of this file.

Data Structures

struct  pg_edit_group_t
 
struct  pg_buffer_index_t
 
struct  pg_stream_t
 
struct  pg_interface_t
 
struct  pg_node_t
 
struct  pg_main_t
 
struct  pg_capture_args_t
 
struct  pg_output_trace_t
 

Macros

#define PG_STREAM_FLAGS_IS_ENABLED   (1 << 0)
 
#define PG_STREAM_FLAGS_DISABLE_BUFFER_RECYCLE   (1 << 1)
 

Typedefs

typedef struct pg_edit_group_t pg_edit_group_t
 
typedef struct pg_stream_t pg_stream_t
 
typedef struct pg_main_t pg_main_t
 

Functions

static void pg_buffer_index_free (pg_buffer_index_t *bi)
 
static void pg_edit_group_free (pg_edit_group_t *g)
 
static void pg_stream_free (pg_stream_t *s)
 
static int pg_stream_is_enabled (pg_stream_t *s)
 
static pg_edit_group_tpg_stream_get_group (pg_stream_t *s, u32 group_index)
 
static void * pg_create_edit_group (pg_stream_t *s, int n_edit_bytes, int n_packet_bytes, u32 *group_index)
 
static void * pg_add_edits (pg_stream_t *s, int n_edit_bytes, int n_packet_bytes, u32 group_index)
 
static void * pg_get_edit_group (pg_stream_t *s, u32 group_index)
 
static uword pg_edit_group_n_bytes (pg_stream_t *s, u32 group_index)
 
static void pg_free_edit_group (pg_stream_t *s)
 
void pg_stream_del (pg_main_t *pg, uword index)
 
void pg_stream_add (pg_main_t *pg, pg_stream_t *s_init)
 
void pg_stream_enable_disable (pg_main_t *pg, pg_stream_t *s, int is_enable)
 
u32 pg_interface_add_or_get (pg_main_t *pg, uword stream_index)
 
static pg_node_tpg_get_node (uword node_index)
 
void pg_edit_group_get_fixed_packet_data (pg_stream_t *s, u32 group_index, void *fixed_packet_data, void *fixed_packet_data_mask)
 
void pg_enable_disable (u32 stream_index, int is_enable)
 
clib_error_tpg_capture (pg_capture_args_t *a)
 

Variables

vnet_device_class_t pg_dev_class
 
pg_main_t pg_main
 
vlib_node_registration_t pg_input_node
 (constructor) VLIB_REGISTER_NODE (pg_input_node) More...
 
vlib_node_function_t pg_input
 
vlib_node_function_t pg_output
 

Macro Definition Documentation

◆ PG_STREAM_FLAGS_DISABLE_BUFFER_RECYCLE

#define PG_STREAM_FLAGS_DISABLE_BUFFER_RECYCLE   (1 << 1)

Definition at line 103 of file pg.h.

◆ PG_STREAM_FLAGS_IS_ENABLED

#define PG_STREAM_FLAGS_IS_ENABLED   (1 << 0)

Definition at line 102 of file pg.h.

Typedef Documentation

◆ pg_edit_group_t

◆ pg_main_t

typedef struct pg_main_t pg_main_t

◆ pg_stream_t

typedef struct pg_stream_t pg_stream_t

Function Documentation

◆ pg_add_edits()

static void* pg_add_edits ( pg_stream_t s,
int  n_edit_bytes,
int  n_packet_bytes,
u32  group_index 
)
inlinestatic

Definition at line 249 of file pg.h.

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

◆ pg_buffer_index_free()

static void pg_buffer_index_free ( pg_buffer_index_t bi)
inlinestatic

Definition at line 175 of file pg.h.

+ Here is the caller graph for this function:

◆ pg_capture()

clib_error_t* pg_capture ( pg_capture_args_t a)

Definition at line 81 of file cli.c.

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

◆ pg_create_edit_group()

static void* pg_create_edit_group ( pg_stream_t s,
int  n_edit_bytes,
int  n_packet_bytes,
u32 group_index 
)
inlinestatic

Definition at line 229 of file pg.h.

+ Here is the caller graph for this function:

◆ pg_edit_group_free()

static void pg_edit_group_free ( pg_edit_group_t g)
inlinestatic

Definition at line 182 of file pg.h.

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

◆ pg_edit_group_get_fixed_packet_data()

void pg_edit_group_get_fixed_packet_data ( pg_stream_t s,
u32  group_index,
void *  fixed_packet_data,
void *  fixed_packet_data_mask 
)

Definition at line 326 of file stream.c.

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

◆ pg_edit_group_n_bytes()

static uword pg_edit_group_n_bytes ( pg_stream_t s,
u32  group_index 
)
inlinestatic

Definition at line 271 of file pg.h.

+ Here is the caller graph for this function:

◆ pg_enable_disable()

void pg_enable_disable ( u32  stream_index,
int  is_enable 
)

Definition at line 58 of file cli.c.

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

◆ pg_free_edit_group()

static void pg_free_edit_group ( pg_stream_t s)
inlinestatic

Definition at line 282 of file pg.h.

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

◆ pg_get_edit_group()

static void* pg_get_edit_group ( pg_stream_t s,
u32  group_index 
)
inlinestatic

Definition at line 263 of file pg.h.

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

◆ pg_get_node()

static pg_node_t* pg_get_node ( uword  node_index)
inlinestatic

Definition at line 357 of file pg.h.

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

◆ pg_interface_add_or_get()

u32 pg_interface_add_or_get ( pg_main_t pg,
uword  stream_index 
)

Definition at line 182 of file stream.c.

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

◆ pg_stream_add()

void pg_stream_add ( pg_main_t pg,
pg_stream_t s_init 
)

Definition at line 385 of file stream.c.

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

◆ pg_stream_del()

void pg_stream_del ( pg_main_t pg,
uword  index 
)

Definition at line 467 of file stream.c.

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

◆ pg_stream_enable_disable()

void pg_stream_enable_disable ( pg_main_t pg,
pg_stream_t s,
int  is_enable 
)

Definition at line 49 of file stream.c.

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

◆ pg_stream_free()

static void pg_stream_free ( pg_stream_t s)
inlinestatic

Definition at line 192 of file pg.h.

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

◆ pg_stream_get_group()

static pg_edit_group_t* pg_stream_get_group ( pg_stream_t s,
u32  group_index 
)
inlinestatic

Definition at line 223 of file pg.h.

+ Here is the caller graph for this function:

◆ pg_stream_is_enabled()

static int pg_stream_is_enabled ( pg_stream_t s)
inlinestatic

Definition at line 217 of file pg.h.

+ Here is the caller graph for this function:

Variable Documentation

◆ pg_dev_class

vnet_device_class_t pg_dev_class

◆ pg_input

Definition at line 343 of file pg.h.

◆ pg_input_node

vlib_node_registration_t pg_input_node

(constructor) VLIB_REGISTER_NODE (pg_input_node)

Definition at line 1720 of file input.c.

◆ pg_main

pg_main_t pg_main

Definition at line 44 of file init.c.

◆ pg_output

Definition at line 343 of file pg.h.