return CMD_WARNING_CONFIG_FAILED;
}
- if (gate_str == NULL) {
- vty_out(vty, "%% No Nexthop Information\n");
- return CMD_WARNING_CONFIG_FAILED;
- }
-
out_label = MPLS_LABEL_IMPLICIT_NULL; /* as initialization */
label = atoi(inlabel_str);
if (!IS_MPLS_UNRESERVED_LABEL(label)) {
}
in_label = label;
+ gtype = NEXTHOP_TYPE_BLACKHOLE; /* as initialization */
- /* Gateway is a IPv4 or IPv6 nexthop. */
- ret = inet_pton(AF_INET6, gate_str, &gate.ipv6);
- if (ret == 1)
- gtype = NEXTHOP_TYPE_IPV6;
- else {
- ret = inet_pton(AF_INET, gate_str, &gate.ipv4);
+ if (gate_str) {
+ /* Gateway is a IPv4 or IPv6 nexthop. */
+ ret = inet_pton(AF_INET6, gate_str, &gate.ipv6);
if (ret == 1)
- gtype = NEXTHOP_TYPE_IPV4;
+ gtype = NEXTHOP_TYPE_IPV6;
else {
- vty_out(vty, "%% Invalid nexthop\n");
- return CMD_WARNING_CONFIG_FAILED;
+ ret = inet_pton(AF_INET, gate_str, &gate.ipv4);
+ if (ret == 1)
+ gtype = NEXTHOP_TYPE_IPV4;
+ else {
+ vty_out(vty, "%% Invalid nexthop\n");
+ return CMD_WARNING_CONFIG_FAILED;
+ }
}
}