FD.io VPP  v16.06
Vector Packet Processing
serialize.c File Reference
+ Include dependency graph for serialize.c:

Go to the source code of this file.

Macros

#define SERIALIZE_VECTOR_CHUNK_SIZE   64
 
#define foreach_serialize_heap_header_integer   _ (head) _ (tail) _ (used_count) _ (max_len) _ (flags) _ (elt_bytes)
 

Functions

void serialize_64 (serialize_main_t *m, va_list *va)
 
void serialize_32 (serialize_main_t *m, va_list *va)
 
void serialize_16 (serialize_main_t *m, va_list *va)
 
void serialize_8 (serialize_main_t *m, va_list *va)
 
void unserialize_64 (serialize_main_t *m, va_list *va)
 
void unserialize_32 (serialize_main_t *m, va_list *va)
 
void unserialize_16 (serialize_main_t *m, va_list *va)
 
void unserialize_8 (serialize_main_t *m, va_list *va)
 
void serialize_f64 (serialize_main_t *m, va_list *va)
 
void serialize_f32 (serialize_main_t *m, va_list *va)
 
void unserialize_f64 (serialize_main_t *m, va_list *va)
 
void unserialize_f32 (serialize_main_t *m, va_list *va)
 
void serialize_cstring (serialize_main_t *m, char *s)
 
void unserialize_cstring (serialize_main_t *m, char **s)
 
void serialize_vec_8 (serialize_main_t *m, va_list *va)
 
void unserialize_vec_8 (serialize_main_t *m, va_list *va)
 
void serialize_vector (serialize_main_t *m, va_list *va)
 
voidunserialize_vector_ha (serialize_main_t *m, u32 elt_bytes, u32 header_bytes, u32 align, u32 max_length, serialize_function_t *f)
 
void unserialize_aligned_vector (serialize_main_t *m, va_list *va)
 
void unserialize_vector (serialize_main_t *m, va_list *va)
 
void serialize_bitmap (serialize_main_t *m, uword *b)
 
uwordunserialize_bitmap (serialize_main_t *m)
 
void serialize_pool (serialize_main_t *m, va_list *va)
 
static voidunserialize_pool_helper (serialize_main_t *m, u32 elt_bytes, u32 align, serialize_function_t *f)
 
void unserialize_pool (serialize_main_t *m, va_list *va)
 
void unserialize_aligned_pool (serialize_main_t *m, va_list *va)
 
static void serialize_vec_heap_elt (serialize_main_t *m, va_list *va)
 
static void unserialize_vec_heap_elt (serialize_main_t *m, va_list *va)
 
void serialize_heap (serialize_main_t *m, va_list *va)
 
void unserialize_heap (serialize_main_t *m, va_list *va)
 
void serialize_magic (serialize_main_t *m, void *magic, u32 magic_bytes)
 
void unserialize_check_magic (serialize_main_t *m, void *magic, u32 magic_bytes)
 
clib_error_tva_serialize (serialize_main_t *sm, va_list *va)
 
clib_error_tserialize (serialize_main_t *m,...)
 
clib_error_tunserialize (serialize_main_t *m,...)
 
static voidserialize_write_not_inline (serialize_main_header_t *m, serialize_stream_t *s, uword n_bytes_to_write, uword flags)
 
static voidserialize_read_not_inline (serialize_main_header_t *m, serialize_stream_t *s, uword n_bytes_to_read, uword flags)
 
voidserialize_read_write_not_inline (serialize_main_header_t *m, serialize_stream_t *s, uword n_bytes, uword flags)
 
static void serialize_read_write_close (serialize_main_header_t *m, serialize_stream_t *s, uword flags)
 
void serialize_close (serialize_main_t *m)
 
void unserialize_close (serialize_main_t *m)
 
void serialize_open_data (serialize_main_t *m, u8 *data, uword n_data_bytes)
 
void unserialize_open_data (serialize_main_t *m, u8 *data, uword n_data_bytes)
 
static void serialize_vector_write (serialize_main_header_t *m, serialize_stream_t *s)
 
void serialize_open_vector (serialize_main_t *m, u8 *vector)
 
voidserialize_close_vector (serialize_main_t *m)
 
void serialize_multiple_1 (serialize_main_t *m, void *data, uword data_stride, uword n_data)
 
void serialize_multiple_2 (serialize_main_t *m, void *data, uword data_stride, uword n_data)
 
void serialize_multiple_4 (serialize_main_t *m, void *data, uword data_stride, uword n_data)
 
void unserialize_multiple_1 (serialize_main_t *m, void *data, uword data_stride, uword n_data)
 
void unserialize_multiple_2 (serialize_main_t *m, void *data, uword data_stride, uword n_data)
 
void unserialize_multiple_4 (serialize_main_t *m, void *data, uword data_stride, uword n_data)
 
static void unix_file_write (serialize_main_header_t *m, serialize_stream_t *s)
 
static void unix_file_read (serialize_main_header_t *m, serialize_stream_t *s)
 
static void serialize_open_unix_file_descriptor_helper (serialize_main_t *m, int fd, uword is_read)
 
void serialize_open_unix_file_descriptor (serialize_main_t *m, int fd)
 
void unserialize_open_unix_file_descriptor (serialize_main_t *m, int fd)
 
static clib_error_tserialize_open_unix_file_helper (serialize_main_t *m, char *file, uword is_read)
 
clib_error_tserialize_open_unix_file (serialize_main_t *m, char *file)
 
clib_error_tunserialize_open_unix_file (serialize_main_t *m, char *file)
 

Macro Definition Documentation

#define foreach_serialize_heap_header_integer   _ (head) _ (tail) _ (used_count) _ (max_len) _ (flags) _ (elt_bytes)
#define SERIALIZE_VECTOR_CHUNK_SIZE   64

Definition at line 248 of file serialize.c.

Function Documentation

clib_error_t* serialize ( serialize_main_t m,
  ... 
)

Definition at line 627 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void serialize_16 ( serialize_main_t m,
va_list *  va 
)

Definition at line 60 of file serialize.c.

+ Here is the call graph for this function:

void serialize_32 ( serialize_main_t m,
va_list *  va 
)

Definition at line 54 of file serialize.c.

+ Here is the call graph for this function:

void serialize_64 ( serialize_main_t m,
va_list *  va 
)

Definition at line 44 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void serialize_8 ( serialize_main_t m,
va_list *  va 
)

Definition at line 66 of file serialize.c.

+ Here is the call graph for this function:

void serialize_bitmap ( serialize_main_t m,
uword b 
)

Definition at line 323 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void serialize_close ( serialize_main_t m)

Definition at line 822 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void* serialize_close_vector ( serialize_main_t m)

Definition at line 858 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void serialize_cstring ( serialize_main_t m,
char *  s 
)

Definition at line 135 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void serialize_f32 ( serialize_main_t m,
va_list *  va 
)

Definition at line 111 of file serialize.c.

+ Here is the call graph for this function:

void serialize_f64 ( serialize_main_t m,
va_list *  va 
)

Definition at line 103 of file serialize.c.

+ Here is the call graph for this function:

void serialize_heap ( serialize_main_t m,
va_list *  va 
)

Definition at line 467 of file serialize.c.

+ Here is the call graph for this function:

void serialize_magic ( serialize_main_t m,
void magic,
u32  magic_bytes 
)

Definition at line 580 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void serialize_multiple_1 ( serialize_main_t m,
void data,
uword  data_stride,
uword  n_data 
)

Definition at line 873 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void serialize_multiple_2 ( serialize_main_t m,
void data,
uword  data_stride,
uword  n_data 
)

Definition at line 907 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void serialize_multiple_4 ( serialize_main_t m,
void data,
uword  data_stride,
uword  n_data 
)

Definition at line 941 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void serialize_open_data ( serialize_main_t m,
u8 data,
uword  n_data_bytes 
)

Definition at line 828 of file serialize.c.

+ Here is the caller graph for this function:

clib_error_t* serialize_open_unix_file ( serialize_main_t m,
char *  file 
)

Definition at line 1157 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void serialize_open_unix_file_descriptor ( serialize_main_t m,
int  fd 
)

Definition at line 1136 of file serialize.c.

+ Here is the call graph for this function:

static void serialize_open_unix_file_descriptor_helper ( serialize_main_t m,
int  fd,
uword  is_read 
)
static

Definition at line 1121 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static clib_error_t* serialize_open_unix_file_helper ( serialize_main_t m,
char *  file,
uword  is_read 
)
static

Definition at line 1143 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void serialize_open_vector ( serialize_main_t m,
u8 vector 
)

Definition at line 849 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void serialize_pool ( serialize_main_t m,
va_list *  va 
)

Definition at line 373 of file serialize.c.

+ Here is the call graph for this function:

static void* serialize_read_not_inline ( serialize_main_header_t m,
serialize_stream_t s,
uword  n_bytes_to_read,
uword  flags 
)
static

Definition at line 702 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void serialize_read_write_close ( serialize_main_header_t m,
serialize_stream_t s,
uword  flags 
)
static

Definition at line 805 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void* serialize_read_write_not_inline ( serialize_main_header_t m,
serialize_stream_t s,
uword  n_bytes,
uword  flags 
)

Definition at line 796 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void serialize_vec_8 ( serialize_main_t m,
va_list *  va 
)

Definition at line 173 of file serialize.c.

+ Here is the call graph for this function:

static void serialize_vec_heap_elt ( serialize_main_t m,
va_list *  va 
)
static

Definition at line 443 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void serialize_vector ( serialize_main_t m,
va_list *  va 
)

Definition at line 250 of file serialize.c.

+ Here is the call graph for this function:

static void serialize_vector_write ( serialize_main_header_t m,
serialize_stream_t s 
)
static

Definition at line 838 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void* serialize_write_not_inline ( serialize_main_header_t m,
serialize_stream_t s,
uword  n_bytes_to_write,
uword  flags 
)
static

Definition at line 650 of file serialize.c.

+ Here is the caller graph for this function:

static void unix_file_read ( serialize_main_header_t m,
serialize_stream_t s 
)
static

Definition at line 1101 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void unix_file_write ( serialize_main_header_t m,
serialize_stream_t s 
)
static

Definition at line 1081 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

clib_error_t* unserialize ( serialize_main_t m,
  ... 
)

Definition at line 639 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void unserialize_16 ( serialize_main_t m,
va_list *  va 
)

Definition at line 87 of file serialize.c.

+ Here is the call graph for this function:

void unserialize_32 ( serialize_main_t m,
va_list *  va 
)

Definition at line 81 of file serialize.c.

+ Here is the call graph for this function:

void unserialize_64 ( serialize_main_t m,
va_list *  va 
)

Definition at line 72 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void unserialize_8 ( serialize_main_t m,
va_list *  va 
)

Definition at line 95 of file serialize.c.

+ Here is the call graph for this function:

void unserialize_aligned_pool ( serialize_main_t m,
va_list *  va 
)

Definition at line 434 of file serialize.c.

+ Here is the call graph for this function:

void unserialize_aligned_vector ( serialize_main_t m,
va_list *  va 
)

Definition at line 296 of file serialize.c.

+ Here is the call graph for this function:

uword* unserialize_bitmap ( serialize_main_t m)

Definition at line 340 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void unserialize_check_magic ( serialize_main_t m,
void magic,
u32  magic_bytes 
)

Definition at line 588 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void unserialize_close ( serialize_main_t m)

Definition at line 825 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void unserialize_cstring ( serialize_main_t m,
char **  s 
)

Definition at line 148 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void unserialize_f32 ( serialize_main_t m,
va_list *  va 
)

Definition at line 127 of file serialize.c.

+ Here is the call graph for this function:

void unserialize_f64 ( serialize_main_t m,
va_list *  va 
)

Definition at line 119 of file serialize.c.

+ Here is the call graph for this function:

void unserialize_heap ( serialize_main_t m,
va_list *  va 
)

Definition at line 516 of file serialize.c.

+ Here is the call graph for this function:

void unserialize_multiple_1 ( serialize_main_t m,
void data,
uword  data_stride,
uword  n_data 
)

Definition at line 975 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void unserialize_multiple_2 ( serialize_main_t m,
void data,
uword  data_stride,
uword  n_data 
)

Definition at line 1009 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void unserialize_multiple_4 ( serialize_main_t m,
void data,
uword  data_stride,
uword  n_data 
)

Definition at line 1043 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void unserialize_open_data ( serialize_main_t m,
u8 data,
uword  n_data_bytes 
)

Definition at line 835 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

clib_error_t* unserialize_open_unix_file ( serialize_main_t m,
char *  file 
)

Definition at line 1161 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void unserialize_open_unix_file_descriptor ( serialize_main_t m,
int  fd 
)

Definition at line 1139 of file serialize.c.

+ Here is the call graph for this function:

void unserialize_pool ( serialize_main_t m,
va_list *  va 
)

Definition at line 426 of file serialize.c.

+ Here is the call graph for this function:

static void* unserialize_pool_helper ( serialize_main_t m,
u32  elt_bytes,
u32  align,
serialize_function_t f 
)
static

Definition at line 396 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void unserialize_vec_8 ( serialize_main_t m,
va_list *  va 
)

Definition at line 181 of file serialize.c.

+ Here is the call graph for this function:

static void unserialize_vec_heap_elt ( serialize_main_t m,
va_list *  va 
)
static

Definition at line 455 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void unserialize_vector ( serialize_main_t m,
va_list *  va 
)

Definition at line 310 of file serialize.c.

+ Here is the call graph for this function:

void* unserialize_vector_ha ( serialize_main_t m,
u32  elt_bytes,
u32  header_bytes,
u32  align,
u32  max_length,
serialize_function_t f 
)

Definition at line 271 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

clib_error_t* va_serialize ( serialize_main_t sm,
va_list *  va 
)

Definition at line 606 of file serialize.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function: