mirror of
https://github.com/FRRouting/frr.git
synced 2025-04-30 13:37:17 +02:00
lib, staticd, isisd: add B6.Encaps codepoint extensions
Add codepoint extensions for END.B6.Encaps instruction. Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
This commit is contained in:
parent
dc37bff8c0
commit
27fa9ac4db
|
@ -1007,6 +1007,10 @@ void isis_zebra_srv6_sid_install(struct isis_area *area,
|
|||
case SRV6_ENDPOINT_BEHAVIOR_END_X_PSP_USD:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_X_NEXT_CSID_PSP:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_X_NEXT_CSID_PSP_USD:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_NEXT_CSID:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED_NEXT_CSID:
|
||||
default:
|
||||
zlog_err(
|
||||
"ISIS-SRv6 (%s): unsupported SRv6 endpoint behavior %u",
|
||||
|
@ -1072,6 +1076,10 @@ void isis_zebra_srv6_sid_uninstall(struct isis_area *area,
|
|||
case SRV6_ENDPOINT_BEHAVIOR_END_X_PSP_USD:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_X_NEXT_CSID_PSP:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_X_NEXT_CSID_PSP_USD:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_NEXT_CSID:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED_NEXT_CSID:
|
||||
default:
|
||||
zlog_err(
|
||||
"ISIS-SRv6 (%s): unsupported SRv6 endpoint behavior %u",
|
||||
|
@ -1145,6 +1153,10 @@ void isis_zebra_srv6_adj_sid_install(struct srv6_adjacency *sra)
|
|||
case SRV6_ENDPOINT_BEHAVIOR_END_X_PSP_USD:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_X_NEXT_CSID_PSP:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_X_NEXT_CSID_PSP_USD:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_NEXT_CSID:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED_NEXT_CSID:
|
||||
default:
|
||||
zlog_err(
|
||||
"ISIS-SRv6 (%s): unsupported SRv6 endpoint behavior %u",
|
||||
|
@ -1199,6 +1211,10 @@ void isis_zebra_srv6_adj_sid_uninstall(struct srv6_adjacency *sra)
|
|||
case SRV6_ENDPOINT_BEHAVIOR_END_X_PSP_USD:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_X_NEXT_CSID_PSP:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_X_NEXT_CSID_PSP_USD:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_NEXT_CSID:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED_NEXT_CSID:
|
||||
default:
|
||||
zlog_err(
|
||||
"ISIS-SRv6 (%s): unsupported SRv6 endpoint behavior %u",
|
||||
|
|
12
lib/srv6.h
12
lib/srv6.h
|
@ -179,9 +179,11 @@ enum srv6_endpoint_behavior_codepoint {
|
|||
SRV6_ENDPOINT_BEHAVIOR_END_PSP = 0x0002,
|
||||
SRV6_ENDPOINT_BEHAVIOR_END_X = 0x0005,
|
||||
SRV6_ENDPOINT_BEHAVIOR_END_X_PSP = 0x0006,
|
||||
SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS = 0x000E,
|
||||
SRV6_ENDPOINT_BEHAVIOR_END_DT6 = 0x0012,
|
||||
SRV6_ENDPOINT_BEHAVIOR_END_DT4 = 0x0013,
|
||||
SRV6_ENDPOINT_BEHAVIOR_END_DT46 = 0x0014,
|
||||
SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED = 0x001B,
|
||||
SRV6_ENDPOINT_BEHAVIOR_END_PSP_USD = 0x001D,
|
||||
SRV6_ENDPOINT_BEHAVIOR_END_X_PSP_USD = 0x0021,
|
||||
SRV6_ENDPOINT_BEHAVIOR_END_NEXT_CSID = 0x002B,
|
||||
|
@ -193,6 +195,8 @@ enum srv6_endpoint_behavior_codepoint {
|
|||
SRV6_ENDPOINT_BEHAVIOR_END_DT6_USID = 0x003E,
|
||||
SRV6_ENDPOINT_BEHAVIOR_END_DT4_USID = 0x003F,
|
||||
SRV6_ENDPOINT_BEHAVIOR_END_DT46_USID = 0x0040,
|
||||
SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_NEXT_CSID = 0x005D,
|
||||
SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED_NEXT_CSID = 0x005E,
|
||||
SRV6_ENDPOINT_BEHAVIOR_OPAQUE = 0xFFFF,
|
||||
};
|
||||
|
||||
|
@ -215,6 +219,8 @@ srv6_endpoint_behavior_codepoint2str(enum srv6_endpoint_behavior_codepoint behav
|
|||
return "End.X";
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_X_PSP:
|
||||
return "End.X PSP";
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS:
|
||||
return "End.B6.Encaps";
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_X_PSP_USD:
|
||||
return "End.X PSP/USD";
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_DT6:
|
||||
|
@ -223,6 +229,8 @@ srv6_endpoint_behavior_codepoint2str(enum srv6_endpoint_behavior_codepoint behav
|
|||
return "End.DT4";
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_DT46:
|
||||
return "End.DT46";
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED:
|
||||
return "End.B6.Encaps.Red";
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_NEXT_CSID:
|
||||
return "uN";
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_NEXT_CSID_PSP:
|
||||
|
@ -241,6 +249,10 @@ srv6_endpoint_behavior_codepoint2str(enum srv6_endpoint_behavior_codepoint behav
|
|||
return "uDT4";
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_DT46_USID:
|
||||
return "uDT46";
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_NEXT_CSID:
|
||||
return "uB6.Encaps";
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED_NEXT_CSID:
|
||||
return "uB6.Encaps.Red";
|
||||
case SRV6_ENDPOINT_BEHAVIOR_OPAQUE:
|
||||
return "Opaque";
|
||||
}
|
||||
|
|
|
@ -1752,6 +1752,9 @@ static void srv6_sid_cli_show(struct vty *vty, const struct lyd_node *sid, bool
|
|||
case SRV6_ENDPOINT_BEHAVIOR_END_X_PSP:
|
||||
vty_out(vty, " behavior End.X PSP");
|
||||
break;
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS:
|
||||
vty_out(vty, " behavior End.B6.Encaps");
|
||||
break;
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_X_PSP_USD:
|
||||
vty_out(vty, " behavior End.X PSP/USD");
|
||||
break;
|
||||
|
@ -1764,6 +1767,9 @@ static void srv6_sid_cli_show(struct vty *vty, const struct lyd_node *sid, bool
|
|||
case SRV6_ENDPOINT_BEHAVIOR_END_DT46:
|
||||
vty_out(vty, " behavior End.DT46");
|
||||
break;
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED:
|
||||
vty_out(vty, " behavior End.B6.Encaps.Red");
|
||||
break;
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_NEXT_CSID:
|
||||
vty_out(vty, " behavior uN");
|
||||
break;
|
||||
|
@ -1791,6 +1797,12 @@ static void srv6_sid_cli_show(struct vty *vty, const struct lyd_node *sid, bool
|
|||
case SRV6_ENDPOINT_BEHAVIOR_END_DT46_USID:
|
||||
vty_out(vty, " behavior uDT46");
|
||||
break;
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_NEXT_CSID:
|
||||
vty_out(vty, " behavior uB6.Encaps");
|
||||
break;
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED_NEXT_CSID:
|
||||
vty_out(vty, " behavior uB6.Encaps.Red");
|
||||
break;
|
||||
case SRV6_ENDPOINT_BEHAVIOR_RESERVED:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_OPAQUE:
|
||||
vty_out(vty, " behavior unknown");
|
||||
|
|
|
@ -730,6 +730,10 @@ void static_zebra_srv6_sid_install(struct static_srv6_sid *sid)
|
|||
case SRV6_ENDPOINT_BEHAVIOR_END_X_PSP_USD:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_X_NEXT_CSID_PSP:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_X_NEXT_CSID_PSP_USD:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_NEXT_CSID:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED_NEXT_CSID:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_OPAQUE:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_RESERVED:
|
||||
zlog_warn("unsupported behavior: %u", sid->behavior);
|
||||
|
@ -853,6 +857,10 @@ void static_zebra_srv6_sid_uninstall(struct static_srv6_sid *sid)
|
|||
case SRV6_ENDPOINT_BEHAVIOR_END_X_NEXT_CSID_PSP_USD:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_OPAQUE:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_RESERVED:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_NEXT_CSID:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED_NEXT_CSID:
|
||||
zlog_warn("unsupported behavior: %u", sid->behavior);
|
||||
break;
|
||||
}
|
||||
|
@ -999,6 +1007,10 @@ extern void static_zebra_request_srv6_sid(struct static_srv6_sid *sid)
|
|||
case SRV6_ENDPOINT_BEHAVIOR_END_X_NEXT_CSID_PSP_USD:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_OPAQUE:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_RESERVED:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_NEXT_CSID:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED_NEXT_CSID:
|
||||
zlog_warn("unsupported behavior: %u", sid->behavior);
|
||||
return;
|
||||
}
|
||||
|
@ -1087,6 +1099,10 @@ extern void static_zebra_release_srv6_sid(struct static_srv6_sid *sid)
|
|||
case SRV6_ENDPOINT_BEHAVIOR_END_X_NEXT_CSID_PSP_USD:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_OPAQUE:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_RESERVED:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_NEXT_CSID:
|
||||
case SRV6_ENDPOINT_BEHAVIOR_END_B6_ENCAPS_RED_NEXT_CSID:
|
||||
zlog_warn("unsupported behavior: %u", sid->behavior);
|
||||
return;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue