diff options
| author | Yuqing Zhao <galadriel.zyq@alibaba-inc.com> | 2025-01-13 10:50:05 +0100 | 
|---|---|---|
| committer | Yuqing Zhao <galadriel.zyq@alibaba-inc.com> | 2025-01-18 10:28:49 +0000 | 
| commit | f792a215cdd5b747e8b8635c4033d26a7d317c5f (patch) | |
| tree | e5292e63f7755aa41bdf69090cce908f76f4a38b /yang | |
| parent | 76ed8f61d83358120a273b31853e591cc8e12585 (diff) | |
yang: Add SRv6 to frr-staticd YANG model
Signed-off-by: Yuqing Zhao <galadriel.zyq@alibaba-inc.com>
Diffstat (limited to 'yang')
| -rw-r--r-- | yang/frr-staticd.yang | 102 | 
1 files changed, 101 insertions, 1 deletions
diff --git a/yang/frr-staticd.yang b/yang/frr-staticd.yang index 1e6c54c006..904e2058e9 100644 --- a/yang/frr-staticd.yang +++ b/yang/frr-staticd.yang @@ -20,6 +20,10 @@ module frr-staticd {      prefix frr-bfdd;    } +  import frr-vrf { +    prefix frr-vrf; +  } +    organization      "FRRouting";    contact @@ -92,6 +96,64 @@ module frr-staticd {      }    } +  typedef srv6-behavior-codepoint { +    description +      "SRv6 Endpoint Behaviors Codepoints as per +      https://www.iana.org/assignments/segment-routing/segment-routing.xhtml."; +    type enumeration { +      enum End { +        value 1; +        description +          "This enum indicates End endpoint behavior."; +      } +      enum End.X { +        value 5; +        description +          "This enum indicates End.X endpoint behavior."; +      } +      enum End.DT6 { +        value 18; +        description +          "This enum indicates End.DT6 endpoint behavior."; +      } +      enum End.DT4 { +        value 19; +        description +          "This enum indicates End.DT4 endpoint behavior."; +      } +      enum End.DT46 { +        value 20; +        description +          "This enum indicates End.DT46 endpoint behavior."; +      } +      enum uN { +        value 43; +        description +          "This enum indicates End with NEXT-CSID endpoint behavior."; +      } +      enum uA { +        value 52; +        description +          "This enum indicates End.X with NEXT-CSID endpoint behavior."; +      } +      enum uDT6 { +        value 62; +        description +          "This enum indicates End.DT6 with NEXT-CSID endpoint behavior."; +      } +      enum uDT4 { +        value 63; +        description +          "This enum indicates End.DT4 with NEXT-CSID endpoint behavior."; +      } +      enum uDT46 { +        value 64; +        description +          "This enum indicates End.DT46 with NEXT-CSID endpoint behavior."; +      } +    } +  } +    augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol" {      container staticd {        when "../frr-rt:type = 'frr-staticd:staticd'" { @@ -144,6 +206,44 @@ module frr-staticd {            uses staticd-prefix-attributes;          }        } + +      container segment-routing { +        description +          "Segment Routing configuration."; +        container srv6 { +          description +            "Segment Routing over IPv6 (SRv6) configuration."; +          container static-sids { +            description +              "This container lists the SRv6 Static SIDs instantiated on the local node."; +            list sid { +              description +                "List of SRv6 Static SIDs."; +              key "sid"; +              leaf sid { +                type inet:ipv6-prefix; +                description +                  "Value of the SRv6 SID."; +              } +              leaf behavior { +                type srv6-behavior-codepoint; +                description +                  "Behavior bound to the SRv6 SID."; +              } +              leaf locator-name { +                type string; +                description +                  "SRv6 locator name."; +              } +              leaf vrf-name { +                type frr-vrf:vrf-ref; +                description +                  "The VRF name."; +              } +            } +          } +        } +      }      }    } -} +}
\ No newline at end of file  | 
