X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvppinfra%2Fformat.h;h=b70384c0e4196ed84f9e3d5d8edca08cc3d9fd51;hb=162ff5e41;hp=9a3a342076b8db107af2a92ba97477a790b19afd;hpb=926b564d650700213f40b03394fdb12e45496246;p=vpp.git diff --git a/src/vppinfra/format.h b/src/vppinfra/format.h index 9a3a342076b..b70384c0e41 100644 --- a/src/vppinfra/format.h +++ b/src/vppinfra/format.h @@ -87,13 +87,14 @@ format_get_indent (u8 * s) return indent; } -#define _(f) u8 * f (u8 * s, va_list * va) +#define _(f) __clib_export u8 * f (u8 * s, va_list * va) /* Standard user-defined formats. */ _(format_vec32); _(format_vec_uword); _(format_ascii_bytes); _(format_hex_bytes); +_(format_hex_bytes_no_wrap); _(format_white_space); _(format_f64); _(format_time_interval); @@ -101,22 +102,14 @@ _(format_time_interval); #ifdef CLIB_UNIX /* Unix specific formats. */ _(format_address_family); -_(format_unix_arphrd); -_(format_unix_interface_flags); _(format_network_address); _(format_network_protocol); _(format_network_port); _(format_sockaddr); -_(format_ip4_tos_byte); -_(format_ip4_packet); -_(format_icmp4_type_and_code); -_(format_ethernet_packet); -_(format_hostname); _(format_timeval); _(format_time_float); _(format_signal); _(format_ucontext_pc); -_(format_page_map); #endif #undef _ @@ -153,7 +146,7 @@ unformat_init (unformat_input_t * i, uword (*fill_buffer) (unformat_input_t *), void *fill_buffer_arg) { - memset (i, 0, sizeof (i[0])); + clib_memset (i, 0, sizeof (i[0])); i->fill_buffer = fill_buffer; i->fill_buffer_arg = fill_buffer_arg; } @@ -163,7 +156,7 @@ unformat_free (unformat_input_t * i) { vec_free (i->buffer); vec_free (i->buffer_marks); - memset (i, 0, sizeof (i[0])); + clib_memset (i, 0, sizeof (i[0])); } always_inline uword @@ -249,8 +242,8 @@ uword va_unformat (unformat_input_t * i, const char *fmt, va_list * args); void unformat_init_command_line (unformat_input_t * input, char *argv[]); /* Setup for unformat of given string. */ -void unformat_init_string (unformat_input_t * input, - char *string, int string_len); +void unformat_init_string (unformat_input_t *input, const char *string, + int string_len); always_inline void unformat_init_cstring (unformat_input_t * input, char *string) @@ -294,9 +287,18 @@ unformat_function_t unformat_eof; /* Parse memory size e.g. 100, 100k, 100m, 100g. */ unformat_function_t unformat_memory_size; +/* Format base 10 e.g. 100, 100K, 100M, 100G */ +u8 *format_base10 (u8 *s, va_list *va); + /* Unparse memory size e.g. 100, 100k, 100m, 100g. */ u8 *format_memory_size (u8 * s, va_list * va); +/* Parse memory page size e.g. 4K, 2M */ +unformat_function_t unformat_log2_page_size; + +/* Unparse memory page size e.g. 4K, 2M */ +u8 *format_log2_page_size (u8 * s, va_list * va); + /* Format c identifier: e.g. a_name -> "a name". */ u8 *format_c_identifier (u8 * s, va_list * va); @@ -316,6 +318,8 @@ uword unformat_init_unix_env (unformat_input_t * input, char *var); unformat_function_t unformat_unix_gid; #endif /* CLIB_UNIX */ +uword unformat_data_size (unformat_input_t * input, va_list * args); + /* Test code. */ int test_format_main (unformat_input_t * input); int test_unformat_main (unformat_input_t * input);