public interface OdlMappingserviceService
extends org.opendaylight.yangtools.yang.binding.RpcService
rpc remove-all-mappings { input { } output { } } rpc get-all-keys { input { } output { list eid-authkey-item { key "eid-authkey-item-id"; leaf eid-authkey-item-id { type string; } container mapping-authkey { leaf key-string { type string; } leaf key-type { type uint16; } } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses eid-container; uses mapping-authkey-container; } } } rpc remove-all-keys { input { } output { } } rpc get-mapping-with-xtr-id { input { container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } leaf xtr-id { type xtr-id; } } output { container mapping-record { leaf recordTtl { type int32; } leaf mapVersion { type int16; } leaf action { type enumeration; } leaf authoritative { type boolean; } leaf xtr-id { type xtr-id; } leaf site-id { type site-id; } leaf source-rloc { type ip-address-binary; } leaf timestamp { type int64; } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } list LocatorRecord { key "locator-id"; leaf locator-id { type string; } leaf priority { type uint8; } leaf weight { type uint8; } leaf multicastPriority { type uint8; } leaf multicastWeight { type uint8; } leaf localLocator { type boolean; } leaf rlocProbed { type boolean; } leaf routed { type boolean; } container rloc { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses rloc-container; } uses eid-container; uses mapping-record-metadata; uses LocatorRecords; } } } rpc update-key { input { container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } container mapping-authkey { leaf key-string { type string; } leaf key-type { type uint16; } } } output { } } rpc get-mapping { input { container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } } output { container mapping-record { leaf recordTtl { type int32; } leaf mapVersion { type int16; } leaf action { type enumeration; } leaf authoritative { type boolean; } leaf xtr-id { type xtr-id; } leaf site-id { type site-id; } leaf source-rloc { type ip-address-binary; } leaf timestamp { type int64; } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } list LocatorRecord { key "locator-id"; leaf locator-id { type string; } leaf priority { type uint8; } leaf weight { type uint8; } leaf multicastPriority { type uint8; } leaf multicastWeight { type uint8; } leaf localLocator { type boolean; } leaf rlocProbed { type boolean; } leaf routed { type boolean; } container rloc { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses rloc-container; } uses eid-container; uses mapping-record-metadata; uses LocatorRecords; } } } rpc get-mappings { input { list eid-item { key "eid-item-id"; leaf eid-item-id { type string; } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses eid-container; } } output { list mapping-record-item { key "mapping-record-item-id"; leaf mapping-record-item-id { type string; } container mapping-record { leaf recordTtl { type int32; } leaf mapVersion { type int16; } leaf action { type enumeration; } leaf authoritative { type boolean; } leaf xtr-id { type xtr-id; } leaf site-id { type site-id; } leaf source-rloc { type ip-address-binary; } leaf timestamp { type int64; } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } list LocatorRecord { key "locator-id"; leaf locator-id { type string; } leaf priority { type uint8; } leaf weight { type uint8; } leaf multicastPriority { type uint8; } leaf multicastWeight { type uint8; } leaf localLocator { type boolean; } leaf rlocProbed { type boolean; } leaf routed { type boolean; } container rloc { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses rloc-container; } uses eid-container; uses mapping-record-metadata; uses LocatorRecords; } uses mapping-record-container; } } } rpc get-keys { input { list eid-item { key "eid-item-id"; leaf eid-item-id { type string; } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses eid-container; } } output { list eid-authkey-item { key "eid-authkey-item-id"; leaf eid-authkey-item-id { type string; } container mapping-authkey { leaf key-string { type string; } leaf key-type { type uint16; } } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses eid-container; uses mapping-authkey-container; } } } rpc remove-mappings { input { list eid-item { key "eid-item-id"; leaf eid-item-id { type string; } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses eid-container; } } output { } } rpc get-key { input { container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } } output { container mapping-authkey { leaf key-string { type string; } leaf key-type { type uint16; } } } } rpc remove-keys { input { list eid-item { key "eid-item-id"; leaf eid-item-id { type string; } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses eid-container; } } output { } } rpc get-all-mappings { input { } output { list mapping-record-item { key "mapping-record-item-id"; leaf mapping-record-item-id { type string; } container mapping-record { leaf recordTtl { type int32; } leaf mapVersion { type int16; } leaf action { type enumeration; } leaf authoritative { type boolean; } leaf xtr-id { type xtr-id; } leaf site-id { type site-id; } leaf source-rloc { type ip-address-binary; } leaf timestamp { type int64; } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } list LocatorRecord { key "locator-id"; leaf locator-id { type string; } leaf priority { type uint8; } leaf weight { type uint8; } leaf multicastPriority { type uint8; } leaf multicastWeight { type uint8; } leaf localLocator { type boolean; } leaf rlocProbed { type boolean; } leaf routed { type boolean; } container rloc { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses rloc-container; } uses eid-container; uses mapping-record-metadata; uses LocatorRecords; } uses mapping-record-container; } } } rpc add-keys { input { list eid-authkey-item { key "eid-authkey-item-id"; leaf eid-authkey-item-id { type string; } container mapping-authkey { leaf key-string { type string; } leaf key-type { type uint16; } } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses eid-container; uses mapping-authkey-container; } } output { } } rpc remove-key { input { container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } } output { } } rpc update-mappings { input { list mapping-record-item { key "mapping-record-item-id"; leaf mapping-record-item-id { type string; } container mapping-record { leaf recordTtl { type int32; } leaf mapVersion { type int16; } leaf action { type enumeration; } leaf authoritative { type boolean; } leaf xtr-id { type xtr-id; } leaf site-id { type site-id; } leaf source-rloc { type ip-address-binary; } leaf timestamp { type int64; } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } list LocatorRecord { key "locator-id"; leaf locator-id { type string; } leaf priority { type uint8; } leaf weight { type uint8; } leaf multicastPriority { type uint8; } leaf multicastWeight { type uint8; } leaf localLocator { type boolean; } leaf rlocProbed { type boolean; } leaf routed { type boolean; } container rloc { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses rloc-container; } uses eid-container; uses mapping-record-metadata; uses LocatorRecords; } uses mapping-record-container; } } output { } } rpc remove-all-operational-content { input { } output { } } rpc remove-mapping { input { container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } } output { } } rpc update-keys { input { list eid-authkey-item { key "eid-authkey-item-id"; leaf eid-authkey-item-id { type string; } container mapping-authkey { leaf key-string { type string; } leaf key-type { type uint16; } } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses eid-container; uses mapping-authkey-container; } } output { } } rpc add-mappings { input { list mapping-record-item { key "mapping-record-item-id"; leaf mapping-record-item-id { type string; } container mapping-record { leaf recordTtl { type int32; } leaf mapVersion { type int16; } leaf action { type enumeration; } leaf authoritative { type boolean; } leaf xtr-id { type xtr-id; } leaf site-id { type site-id; } leaf source-rloc { type ip-address-binary; } leaf timestamp { type int64; } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } list LocatorRecord { key "locator-id"; leaf locator-id { type string; } leaf priority { type uint8; } leaf weight { type uint8; } leaf multicastPriority { type uint8; } leaf multicastWeight { type uint8; } leaf localLocator { type boolean; } leaf rlocProbed { type boolean; } leaf routed { type boolean; } container rloc { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses rloc-container; } uses eid-container; uses mapping-record-metadata; uses LocatorRecords; } uses mapping-record-container; } } output { } } rpc add-mapping { input { container mapping-record { leaf recordTtl { type int32; } leaf mapVersion { type int16; } leaf action { type enumeration; } leaf authoritative { type boolean; } leaf xtr-id { type xtr-id; } leaf site-id { type site-id; } leaf source-rloc { type ip-address-binary; } leaf timestamp { type int64; } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } list LocatorRecord { key "locator-id"; leaf locator-id { type string; } leaf priority { type uint8; } leaf weight { type uint8; } leaf multicastPriority { type uint8; } leaf multicastWeight { type uint8; } leaf localLocator { type boolean; } leaf rlocProbed { type boolean; } leaf routed { type boolean; } container rloc { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses rloc-container; } uses eid-container; uses mapping-record-metadata; uses LocatorRecords; } } output { } } rpc add-key { input { container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } container mapping-authkey { leaf key-string { type string; } leaf key-type { type uint16; } } } output { } } rpc update-mapping { input { container mapping-record { leaf recordTtl { type int32; } leaf mapVersion { type int16; } leaf action { type enumeration; } leaf authoritative { type boolean; } leaf xtr-id { type xtr-id; } leaf site-id { type site-id; } leaf source-rloc { type ip-address-binary; } leaf timestamp { type int64; } container eid { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } list LocatorRecord { key "locator-id"; leaf locator-id { type string; } leaf priority { type uint8; } leaf weight { type uint8; } leaf multicastPriority { type uint8; } leaf multicastWeight { type uint8; } leaf localLocator { type boolean; } leaf rlocProbed { type boolean; } leaf routed { type boolean; } container rloc { leaf address-type { type lisp-address-family-ref; } leaf virtual-network-id { type instance-id-type; } choice address { case afi-list { container afi-list { leaf-list address-list { type simple-address; } } } case application-data { container application-data { leaf address { type simple-address; } leaf protocol { type uint8; } leaf ip-tos { type int32; } leaf local-port-low { type port-number; } leaf local-port-high { type port-number; } leaf remote-port-low { type port-number; } leaf remote-port-high { type port-number; } } } case as-number { leaf as-number { type as-number; } } case as-number-lcaf { container as-number-lcaf { leaf as { type as-number; } leaf address { type simple-address; } } } case distinguished-name { leaf distinguished-name { type distinguished-name-type; } } case explicit-locator-path { container explicit-locator-path { list hop { key "hop-id"; leaf hop-id { type string; } leaf address { type simple-address; } leaf lrs-bits { type bits; } } } } case geo-coordinates { container geo-coordinates { leaf latitude { type bits; } leaf latitude-degrees { type uint8; } leaf latitude-minutes { type uint8; } leaf latitude-seconds { type uint8; } leaf longitude { type bits; } leaf longitude-degrees { type uint16; } leaf longitude-minutes { type uint8; } leaf longitude-seconds { type uint8; } leaf altitude { type int32; } leaf address { type simple-address; } } } case instance-id { container instance-id { leaf iid { type instance-id-type; } leaf mask-length { type uint8; } leaf address { type simple-address; } } } case ipv4 { leaf ipv4 { type ipv4-address; } } case ipv4-binary { leaf ipv4-binary { type ipv4-address-binary; } } case ipv4-prefix { leaf ipv4-prefix { type ipv4-prefix; } } case ipv4-prefix-binary { leaf ipv4-address-binary { type ipv4-address-binary; } leaf ipv4-mask-length { type uint8; } } case ipv6 { leaf ipv6 { type ipv6-address; } } case ipv6-binary { leaf ipv6-binary { type ipv6-address-binary; } } case ipv6-prefix { leaf ipv6-prefix { type ipv6-prefix; } } case ipv6-prefix-binary { leaf ipv6-address-binary { type ipv6-address-binary; } leaf ipv6-mask-length { type uint8; } } case key-value-address { container key-value-address { leaf key { type simple-address; } leaf value { type simple-address; } } } case mac { leaf mac { type mac-address; } } case nat-traversal { container nat-traversal { leaf ms-udp-port { type uint16; } leaf etr-udp-port { type uint16; } leaf global-etr-rloc { type simple-address; } leaf ms-rloc { type simple-address; } leaf private-etr-rloc { type simple-address; } leaf-list rtr-rlocs { type simple-address; } } } case no-address { leaf no-address { type empty; } } case null-address { container null-address { leaf address { type empty; } } } case service-path { container service-path { leaf service-path-id { type service-path-id-type; } leaf service-index { type uint8; } } } case source-dest-key { container source-dest-key { leaf source { type simple-address; } leaf dest { type simple-address; } } } } uses augmented-lisp-address; } uses rloc-container; } uses eid-container; uses mapping-record-metadata; uses LocatorRecords; } } output { } }
Modifier and Type | Method and Description |
---|---|
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
addKey(AddKeyInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
addKeys(AddKeysInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
addMapping(AddMappingInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
addMappings(AddMappingsInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<GetAllKeysOutput>> |
getAllKeys() |
Future<org.opendaylight.yangtools.yang.common.RpcResult<GetAllMappingsOutput>> |
getAllMappings() |
Future<org.opendaylight.yangtools.yang.common.RpcResult<GetKeyOutput>> |
getKey(GetKeyInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<GetKeysOutput>> |
getKeys(GetKeysInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<GetMappingOutput>> |
getMapping(GetMappingInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<GetMappingsOutput>> |
getMappings(GetMappingsInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<GetMappingWithXtrIdOutput>> |
getMappingWithXtrId(GetMappingWithXtrIdInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
removeAllKeys() |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
removeAllMappings() |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
removeAllOperationalContent() |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
removeKey(RemoveKeyInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
removeKeys(RemoveKeysInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
removeMapping(RemoveMappingInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
removeMappings(RemoveMappingsInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
updateKey(UpdateKeyInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
updateKeys(UpdateKeysInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
updateMapping(UpdateMappingInput input) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
updateMappings(UpdateMappingsInput input) |
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> removeAllMappings()
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<GetAllKeysOutput>> getAllKeys()
java.util.concurrent.Future
allKeys
, or null
if not present@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> removeAllKeys()
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<GetMappingWithXtrIdOutput>> getMappingWithXtrId(GetMappingWithXtrIdInput input)
java.util.concurrent.Future
mappingWithXtrId
, or null
if not present@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> updateKey(UpdateKeyInput input)
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<GetMappingOutput>> getMapping(GetMappingInput input)
java.util.concurrent.Future
mapping
, or null
if not present@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<GetMappingsOutput>> getMappings(GetMappingsInput input)
java.util.concurrent.Future
mappings
, or null
if not present@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<GetKeysOutput>> getKeys(GetKeysInput input)
java.util.concurrent.Future
keys
, or null
if not present@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> removeMappings(RemoveMappingsInput input)
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<GetKeyOutput>> getKey(GetKeyInput input)
java.util.concurrent.Future
key
, or null
if not present@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> removeKeys(RemoveKeysInput input)
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<GetAllMappingsOutput>> getAllMappings()
java.util.concurrent.Future
allMappings
, or null
if not present@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> addKeys(AddKeysInput input)
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> removeKey(RemoveKeyInput input)
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> updateMappings(UpdateMappingsInput input)
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> removeAllOperationalContent()
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> removeMapping(RemoveMappingInput input)
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> updateKeys(UpdateKeysInput input)
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> addMappings(AddMappingsInput input)
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> addMapping(AddMappingInput input)
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> addKey(AddKeyInput input)
@CheckReturnValue Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> updateMapping(UpdateMappingInput input)
Copyright © 2019 OpenDaylight. All rights reserved.