static_ipv6_func (struct vty *vty, int add_cmd, const char *dest_str,
const char *gate_str, const char *ifname,
const char *flag_str, const char *tag_str,
- const char *distance_str, const char *vrf_id_str)
+ const char *distance_str, const char *vrf_id_str,
+ const char *label_str)
{
int ret;
u_char distance;
if (tag_str)
tag = atoi(tag_str);
- /* Labels -- not supported for IPv6 for now. */
- memset (&snh_label, 0, sizeof (struct static_nh_label));
/* When gateway is valid IPv6 addrees, then gate is treated as
nexthop address other case gate is treated as interface name. */
return CMD_WARNING;
}
+ /* Labels */
+ memset (&snh_label, 0, sizeof (struct static_nh_label));
+ if (label_str)
+ {
+ if (mpls_str2label (label_str, &snh_label.num_labels,
+ snh_label.label))
+ {
+ vty_out (vty, "%% Malformed label(s)%s", VTY_NEWLINE);
+ return CMD_WARNING;
+ }
+ }
+
if (ifname)
{
/* When ifname is specified. It must be come with gateway
DEFUN (ipv6_route,
ipv6_route_cmd,
- "ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE)",
+ "ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE) {label WORD}",
IP_STR
"Establish static routes\n"
"IPv6 destination prefix (e.g. 3ffe:506::/32)\n"
"IPv6 gateway address\n"
- "IPv6 gateway interface name\n")
+ "IPv6 gateway interface name\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, NULL, NULL, NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, NULL, NULL, NULL, argv[2]);
}
DEFUN (ipv6_route_tag,
ipv6_route_tag_cmd,
- "ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE) tag <1-65535>",
+ "ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE) tag <1-65535> {label WORD}",
IP_STR
"Establish static routes\n"
"IPv6 destination prefix (e.g. 3ffe:506::/32)\n"
"IPv6 gateway address\n"
"IPv6 gateway interface name\n"
"Set tag for this route\n"
- "Tag value\n")
+ "Tag value\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, argv[2], NULL, NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, argv[2], NULL, NULL, argv[3]);
}
DEFUN (ipv6_route_flags,
"Emit an ICMP unreachable when matched\n"
"Silently discard pkts when matched\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], NULL, NULL, NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], NULL, NULL, NULL, NULL);
}
DEFUN (ipv6_route_flags_tag,
"Set tag for this route\n"
"Tag value\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], argv[3], NULL, NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], argv[3], NULL, NULL, NULL);
}
DEFUN (ipv6_route_ifname,
ipv6_route_ifname_cmd,
- "ipv6 route X:X::X:X/M X:X::X:X INTERFACE",
+ "ipv6 route X:X::X:X/M X:X::X:X INTERFACE {label WORD}",
IP_STR
"Establish static routes\n"
"IPv6 destination prefix (e.g. 3ffe:506::/32)\n"
"IPv6 gateway address\n"
- "IPv6 gateway interface name\n")
+ "IPv6 gateway interface name\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, NULL, NULL, NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, NULL, NULL, NULL, argv[3]);
}
DEFUN (ipv6_route_ifname_tag,
ipv6_route_ifname_tag_cmd,
- "ipv6 route X:X::X:X/M X:X::X:X INTERFACE tag <1-65535>",
+ "ipv6 route X:X::X:X/M X:X::X:X INTERFACE tag <1-65535> {label WORD}",
IP_STR
"Establish static routes\n"
"IPv6 destination prefix (e.g. 3ffe:506::/32)\n"
"IPv6 gateway address\n"
"IPv6 gateway interface name\n"
"Set tag for this route\n"
- "Tag value\n")
+ "Tag value\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, argv[3], NULL, NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, argv[3], NULL, NULL, argv[4]);
}
DEFUN (ipv6_route_ifname_flags,
"Emit an ICMP unreachable when matched\n"
"Silently discard pkts when matched\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], NULL, NULL, NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], NULL, NULL, NULL, NULL);
}
DEFUN (ipv6_route_ifname_flags_tag,
"Set tag for this route\n"
"Tag value\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], argv[4], NULL, NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], argv[4], NULL, NULL, NULL);
}
DEFUN (ipv6_route_pref,
ipv6_route_pref_cmd,
- "ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE) <1-255>",
+ "ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE) <1-255> {label WORD}",
IP_STR
"Establish static routes\n"
"IPv6 destination prefix (e.g. 3ffe:506::/32)\n"
"IPv6 gateway address\n"
"IPv6 gateway interface name\n"
- "Distance value for this prefix\n")
+ "Distance value for this prefix\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, NULL, argv[2], NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, NULL, argv[2], NULL, argv[3]);
}
DEFUN (ipv6_route_pref_tag,
ipv6_route_pref_tag_cmd,
- "ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE) tag <1-65535> <1-255>",
+ "ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE) tag <1-65535> <1-255> {label WORD}",
IP_STR
"Establish static routes\n"
"IPv6 destination prefix (e.g. 3ffe:506::/32)\n"
"IPv6 gateway interface name\n"
"Set tag for this route\n"
"Tag value\n"
- "Distance value for this prefix\n")
+ "Distance value for this prefix\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, argv[2], argv[3], NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, argv[2], argv[3], NULL, argv[4]);
}
DEFUN (ipv6_route_flags_pref,
"Silently discard pkts when matched\n"
"Distance value for this prefix\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], NULL, argv[3], NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], NULL, argv[3], NULL, NULL);
}
DEFUN (ipv6_route_flags_pref_tag,
"Tag value\n"
"Distance value for this prefix\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], argv[3], argv[4], NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], argv[3], argv[4], NULL, NULL);
}
DEFUN (ipv6_route_ifname_pref,
ipv6_route_ifname_pref_cmd,
- "ipv6 route X:X::X:X/M X:X::X:X INTERFACE <1-255>",
+ "ipv6 route X:X::X:X/M X:X::X:X INTERFACE <1-255> {label WORD}",
IP_STR
"Establish static routes\n"
"IPv6 destination prefix (e.g. 3ffe:506::/32)\n"
"IPv6 gateway address\n"
"IPv6 gateway interface name\n"
- "Distance value for this prefix\n")
+ "Distance value for this prefix\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, NULL, argv[3], NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, NULL, argv[3], NULL, argv[4]);
}
DEFUN (ipv6_route_ifname_pref_tag,
ipv6_route_ifname_pref_tag_cmd,
- "ipv6 route X:X::X:X/M X:X::X:X INTERFACE tag <1-65535> <1-255>",
+ "ipv6 route X:X::X:X/M X:X::X:X INTERFACE tag <1-65535> <1-255> {label WORD}",
IP_STR
"Establish static routes\n"
"IPv6 destination prefix (e.g. 3ffe:506::/32)\n"
"IPv6 gateway interface name\n"
"Set tag for this route\n"
"Tag value\n"
- "Distance value for this prefix\n")
+ "Distance value for this prefix\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, argv[3], argv[4], NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, argv[3], argv[4], NULL, argv[5]);
}
DEFUN (ipv6_route_ifname_flags_pref,
"Silently discard pkts when matched\n"
"Distance value for this prefix\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], NULL, argv[4], NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], NULL, argv[4], NULL, NULL);
}
DEFUN (ipv6_route_ifname_flags_pref_tag,
"Tag value\n"
"Distance value for this prefix\n")
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], argv[4], argv[5], NULL);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], argv[4], argv[5], NULL, NULL);
}
DEFUN (no_ipv6_route,
no_ipv6_route_cmd,
- "no ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE)",
+ "no ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE) {label WORD}",
NO_STR
IP_STR
"Establish static routes\n"
"IPv6 destination prefix (e.g. 3ffe:506::/32)\n"
"IPv6 gateway address\n"
- "IPv6 gateway interface name\n")
+ "IPv6 gateway interface name\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, NULL, NULL, NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, NULL, NULL, NULL, argv[2]);
}
DEFUN (no_ipv6_route_tag,
no_ipv6_route_tag_cmd,
- "no ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE) tag <1-65535>",
+ "no ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE) tag <1-65535> {label WORD}",
NO_STR
IP_STR
"Establish static routes\n"
"IPv6 gateway address\n"
"IPv6 gateway interface name\n"
"Set tag for this route\n"
- "Tag value\n")
+ "Tag value\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, argv[2], NULL, NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, argv[2], NULL, NULL, argv[3]);
}
DEFUN (no_ipv6_route_flags,
"Emit an ICMP unreachable when matched\n"
"Silently discard pkts when matched\n")
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], NULL, NULL, NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], NULL, NULL, NULL, NULL);
}
DEFUN (no_ipv6_route_flags_tag,
"Set tag for this route\n"
"Tag value\n")
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], argv[3], NULL, NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], argv[3], NULL, NULL, NULL);
}
DEFUN (no_ipv6_route_ifname,
no_ipv6_route_ifname_cmd,
- "no ipv6 route X:X::X:X/M X:X::X:X INTERFACE",
+ "no ipv6 route X:X::X:X/M X:X::X:X INTERFACE {label WORD}",
NO_STR
IP_STR
"Establish static routes\n"
"IPv6 destination prefix (e.g. 3ffe:506::/32)\n"
"IPv6 gateway address\n"
- "IPv6 gateway interface name\n")
+ "IPv6 gateway interface name\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, NULL, NULL, NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, NULL, NULL, NULL, argv[3]);
}
DEFUN (no_ipv6_route_ifname_tag,
no_ipv6_route_ifname_tag_cmd,
- "no ipv6 route X:X::X:X/M X:X::X:X INTERFACE tag <1-65535>",
+ "no ipv6 route X:X::X:X/M X:X::X:X INTERFACE tag <1-65535> {label WORD}",
NO_STR
IP_STR
"Establish static routes\n"
"IPv6 gateway address\n"
"IPv6 gateway interface name\n"
"Set tag for this route\n"
- "Tag value\n")
+ "Tag value\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, argv[3], NULL, NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, argv[3], NULL, NULL, argv[4]);
}
DEFUN (no_ipv6_route_ifname_flags,
"Emit an ICMP unreachable when matched\n"
"Silently discard pkts when matched\n")
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], NULL, NULL, NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], NULL, NULL, NULL, NULL);
}
DEFUN (no_ipv6_route_ifname_flags_tag,
"Set tag for this route\n"
"Tag value\n")
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], argv[4], NULL, NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], argv[4], NULL, NULL, NULL);
}
DEFUN (no_ipv6_route_pref,
no_ipv6_route_pref_cmd,
- "no ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE) <1-255>",
+ "no ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE) <1-255> {label WORD}",
NO_STR
IP_STR
"Establish static routes\n"
"IPv6 destination prefix (e.g. 3ffe:506::/32)\n"
"IPv6 gateway address\n"
"IPv6 gateway interface name\n"
- "Distance value for this prefix\n")
+ "Distance value for this prefix\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, NULL, argv[2], NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, NULL, argv[2], NULL, argv[3]);
}
DEFUN (no_ipv6_route_pref_tag,
no_ipv6_route_pref_tag_cmd,
- "no ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE) tag <1-65535> <1-255>",
+ "no ipv6 route X:X::X:X/M (X:X::X:X|INTERFACE) tag <1-65535> <1-255> {label WORD}",
NO_STR
IP_STR
"Establish static routes\n"
"IPv6 gateway interface name\n"
"Set tag for this route\n"
"Tag value\n"
- "Distance value for this prefix\n")
+ "Distance value for this prefix\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, argv[2], argv[3], NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, argv[2], argv[3], NULL, argv[4]);
}
DEFUN (no_ipv6_route_flags_pref,
"Distance value for this prefix\n")
{
/* We do not care about argv[2] */
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], NULL, argv[3], NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], NULL, argv[3], NULL, NULL);
}
DEFUN (no_ipv6_route_flags_pref_tag,
"Distance value for this prefix\n")
{
/* We do not care about argv[2] */
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], argv[3], argv[4], NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], argv[3], argv[4], NULL, NULL);
}
DEFUN (no_ipv6_route_ifname_pref,
no_ipv6_route_ifname_pref_cmd,
- "no ipv6 route X:X::X:X/M X:X::X:X INTERFACE <1-255>",
+ "no ipv6 route X:X::X:X/M X:X::X:X INTERFACE <1-255> {label WORD}",
NO_STR
IP_STR
"Establish static routes\n"
"IPv6 destination prefix (e.g. 3ffe:506::/32)\n"
"IPv6 gateway address\n"
"IPv6 gateway interface name\n"
- "Distance value for this prefix\n")
+ "Distance value for this prefix\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, NULL, argv[3], NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, NULL, argv[3], NULL, argv[4]);
}
DEFUN (no_ipv6_route_ifname_pref_tag,
no_ipv6_route_ifname_pref_tag_cmd,
- "no ipv6 route X:X::X:X/M X:X::X:X INTERFACE tag <1-65535> <1-255>",
+ "no ipv6 route X:X::X:X/M X:X::X:X INTERFACE tag <1-65535> <1-255> {label WORD}",
NO_STR
IP_STR
"Establish static routes\n"
"IPv6 gateway interface name\n"
"Set tag for this route\n"
"Tag value\n"
- "Distance value for this prefix\n")
+ "Distance value for this prefix\n"
+ "Specify label(s) for this route\n"
+ "One or more labels separated by '/'\n")
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, argv[3], argv[4], NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, argv[3], argv[4], NULL, argv[5]);
}
DEFUN (no_ipv6_route_ifname_flags_pref,
"Silently discard pkts when matched\n"
"Distance value for this prefix\n")
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], NULL, argv[4], NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], NULL, argv[4], NULL, NULL);
}
DEFUN (no_ipv6_route_ifname_flags_pref_tag,
"Tag value\n"
"Distance value for this prefix\n")
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], argv[4], argv[5], NULL);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], argv[4], argv[5], NULL, NULL);
}
DEFUN (ipv6_route_vrf,
"IPv6 gateway interface name\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, NULL, NULL, argv[2]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, NULL, NULL, argv[2], NULL);
}
DEFUN (ipv6_route_tag_vrf,
"Tag value\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, argv[2], NULL, argv[3]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, argv[2], NULL, argv[3], NULL);
}
DEFUN (ipv6_route_flags_vrf,
"Silently discard pkts when matched\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], NULL, NULL, argv[3]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], NULL, NULL, argv[3], NULL);
}
DEFUN (ipv6_route_flags_tag_vrf,
"Tag value\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], argv[3], NULL, argv[4]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], argv[3], NULL, argv[4], NULL);
}
DEFUN (ipv6_route_ifname_vrf,
"IPv6 gateway interface name\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, NULL, NULL, argv[3]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, NULL, NULL, argv[3], NULL);
}
DEFUN (ipv6_route_ifname_tag_vrf,
ipv6_route_ifname_tag_vrf_cmd,
"Tag value\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, argv[3], NULL, argv[4]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, argv[3], NULL, argv[4], NULL);
}
DEFUN (ipv6_route_ifname_flags_vrf,
"Silently discard pkts when matched\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], NULL, NULL, argv[4]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], NULL, NULL, argv[4], NULL);
}
DEFUN (ipv6_route_ifname_flags_tag_vrf,
"Tag value\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], argv[4], NULL, argv[5]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], argv[4], NULL, argv[5], NULL);
}
DEFUN (ipv6_route_pref_vrf,
"Distance value for this prefix\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, NULL, argv[2], argv[3]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, NULL, argv[2], argv[3], NULL);
}
DEFUN (ipv6_route_pref_tag_vrf,
"Distance value for this prefix\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, argv[2], argv[3], argv[4]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, NULL, argv[2], argv[3], argv[4], NULL);
}
DEFUN (ipv6_route_flags_pref_vrf,
"Distance value for this prefix\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], NULL, argv[3], argv[4]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], NULL, argv[3], argv[4], NULL);
}
DEFUN (ipv6_route_flags_pref_tag_vrf,
"Distance value for this prefix\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], argv[3], argv[4], argv[5]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], NULL, argv[2], argv[3], argv[4], argv[5], NULL);
}
DEFUN (ipv6_route_ifname_pref_vrf,
"Distance value for this prefix\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, NULL, argv[3], argv[4]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, NULL, argv[3], argv[4], NULL);
}
DEFUN (ipv6_route_ifname_pref_tag_vrf,
"Distance value for this prefix\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, argv[3], argv[4], argv[5]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], NULL, argv[3], argv[4], argv[5], NULL);
}
DEFUN (ipv6_route_ifname_flags_pref_vrf,
"Distance value for this prefix\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], NULL, argv[4], argv[5]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], NULL, argv[4], argv[5], NULL);
}
DEFUN (ipv6_route_ifname_flags_pref_tag_vrf,
"Distance value for this prefix\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], argv[4], argv[5], argv[6]);
+ return static_ipv6_func (vty, 1, argv[0], argv[1], argv[2], argv[3], argv[4], argv[5], argv[6], NULL);
}
DEFUN (no_ipv6_route_vrf,
"IPv6 gateway interface name\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, NULL, NULL, argv[2]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, NULL, NULL, argv[2], NULL);
}
DEFUN (no_ipv6_route_tag_vrf,
"Tag value\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, argv[2], NULL, argv[3]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, argv[2], NULL, argv[3], NULL);
}
DEFUN (no_ipv6_route_flags_vrf,
"Silently discard pkts when matched\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], NULL, NULL, argv[3]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], NULL, NULL, argv[3], NULL);
}
DEFUN (no_ipv6_route_flags_tag_vrf,
"Tag value\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], argv[3], NULL, argv[4]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], argv[3], NULL, argv[4], NULL);
}
DEFUN (no_ipv6_route_ifname_vrf,
"IPv6 gateway interface name\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, NULL, NULL, argv[3]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, NULL, NULL, argv[3], NULL);
}
DEFUN (no_ipv6_route_ifname_tag_vrf,
"Tag value\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, argv[3], NULL, argv[4]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, argv[3], NULL, argv[4], NULL);
}
DEFUN (no_ipv6_route_ifname_flags_vrf,
"Silently discard pkts when matched\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], NULL, NULL, argv[4]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], NULL, NULL, argv[4], NULL);
}
DEFUN (no_ipv6_route_ifname_flags_tag_vrf,
"Tag value\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], argv[4], NULL, argv[5]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], argv[4], NULL, argv[5], NULL);
}
DEFUN (no_ipv6_route_pref_vrf,
"Distance value for this prefix\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, NULL, argv[2], argv[3]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, NULL, argv[2], argv[3], NULL);
}
DEFUN (no_ipv6_route_pref_tag_vrf,
"Distance value for this prefix\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, argv[2], argv[3], argv[4]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, NULL, argv[2], argv[3], argv[4], NULL);
}
DEFUN (no_ipv6_route_flags_pref_vrf,
VRF_CMD_HELP_STR)
{
/* We do not care about argv[2] */
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], NULL, argv[3], argv[4]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], NULL, argv[3], argv[4], NULL);
}
DEFUN (no_ipv6_route_flags_pref_tag_vrf,
VRF_CMD_HELP_STR)
{
/* We do not care about argv[2] */
- return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], argv[3], argv[4], argv[5]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], NULL, argv[2], argv[3], argv[4], argv[5], NULL);
}
DEFUN (no_ipv6_route_ifname_pref_vrf,
"Distance value for this prefix\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, NULL, argv[3], argv[4]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, NULL, argv[3], argv[4], NULL);
}
DEFUN (no_ipv6_route_ifname_pref_tag_vrf,
"Distance value for this prefix\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, argv[3], argv[4], argv[5]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], NULL, argv[3], argv[4], argv[5], NULL);
}
DEFUN (no_ipv6_route_ifname_flags_pref_vrf,
"Distance value for this prefix\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], NULL, argv[4], argv[5]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], NULL, argv[4], argv[5], NULL);
}
DEFUN (no_ipv6_route_ifname_flags_pref_tag_vrf,
"Distance value for this prefix\n"
VRF_CMD_HELP_STR)
{
- return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], argv[4], argv[5], argv[6]);
+ return static_ipv6_func (vty, 0, argv[0], argv[1], argv[2], argv[3], argv[4], argv[5], argv[6], NULL);
}
DEFUN (show_ipv6_route,
vty_out (vty, " vrf %s", zvrf->name);
}
+ /* Label information */
+ if (si->snh_label.num_labels)
+ vty_out (vty, " label %s",
+ mpls_label2str (si->snh_label.num_labels,
+ si->snh_label.label, buf, sizeof buf));
+
vty_out (vty, "%s", VTY_NEWLINE);
write = 1;