Go to the source code of this file.
|
typedef | CLIB_PACKED (struct{ip6_hop_by_hop_option_t hdr;u8 pot_type;#define PROFILE_ID_MASK u8 reserved_profile_id;u64 random;u64 cumulative;}) |
|
static void | ip6_ioam_stats_increment_counter (u32 counter_index, u64 increment) |
|
static u8 * | format_ioam_pot (u8 *s, va_list *args) |
|
u8 * | ip6_hbh_ioam_proof_of_transit_trace_handler (u8 *s, ip6_hop_by_hop_option_t *opt) |
|
int | ip6_hbh_ioam_proof_of_transit_handler (vlib_buffer_t *b, ip6_header_t *ip, ip6_hop_by_hop_option_t *opt0) |
|
int | ip6_hbh_ioam_proof_of_transit_pop_handler (vlib_buffer_t *b, ip6_header_t *ip, ip6_hop_by_hop_option_t *opt0) |
|
int | ip6_hop_by_hop_ioam_pot_rewrite_handler (u8 *rewrite_string, u8 *rewrite_size) |
|
static clib_error_t * | ip6_show_ioam_pot_cmd_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
static clib_error_t * | ip6_hop_by_hop_ioam_pot_init (vlib_main_t *vm) |
|
#define foreach_ip6_hop_by_hop_ioam_pot_stats |
Value:_(PROCESSED, "Pkts with ip6 hop-by-hop pot options") \
_(PROFILE_MISS, "Pkts with ip6 hop-by-hop pot options but no profile set") \
_(PASSED, "Pkts with POT in Policy") \
_(FAILED, "Pkts with POT out of Policy")
#define PROFILE_ID_MASK 0xF |
static u8* format_ioam_pot |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
|
static |
int ip6_hop_by_hop_ioam_pot_rewrite_handler |
( |
u8 * |
rewrite_string, |
|
|
u8 * |
rewrite_size |
|
) |
| |
static void ip6_ioam_stats_increment_counter |
( |
u32 |
counter_index, |
|
|
u64 |
increment |
|
) |
| |
|
inlinestatic |
Initial value:= {
.path = "show ioam pot",
.short_help = "iOAM pot statistics",
}
static clib_error_t * ip6_show_ioam_pot_cmd_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
(constructor) VLIB_CLI_COMMAND (ip6_show_ioam_pot_cmd)
Definition at line 238 of file ip6_ioam_pot.c.