description
"Defines the range of values for an Instance ID.";
}
- typedef distinguished-name-type {
+ typedef distinguished-name-type {
type string;
description
"Distinguished Name address.";
description
"Union of address types that can be part of LCAFs.";
}
+
typedef lisp-address-family-ref {
type identityref {
base lisp-address-family;
description
"LCAF types reference.";
}
- grouping lcaf-address {
+
+ grouping lisp-address {
description
- "Group of all the LCAF types.";
- leaf lcaf-type {
- type lcaf-ref;
+ "Generic LISP address.";
+ leaf address-type {
+ type lisp-address-family-ref;
mandatory true;
description
- "Enumeration of LCAF types.";
+ "Type of the LISP address.";
+ }
+ leaf virtual-network-id {
+ type instance-id-type;
+ description
+ "Virtual Network Identifier (instance-id) of the address.";
}
choice address {
- description "The LCAF addresses.";
+ description
+ "Various LISP address types, including IP, MAC, and LCAF.";
+
+ leaf no-address {
+ when "../../address-type = 'laddr:no-addr-afi'" {
+ description
+ "When AFI is 0.";
+ }
+ type empty;
+ description
+ "No address.";
+ }
+ leaf ipv4 {
+ when "../../address-type = 'laddr:ipv4-afi'" {
+ description
+ "When AFI is IPv4.";
+ }
+ type inet:ipv4-address;
+ description
+ "IPv4 address.";
+ }
+ leaf ipv4-prefix {
+ when "../../address-type = 'laddr:ipv4-prefix-afi'" {
+ description
+ "When AFI is IPv4.";
+ }
+ type inet:ipv4-prefix;
+ description
+ "IPv4 prefix.";
+ }
+ leaf ipv6 {
+ when "../../address-type = 'laddr:ipv6-afi'" {
+ description
+ "When AFI is IPv6.";
+ }
+ type inet:ipv6-address;
+ description
+ "IPv6 address.";
+ }
+ leaf ipv6-prefix {
+ when "../../address-type = 'laddr:ipv6-prefix-afi'" {
+ description
+ "When AFI is IPv6.";
+ }
+ type inet:ipv6-prefix;
+ description
+ "IPv6 address.";
+ }
+ leaf mac {
+ when "../../address-type = 'laddr:mac-afi'" {
+ description
+ "When AFI is MAC.";
+ }
+ type yang:mac-address;
+ description
+ "MAC address.";
+ }
+ leaf distinguished-name {
+ when "../../address-type = 'laddr:distinguished-name-afi'" {
+ description
+ "When AFI is distinguished-name.";
+ }
+ type distinguished-name-type;
+ description
+ "Distinguished Name address.";
+ }
+ leaf as-number {
+ when "../../address-type = 'laddr:as-number-afi'" {
+ description
+ "When AFI is as-number.";
+ }
+ type inet:as-number;
+ description
+ "AS Number.";
+ }
container null-address {
- when "../../lcaf-type = null-address-lcaf" {
+ when "../../address-type = 'null-address-lcaf'" {
description
"When LCAF type is null.";
}
}
}
container afi-list {
- when "../../lcaf-type = afi-list-lcaf" {
+ when "../../address-type = 'afi-list-lcaf'" {
description
"When LCAF type is AFI-List.";
}
}
}
container instance-id {
- when "../../lcaf-type = instance-id-lcaf" {
+ when "../../address-type = 'instance-id-lcaf'" {
description
"When LCAF type is Instance-ID";
}
}
}
container as-number-lcaf {
- when "../../lcaf-type = as-number-lcaf-lcaf" {
+ when "../../address-type = 'as-number-lcaf'" {
description
"When LCAF type is AS-Number.";
}
}
}
container application-data {
- when "../../lcaf-type = application-data-lcaf" {
+ when "../../address-type = 'application-data-lcaf'" {
description
"When LCAF type is Application Data.";
}
}
}
container geo-coordinates {
- when "../../lcaf-type = geo-coordinates-lcaf" {
+ when "../../address-type = 'geo-coordinates-lcaf'" {
description
"When LCAF type is Geo-coordinates.";
}
}
}
container nat-traversal {
- when "../../lcaf-type = nat-traversal-lcaf" {
+ when "../../address-type = 'nat-traversal-lcaf'" {
description
"When LCAF type is NAT-Traversal.";
}
}
}
container explicit-locator-path {
- when "../../lcaf-type = explicit-locator-path-lcaf" {
+ when "../../address-type = 'explicit-locator-path-lcaf'" {
description
"When LCAF type type is Explicit Locator Path.";
}
}
}
container source-dest-key {
- when "../../lcaf-type = source-dest-key-lcaf" {
+ when "../../address-type = 'source-dest-key-lcaf'" {
description
"When LCAF type type is Source/Dest.";
}
description
"Source/Dest LCAF type.";
reference
- "http://tools.ietf.org/html/draft-ietf-lisp-lcaf-10
- #section-4.11";
+ "http://tools.ietf.org/html/draft-ietf-lisp-lcaf-10
+ #section-4.11";
leaf source {
type inet:ip-prefix;
description
}
}
container key-value-address {
- when "../../lcaf-type = key-value-address-lcaf" {
+ when "../../lcaf-type = 'key-value-address-lcaf'" {
description
"When LCAF type type is Key/Value Address.";
}
}
}
}
- grouping lisp-address {
- description
- "Generic LISP address.";
- leaf afi {
- type lisp-address-family-ref;
- mandatory true;
- description
- "LISP address family AFI.";
- }
- leaf virtual-network-id {
- type instance-id-type;
- description
- "Instance ID of the address.";
- }
- choice address {
- leaf no-address {
- when "../../afi = 'laddr:no-addr-afi'" {
- description
- "When AFI is 0.";
- }
- type empty;
- description
- "No address.";
- }
- leaf ipv4 {
- when "../../afi = 'laddr:ipv4-afi'" {
- description
- "When AFI is IPv4.";
- }
- type inet:ipv4-address;
- description
- "IPv4 address.";
- }
- leaf ipv4-prefix {
- when "../../afi = 'laddr:ipv4-prefix-afi'" {
- description
- "When AFI is IPv4.";
- }
- type inet:ipv4-prefix;
- description
- "IPv4 prefix.";
- }
- leaf ipv6 {
- when "../../afi = 'laddr:ipv6-afi'" {
- description
- "When AFI is IPv6.";
- }
- type inet:ipv6-address;
- description
- "IPv6 address.";
- }
- leaf ipv6-prefix {
- when "../../afi = 'laddr:ipv6-prefix-afi'" {
- description
- "When AFI is IPv6.";
- }
- type inet:ipv6-prefix;
- description
- "IPv6 address.";
- }
- leaf mac {
- when "../../afi = 'laddr:mac-afi'" {
- description
- "When AFI is MAC.";
- }
- type yang:mac-address;
- description
- "MAC address.";
- }
- leaf distinguished-name {
- when "../../afi = 'laddr:distinguished-name-afi'" {
- description
- "When AFI is distinguished-name.";
- }
- type distinguished-name-type;
- description
- "Distinguished Name address.";
- }
- leaf as-number {
- when "../../afi = 'laddr:as-number-afi'" {
- description
- "When AFI is as-number.";
- }
- type inet:as-number;
- description
- "AS Number.";
- }
- container lcaf {
- when "../../afi = 'laddr:lcaf'" {
- description
- "When AFI is LCAF.";
- }
- uses lcaf-address;
- description
- "LCAF address.";
- }
- description
- "Selection of address type.";
- }
- }
-}
+}
\ No newline at end of file