"Nexthop blackhole types.";
}
+ typedef nexthop-group-ref {
+ type leafref {
+ path "/frr-nexthop:frr-nexthop-group/frr-nexthop:nexthop-groups/frr-nexthop:name";
+ require-instance false;
+ }
+ }
+
/*
* Common nexthop attributes grouping.
*/
description
"The nexthop type.";
}
+
leaf vrf {
type frr-vrf:vrf-ref;
description
description
"The nexthop gateway address.";
}
+
leaf interface {
type frr-interface:interface-ref;
description
"The nexthop egress interface.";
}
+
leaf bh-type {
when "../nh-type = 'blackhole'";
type blackhole-type;
description
"A blackhole sub-type, if the nexthop is a blackhole type.";
}
+
leaf onlink {
when "../nh-type = 'ip4-ifindex' or
../nh-type = 'ip6-ifindex'";
}
}
+ grouping nexthop-grouping {
+ list nexthop {
+ key "nh-type gateway interface";
+ description
+ "A list of nexthop objects.";
+ uses frr-nexthop-attributes;
+ }
+ }
+
/*
* Single nexthop grouping.
*/
container frr-nexthops {
description
"FRR nexthop object.";
- list nexthop {
- key "nh-type gateway interface";
- description
- "A list of nexthop objects.";
- uses frr-nexthop-attributes;
- }
+ uses nexthop-grouping;
}
}
* Container for FRR nexthop group.
*/
grouping frr-nexthop-grouping {
- list nexthop-group {
+ list nexthop-groups {
key "name";
description
- "A group of nexthops.";
-
+ "List of nexthop groups, each contains group of nexthops";
leaf name {
type string;
description
}
}
+ /* Operational nexthop-group */
+ grouping frr-nexthop-group-operational {
+ container nexthop-group {
+ description
+ "A group of nexthops.";
+ leaf id {
+ type uint32;
+ description
+ "The nexthop-group id.";
+ }
+
+ uses nexthop-grouping;
+ }
+ }
+
container frr-nexthop-group {
description
"A nexthop-group, represented as a list of nexthop objects.";
uses frr-nexthop-grouping;
}
- typedef nexthop-group-ref {
- type leafref {
- require-instance false;
- path "/frr-nexthop:frr-nexthop-group/frr-nexthop:nexthop-group/frr-nexthop:name";
- }
- }
-
/*
* Augment weight attributes to nexthop group.
*/
- augment "/frr-nexthop-group/nexthop-group/frr-nexthops/nexthop" {
+ augment "/frr-nexthop-group/nexthop-groups/frr-nexthops/nexthop" {
leaf weight {
type uint8;
description