Go to the source code of this file.
|
#define | foreach_sr_rewrite_next |
|
#define | sr_error(n, s) s, |
|
#define | sr_error(n, s) SR_REWRITE_ERROR_##n, |
|
#define | foreach_sr_fix_dst_addr_next _(DROP, "error-drop") |
|
#define | sr_fix_dst_error(n, s) s, |
|
#define | sr_fix_dst_error(n, s) SR_FIX_DST_ERROR_##n, |
|
#define | foreach_sr_local_next |
|
#define | sr_error(n, s) s, |
|
#define | sr_error(n, s) SR_LOCAL_ERROR_##n, |
|
|
void | sr_fix_hmac (ip6_sr_main_t *sm, ip6_header_t *ip, ip6_sr_header_t *sr) |
|
u8 * | format_ip6_sr_header_flags (u8 *s, va_list *args) |
|
u8 * | format_ip6_sr_header (u8 *s, va_list *args) |
|
u8 * | format_ip6_sr_header_with_length (u8 *s, va_list *args) |
|
u8 * | format_sr_rewrite_trace (u8 *s, va_list *args) |
|
static uword | sr_rewrite (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
static int | ip6_delete_route_no_next_hop (ip6_address_t *dst_address_arg, u32 dst_address_length, u32 rx_table_id) |
|
static ip6_sr_hmac_key_t * | find_or_add_shared_secret (ip6_sr_main_t *sm, u8 *secret, u32 *indexp) |
|
int | ip6_sr_add_del_tunnel (ip6_sr_add_del_tunnel_args_t *a) |
|
static clib_error_t * | sr_add_del_tunnel_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
void | ip6_sr_tunnel_display (vlib_main_t *vm, ip6_sr_tunnel_t *t) |
|
static clib_error_t * | show_sr_tunnel_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
int | ip6_sr_add_del_policy (ip6_sr_add_del_policy_args_t *a) |
|
static clib_error_t * | sr_add_del_policy_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
static clib_error_t * | show_sr_policy_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
int | ip6_sr_add_del_multicastmap (ip6_sr_add_del_multicastmap_args_t *a) |
|
static clib_error_t * | sr_add_del_multicast_map_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
static clib_error_t * | show_sr_multicast_map_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
u8 * | format_sr_fix_addr_trace (u8 *s, va_list *args) |
|
static uword | sr_fix_dst_addr (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
static clib_error_t * | sr_init (vlib_main_t *vm) |
|
u8 * | format_sr_local_trace (u8 *s, va_list *args) |
|
static int | sr_validate_hmac (ip6_sr_main_t *sm, ip6_header_t *ip, ip6_sr_header_t *sr) |
|
static uword | sr_local (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
ip6_sr_main_t * | sr_get_main (vlib_main_t *vm) |
|
static clib_error_t * | set_ip6_sr_rewrite_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
void | vnet_register_sr_app_callback (void *cb) |
|
static clib_error_t * | test_sr_hmac_validate_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
i32 | sr_hmac_add_del_key (ip6_sr_main_t *sm, u32 key_id, u8 *shared_secret, u8 is_del) |
|
static clib_error_t * | sr_hmac_add_del_key_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
static clib_error_t * | show_sr_hmac_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
static clib_error_t * | test_sr_debug_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
#define foreach_sr_fix_dst_addr_next _(DROP, "error-drop") |
#define foreach_sr_local_next |
Value:_ (ERROR, "error-drop") \
_ (IP6_LOOKUP, "ip6-lookup")
Definition at line 2027 of file sr.c.
#define foreach_sr_rewrite_next |
Value:_(ERROR, "error-drop") \
_(IP6_LOOKUP, "ip6-lookup") \
_(SR_LOCAL, "sr-local")
Definition at line 211 of file sr.c.
#define sr_error |
( |
|
n, |
|
|
|
s |
|
) |
| s, |
#define sr_error |
( |
|
n, |
|
|
|
s |
|
) |
| SR_REWRITE_ERROR_##n, |
#define sr_error |
( |
|
n, |
|
|
|
s |
|
) |
| s, |
#define sr_error |
( |
|
n, |
|
|
|
s |
|
) |
| SR_LOCAL_ERROR_##n, |
#define sr_fix_dst_error |
( |
|
n, |
|
|
|
s |
|
) |
| s, |
#define sr_fix_dst_error |
( |
|
n, |
|
|
|
s |
|
) |
| SR_FIX_DST_ERROR_##n, |
Enumerator |
---|
SR_FIX_DST_ADDR_N_NEXT |
|
Definition at line 1718 of file sr.c.
Enumerator |
---|
sr_fix_dst_error |
|
sr_fix_dst_error |
|
Definition at line 1731 of file sr.c.
Enumerator |
---|
sr_error |
|
sr_error |
|
Definition at line 2052 of file sr.c.
Enumerator |
---|
SR_LOCAL_N_NEXT |
|
Definition at line 2031 of file sr.c.
Enumerator |
---|
sr_error |
|
sr_error |
|
Definition at line 238 of file sr.c.
Enumerator |
---|
SR_REWRITE_N_NEXT |
|
Definition at line 217 of file sr.c.
Definition at line 693 of file sr.c.
u8* format_ip6_sr_header |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
Definition at line 137 of file sr.c.
u8* format_ip6_sr_header_flags |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
Definition at line 95 of file sr.c.
u8* format_ip6_sr_header_with_length |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
Definition at line 188 of file sr.c.
u8* format_sr_fix_addr_trace |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
u8* format_sr_local_trace |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
u8* format_sr_rewrite_trace |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
Definition at line 246 of file sr.c.
static int ip6_delete_route_no_next_hop |
( |
ip6_address_t * |
dst_address_arg, |
|
|
u32 |
dst_address_length, |
|
|
u32 |
rx_table_id |
|
) |
| |
|
static |
Definition at line 651 of file sr.c.
Definition at line 740 of file sr.c.
Definition at line 26 of file sr.c.
Definition at line 275 of file sr.c.
void vnet_register_sr_app_callback |
( |
void * |
cb | ) |
|
Initial value:= {
.path = "set ip6 sr rewrite",
.short_help = "set ip6 sr rewrite <ip6-address> [fib-id <id>]",
}
static clib_error_t * set_ip6_sr_rewrite_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
(constructor) VLIB_CLI_COMMAND (set_ip6_sr_rewrite)
Definition at line 2659 of file sr.c.
Initial value:= {
.path = "show sr hmac",
.short_help = "show sr hmac",
}
static clib_error_t * show_sr_hmac_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
(constructor) VLIB_CLI_COMMAND (show_sr_hmac)
Definition at line 2814 of file sr.c.
Initial value:= {
.path = "show sr multicast-map",
.short_help = "show sr multicast-map",
}
static clib_error_t * show_sr_multicast_map_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
(constructor) VLIB_CLI_COMMAND (show_sr_multicast_map_command)
Definition at line 1708 of file sr.c.
Initial value:= {
.path = "show sr policy",
.short_help = "show sr policy [name <sr-policy-name>]",
}
static clib_error_t * show_sr_policy_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
(constructor) VLIB_CLI_COMMAND (show_sr_policy_command)
Definition at line 1497 of file sr.c.
Initial value:= {
.path = "show sr tunnel",
.short_help = "show sr tunnel [name <sr-tunnel-name>]",
}
static clib_error_t * show_sr_tunnel_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
(constructor) VLIB_CLI_COMMAND (show_sr_tunnel_command)
Definition at line 1281 of file sr.c.
Initial value:= {
.name = "sr-fix-dst-addr",
.vector_size =
sizeof (
u32),
.runtime_data_bytes = 0,
.n_errors = SR_FIX_DST_N_ERROR,
.next_nodes = {
#define _(s,n)
},
}
static char * sr_fix_dst_error_strings[]
u8 * format_sr_fix_addr_trace(u8 *s, va_list *args)
u8 * format_ip6_sr_header_with_length(u8 *s, va_list *args)
static uword sr_fix_dst_addr(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame)
#define foreach_sr_fix_dst_addr_next
(constructor) VLIB_REGISTER_NODE (sr_fix_dst_addr_node)
Definition at line 1926 of file sr.c.
char* sr_fix_dst_error_strings[] |
|
static |
Initial value:= {
#define sr_fix_dst_error(n,s)
}
#define sr_fix_dst_error(n, s)
Definition at line 1725 of file sr.c.
Initial value:= {
.path = "sr hmac",
.short_help = "sr hmac [del] id <nn> key <str>",
}
static clib_error_t * sr_hmac_add_del_key_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
(constructor) VLIB_CLI_COMMAND (sr_hmac)
Definition at line 2790 of file sr.c.
char* sr_local_error_strings[] |
|
static |
Initial value:= {
#define sr_error(n,s)
sr_error (BAD_ROUTING_HEADER_TYPE, "bad routing header
type (not 4)")
sr_error (NO_MORE_SEGMENTS, "out of SR segment drops")
sr_error (PKTS_PROCESSED, "SR packets processed")
sr_error (APP_CALLBACK, "SR application callback errors")
sr_error (HMAC_INVALID, "SR packets with invalid HMAC signatures")
}
bad routing header type(not 4)") sr_error (NO_MORE_SEGMENTS
Definition at line 2046 of file sr.c.
Initial value:= {
.name = "sr-local",
.vector_size =
sizeof (
u32),
.runtime_data_bytes = 0,
.n_errors = SR_LOCAL_N_ERROR,
.next_nodes = {
#define _(s,n)
},
}
static uword sr_local(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame)
static char * sr_local_error_strings[]
#define foreach_sr_local_next
u8 * format_sr_local_trace(u8 *s, va_list *args)
(constructor) VLIB_REGISTER_NODE (sr_local_node)
Definition at line 24 of file sr.c.
Definition at line 23 of file sr.c.
Initial value:= {
.path = "sr multicast-map",
.short_help =
"sr multicast-map address <multicast-ip6-address> sr-policy <sr-policy-name> [del]",
}
static clib_error_t * sr_add_del_multicast_map_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
(constructor) VLIB_CLI_COMMAND (sr_multicast_map_command)
Definition at line 1662 of file sr.c.
Initial value:= {
.path = "sr policy",
.short_help =
"sr policy [del] name <policy-name> tunnel <sr-tunnel-name> [tunnel <sr-tunnel-name>]*",
}
static clib_error_t * sr_add_del_policy_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
(constructor) VLIB_CLI_COMMAND (sr_policy_command)
Definition at line 1430 of file sr.c.
char* sr_rewrite_error_strings[] |
|
static |
Initial value:= {
#define sr_error(n,s)
sr_error (BAD_ROUTING_HEADER_TYPE, "bad routing header
type (not 4)")
sr_error (NO_MORE_SEGMENTS, "out of SR segment drops")
sr_error (PKTS_PROCESSED, "SR packets processed")
sr_error (APP_CALLBACK, "SR application callback errors")
sr_error (HMAC_INVALID, "SR packets with invalid HMAC signatures")
}
bad routing header type(not 4)") sr_error (NO_MORE_SEGMENTS
Definition at line 232 of file sr.c.
Initial value:= {
.name = "sr-rewrite",
.vector_size =
sizeof (
u32),
.n_errors = SR_REWRITE_N_ERROR,
.runtime_data_bytes = 0,
.next_nodes = {
#define _(s,n)
},
}
static char * sr_rewrite_error_strings[]
u8 * format_sr_rewrite_trace(u8 *s, va_list *args)
static uword sr_rewrite(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame)
#define foreach_sr_rewrite_next
u8 * format_ip6_sr_header_with_length(u8 *s, va_list *args)
(constructor) VLIB_REGISTER_NODE (sr_rewrite_node)
Definition at line 630 of file sr.c.
Initial value:= {
.path = "sr tunnel",
.short_help =
"sr tunnel [del] [name <name>] src <addr> dst <addr> [next <addr>] "
"[clean] [reroute] [key <secret>] [policy <policy_name>]"
"[rx-fib-id <fib_id>] [tx-fib-id <fib_id>]",
}
static clib_error_t * sr_add_del_tunnel_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
(constructor) VLIB_CLI_COMMAND (sr_tunnel_command)
Definition at line 1187 of file sr.c.
Initial value:= {
.path = "test sr debug",
.short_help = "test sr debug on|off",
}
static clib_error_t * test_sr_debug_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
(constructor) VLIB_CLI_COMMAND (test_sr_debug)
Definition at line 2840 of file sr.c.
Initial value:= {
.path = "test sr hmac",
.short_help = "test sr hmac validate [on|off]",
}
static clib_error_t * test_sr_hmac_validate_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
(constructor) VLIB_CLI_COMMAND (test_sr_hmac_validate)
Definition at line 2693 of file sr.c.