Cisco-IOS-XE-ospf-oper

This module contains a collection of YANG definitions for monitoring the operation of ospf protocol in a Network Element. Copyri...

  • Version: 2020-07-01

    Cisco-IOS-XE-ospf-oper@2020-07-01


    
      module Cisco-IOS-XE-ospf-oper {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XE-ospf-oper";
    
        prefix ospf-ios-xe-oper;
    
        import Cisco-IOS-XE-ospf-common {
          prefix ospf-ios-xe-common;
        }
        import ietf-inet-types {
          prefix inet;
        }
        import cisco-semver {
          prefix cisco-semver;
        }
    
        organization "Cisco Systems, Inc.";
    
        contact
          "Cisco Systems, Inc.
         Customer Service
    
         Postal: 170 W Tasman Drive
         San Jose, CA 95134
    
         Tel: +1 1800 553-NETS
    
         E-mail: cs-yang@cisco.com";
    
        description
          "This module contains a collection of YANG definitions for
         monitoring the operation of ospf protocol in a Network Element.
         Copyright (c) 2016-2020 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2020-07-01" {
          description
            "Added OSPFv3 interface, neighbor and LS database";
          reference
            "1.4.0";
    
        }
    
        revision "2019-05-01" {
          description "Added semantic version";
          reference
            "1.3.0";
    
        }
    
        revision "2018-10-29" {
          description
            "Cleaned up spelling errors in descriptions.";
          reference
            "1.2.0";
    
        }
    
        revision "2018-02-01" {
          description "Add Link State data";
          reference
            "1.1.0";
    
        }
    
        revision "2017-10-10" {
          description "Initial revision";
          reference
            "1.0.0";
    
        }
    
        cisco-semver:module-version "1.4.0";
        cisco-semver:module-version "1.3.0";
        cisco-semver:module-version "1.2.0";
        cisco-semver:module-version "1.1.0";
        cisco-semver:module-version "1.0.0";
    
        typedef address-family {
          type enumeration {
            enum "address-family-ipv4" {
              value 0;
            }
            enum "address-family-ipv6" {
              value 1;
            }
          }
          description "Address family type";
        }
    
        typedef ospf-operation-mode {
          type enumeration {
            enum "ospf-ships-in-the-night" {
              value 0;
              description
                "Ships-in-the-night operation mode in which each OSPF instance carries only one address family";
            }
          }
          description "OSPF operational mode";
        }
    
        typedef ospf-network-type {
          type enumeration {
            enum "ospf-broadcast" {
              value 0;
              description
                "OSPF broadcast multi-access network";
            }
            enum "ospf-non-broadcast" {
              value 1;
              description
                "OSPF Non-Broadcast Multi-Access (NBMA) network";
            }
            enum "ospf-point-to-multipoint" {
              value 2;
              description
                "OSPF point-to-multipoint network";
            }
            enum "ospf-point-to-point" {
              value 3;
              description
                "OSPF point-to-point network";
            }
          }
          description "OSPF network type";
        }
    
        typedef ospf-auth-type {
          type enumeration {
            enum "ospf-auth-ipsec" {
              value 0;
            }
            enum "ospf-auth-trailer-keychain" {
              value 1;
            }
            enum "ospf-auth-trailer-key" {
              value 2;
            }
            enum "ospf-auth-type-none" {
              value 3;
            }
          }
          description "OSPF Authentication type";
        }
    
        typedef nbr-state-type {
          type enumeration {
            enum "ospf-nbr-down" {
              value 1;
              description "Neighbor state down";
            }
            enum "ospf-nbr-attempt" {
              value 2;
              description
                "Neighbor attempt state";
            }
            enum "ospf-nbr-init" {
              value 3;
              description
                "Neighbor initial state";
            }
            enum "ospf-nbr-two-way" {
              value 4;
              description "Neighbor 2-way state";
            }
            enum "ospf-nbr-exchange-start" {
              value 5;
              description
                "Neighbor exchange start state";
            }
            enum "ospf-nbr-exchange" {
              value 6;
              description
                "Neighbor exchange state";
            }
            enum "ospf-nbr-loading" {
              value 7;
              description
                "Neighbor loading state";
            }
            enum "ospf-nbr-full" {
              value 8;
              description "Neighbor full state";
            }
          }
          description "OSPF neighbor state type";
        }
    
        typedef ospfv2-lsa-type {
          type enumeration {
            enum
              "ospfv2-lsa-type-unsupported-lsa-type" {
              value 0;
            }
            enum "ospfv2-lsa-type-router" {
              value 1;
            }
            enum "ospfv2-lsa-type-network" {
              value 2;
            }
            enum "ospfv2-lsa-type-summary-net" {
              value 3;
            }
            enum
              "ospfv2-lsa-type-summary-router" {
              value 4;
            }
            enum "ospfv2-lsa-type-as-external" {
              value 5;
            }
            enum "ospfv2-lsa-type-nssa" {
              value 6;
            }
            enum
              "ospfv2-lsa-type-link-scope-opaque" {
              value 7;
            }
            enum
              "ospfv2-lsa-type-area-scope-opaque" {
              value 8;
            }
            enum
              "ospfv2-lsa-type-as-scope-opaque" {
              value 9;
            }
          }
          description
            "Link State Advertisement type";
        }
    
        typedef ospf-external-metric-type {
          type enumeration {
            enum "ospf-ext-metric-type-1" {
              value 0;
            }
            enum "ospf-ext-metric-type-2" {
              value 1;
            }
          }
          description "External metric type";
        }
    
        typedef ospfv2-intf-state {
          type enumeration {
            enum "ospfv2-interface-state-down" {
              value 0;
              description
                "The interface is in the down state";
            }
            enum
              "ospfv2-interface-state-loopback" {
              value 1;
              description
                "The interface is in loopback state";
            }
            enum
              "ospfv2-interface-state-waiting" {
              value 2;
              description
                "The interface is in waiting state";
            }
            enum
              "ospfv2-interface-state-point-to-mpoint" {
              value 3;
              description
                "The interface is in point-to-multipoint state";
            }
            enum
              "ospfv2-interface-state-point-to-point" {
              value 4;
              description
                "The interface is in point-to-point state";
            }
            enum "ospfv2-interface-state-dr" {
              value 5;
              description
                "The interface is in the designated router state";
            }
            enum "ospfv2-interface-state-backup" {
              value 6;
              description
                "The interface is providing backup for another
               interface";
            }
            enum "ospfv2-interface-state-other" {
              value 7;
              description
                "The interface is in a state other than the ones
               numerated in this list";
            }
          }
          description
            "The possible states that an interface can be in";
        }
    
        typedef ospfv2-auth-type-selection {
          type enumeration {
            enum "ospfv2-auth-none" {
              value 0;
              description
                "No authentication configured";
            }
            enum "ospfv2-auth-trailer-key" {
              value 1;
              description
                "Authentication uses the trailer key";
            }
            enum "ospfv2-auth-trailer-key-chain" {
              value 2;
              description
                "Authentication uses a trailer key chain";
            }
          }
          description "The authentication type";
        }
    
        typedef ospfv2-crypto-algorithm {
          type enumeration {
            enum "ospfv2-crypto-cleartest" {
              value 0;
              description
                "The OSPFv2 authentication is sent as cleartext";
            }
            enum "ospfv2-crypto-md5" {
              value 1;
              description
                "The OSPFv2 authentication is encrypted using
               Message Digest 5";
            }
          }
          description "The algorithm in use";
        }
    
        typedef ospfv3-lsa-type {
          type enumeration {
            enum "ospfv3-lsa-type-unsupported" {
              value 0;
              description
                "OSPFv3 unsupported LSA";
            }
            enum "ospfv3-lsa-type-router" {
              value 1;
              description "OSPFv3 Router-LSA";
            }
            enum "ospfv3-lsa-type-network" {
              value 2;
              description "OSPFv3 Network-LSA";
            }
            enum
              "ospfv3-lsa-type-inter-area-prefix" {
              value 3;
              description
                "OSPFv3 Inter-Area-Prefix-LSA";
            }
            enum
              "ospfv3-lsa-type-inter-area-router" {
              value 4;
              description
                "OSPFv3 Inter-Area-Router-LSA";
            }
            enum "ospfv3-lsa-type-nssa" {
              value 5;
              description "OSPFv3-NSSA-LSA";
            }
            enum "ospfv3-lsa-type-prefix" {
              value 6;
              description
                "OSPFv3 Intra-Area-Prefix-LSA";
            }
          }
          description
            "Link State Advertisement type";
        }
    
        typedef ospfv3-rtr-lsa-lnk-type {
          type enumeration {
            enum "link-type-unknown" {
              value 0;
              description "Link type unknown";
            }
            enum "link-type-router" {
              value 1;
              description "Link type router";
            }
            enum "link-type-transit-network" {
              value 2;
              description
                "Link type transit network";
            }
            enum "link-type-reserved" {
              value 3;
              description "Link type reserved";
            }
            enum "link-type-virtual" {
              value 4;
              description "Link type virtual";
            }
          }
          description
            "OSPFv3 router LSA link type";
        }
    
        typedef ospfv3-ase-metric-type {
          type enumeration {
            enum "metric-type-unknown" {
              value 0;
              description "Unknown metric type";
            }
            enum "metric-type1" {
              value 1;
              description
                "Metric type 1, comparable directly to link state metric ";
            }
            enum "metric-type2" {
              value 2;
              description
                "Metric type 2, larger than any link state path.";
            }
          }
          description
            "OSPFv3 external LSA metric type";
        }
    
        typedef ospfv3-ipsec-auth-algo {
          type enumeration {
            enum "invalid" {
              value 0;
              description
                "Invalid authentication";
            }
            enum "md5" {
              value 1;
              description "MD5 authentication";
            }
            enum "sha1" {
              value 2;
              description "SHA1 authentication";
            }
          }
          description
            "IPSEC authentication algorithm type";
        }
    
        typedef lsa-flag-options {
          type bits {
            bit lsa-flag-options-dc {
              position 0;
            }
            bit lsa-flag-options-p {
              position 1;
            }
            bit lsa-flag-options-mc {
              position 2;
            }
            bit lsa-flag-options-e {
              position 3;
            }
            bit lsa-flag-options-upward {
              position 4;
            }
            bit lsa-flag-options-mt {
              position 5;
            }
            bit lsa-flag-options-r {
              position 6;
            }
            bit lsa-flag-options-af {
              position 7;
            }
          }
          description "LSA options";
        }
    
        typedef ospfv2-lsa-body-flags-options {
          type bits {
            bit ospv2-lsa-body-flag-options-v {
              position 0;
            }
            bit ospv2-lsa-body-flag-options-e {
              position 1;
            }
            bit ospv2-lsa-body-flag-options-b {
              position 2;
            }
          }
          description "OSPFv2 LSA body flags";
        }
    
        typedef ospfv3-lsa-options {
          type bits {
            bit ospfv3-lsa-flag-dc {
              position 0;
            }
            bit ospfv3-lsa-flag-r {
              position 1;
            }
            bit ospfv3-lsa-flag-n {
              position 2;
            }
            bit ospfv3-lsa-flag-e {
              position 3;
            }
            bit ospfv3-lsa-flag-v6 {
              position 4;
            }
            bit ospfv3-lsa-flag-af {
              position 5;
            }
          }
          description
            "The flags associated with the OSPFv3 LSA";
        }
    
        typedef ospfv3-lsa-body-flag-options {
          type bits {
            bit ospfv3-lsa-body-flag-options-v {
              position 0;
            }
            bit ospfv3-lsa-body-flag-options-e {
              position 1;
            }
            bit ospfv3-lsa-body-flag-options-b {
              position 2;
            }
            bit
              ospfv3-lsa-body-flag-options-nt {
              position 3;
            }
          }
          description "OSPFv3 LSA body flags";
        }
    
        typedef ospfv2-lsa-flag-options {
          type bits {
            bit ospfv2-lsa-flag-options-mt {
              position 0;
            }
            bit ospfv2-lsa-flag-options-e {
              position 1;
            }
            bit ospfv2-lsa-flag-options-mc {
              position 2;
            }
            bit ospfv2-lsa-flag-options-np {
              position 3;
            }
            bit ospfv2-lsa-flag-options-l {
              position 4;
            }
            bit ospfv2-lsa-flag-options-dc {
              position 5;
            }
            bit ospfv2-lsa-flag-options-o {
              position 6;
            }
            bit ospfv2-lsa-flag-options-dn {
              position 7;
            }
          }
          description
            "Link State Advertisement options";
        }
    
        typedef ospfv2-router-lsa-bits {
          type bits {
            bit ospfv2-router-lsa-bits-v {
              position 0;
            }
            bit ospfv2-router-lsa-bits-e {
              position 1;
            }
            bit ospfv2-router-lsa-bits-b {
              position 2;
            }
            bit ospfv2-router-lsa-bits-nt {
              position 3;
            }
          }
          description
            "Router Link State Advertisement bits";
        }
    
        typedef ospfv3-rtr-lsa-bits {
          type bits {
            bit ospfv3-rtr-lsa-bits-v {
              position 0;
              description
                "OSPFv3 router LSA bit for virtual endpoint";
            }
            bit ospfv3-rtr-lsa-bits-e {
              position 1;
              description
                "OSPFv3 router LSA bit for AS border endpoint";
            }
            bit ospfv3-rtr-lsa-bits-b {
              position 2;
              description
                "OSPFv3 router LSA bit for area border";
            }
            bit ospfv3-rtr-lsa-bits-nt {
              position 3;
              description
                "OSPFv3 router LSA bit for NSSA translation";
            }
          }
          description
            "OSPFv3 router link state advertisement bits";
        }
    
        typedef ospfv3-lsa-pfx-opts {
          type bits {
            bit nu-bit {
              position 0;
              description
                "NU Bit, when set, the prefix should be  excluded from IPv6 unicast calculations.";
            }
            bit la-bit {
              position 1;
              description
                "LA bit, when set, the prefix is actually an IPv6 interface address of the Advertising Router.";
            }
            bit p-bit {
              position 2;
              description
                "P bit, when set, the NSSA area prefix should be translated to an AS External LSA and advertised by the translating NSSA Border Router.";
            }
            bit dn-bit {
              position 3;
              description
                "DN bit, when set, the inter-area-prefix LSA or AS-external LSA prefix has been advertised as an L3 VPN prefix.";
            }
          }
          description
            "OSPFv3 LSA prefix options";
        }
    
        typedef ospfv3-lsa-flag-opts {
          type bits {
            bit af-bit {
              position 0;
              description
                "AF bit, when set, the router supports OSPFv3 Address Families as in RFC 5838.";
            }
            bit dc-bit {
              position 1;
              description
                "DC bit, when set,the router supports demand circuits.";
            }
            bit r-bit {
              position 2;
              description
                "R bit, when set, the originator is an active router.";
            }
            bit n-bit {
              position 3;
              description
                "N bit, when set, the router is attached to an NSSA";
            }
            bit e-bit {
              position 4;
              description
                "E bit, this bit describes the way AS-external LSAs are flooded";
            }
            bit v6-bit {
              position 5;
              description
                "V6 bit, if clear, the router or link should be excluded from IPv6 routing calculation";
            }
          }
          description "OSPFv3 LSA options";
        }
    
        container ospf-oper-data {
          config false;
          description
            "Operational state of ospf";
          container ospf-state {
            presence "tbl-ospf";
            description "OSPF operational state";
            leaf op-mode {
              type ospf-operation-mode;
              description "OSPF operation mode";
            }
    
            list ospf-instance {
              key "af router-id";
              description
                "OSPF routing protocol instance";
              leaf af {
                type address-family;
                description
                  "Address-family of the instance";
              }
    
              leaf router-id {
                type uint32;
                description
                  "Defined in RFC 2328. A 32-bit number that uniquely identifies the router";
              }
    
              list ospf-area {
                key "area-id";
                description "List of ospf areas";
                leaf area-id {
                  type uint32;
                  description "OSPF area ID";
                }
    
                list ospf-interface {
                  key "name";
                  description
                    "List of OSPF interfaces";
                  leaf name {
                    type string;
                    description "Interface name";
                  }
    
                  leaf network-type {
                    type ospf-network-type;
                    description "Network type";
                  }
    
                  leaf passive {
                    type boolean;
                    description
                      "Enable/Disable passive";
                  }
    
                  leaf demand-circuit {
                    type boolean;
                    description
                      "Enable/Disable demand circuit";
                  }
    
                  container multi-area {
                    description "Multi Area";
                    leaf multi-area-id {
                      type uint32;
                      description
                        "Multi-area ID";
                    }
    
                    leaf cost {
                      type uint16;
                      description
                        "Interface cost for multi-area";
                    }
                  }  // container multi-area
    
                  list static-neighbor {
                    key "address";
                    description
                      "Statically configured neighbors";
                    leaf address {
                      type inet:ip-address;
                      description
                        "Neighbor IP address";
                    }
    
                    leaf cost {
                      type uint16;
                      description
                        "Neighbor cost";
                    }
    
                    leaf poll-interval {
                      type uint16;
                      units "seconds";
                      description
                        "Neighbor polling interval in seconds";
                    }
                  }  // list static-neighbor
    
                  leaf node-flag {
                    type boolean;
                    description
                      "Set prefix as a node representative prefix";
                  }
    
                  container fast-reroute {
                    description
                      "Fast reroute config";
                    leaf candidate-disabled {
                      type boolean;
                      description
                        "Prevent the interface to be used as backup";
                    }
    
                    leaf enabled {
                      type boolean;
                      description
                        "Activates LFA. This model assumes activation of per-prefix LFA";
                    }
    
                    leaf remote-lfa-enabled {
                      type boolean;
                      description
                        "Activates remote LFA";
                    }
                  }  // container fast-reroute
    
                  leaf cost {
                    type uint16;
                    description "Interface cost";
                  }
    
                  leaf hello-interval {
                    type uint16;
                    description
                      "Time between hello packets";
                  }
    
                  leaf dead-interval {
                    type uint16;
                    description
                      "Interval after which a neighbor is declared dead";
                  }
    
                  leaf retransmit-interval {
                    type uint16;
                    description
                      "Time between retransmitting unacknowledged Link State Advertisements (LSAs)";
                  }
    
                  leaf transmit-delay {
                    type uint16;
                    description
                      "Estimated time needed to send link-state update";
                  }
    
                  leaf mtu-ignore {
                    type boolean;
                    description
                      "Enable/Disable ignoring of MTU in DBD packets";
                  }
    
                  leaf lls {
                    type boolean;
                    description
                      "Enable/Disable link-local signalling (LLS) support";
                  }
    
                  leaf prefix-suppression {
                    type boolean;
                    description
                      "Suppress advertisement of the prefixes";
                  }
    
                  leaf bfd {
                    type boolean;
                    description
                      "Enable/disable bfd";
                  }
    
                  container ttl-security {
                    description "TTL security";
                    leaf enabled {
                      type boolean;
                      description
                        "Enable/Disable TTL security check";
                    }
    
                    leaf hops {
                      type uint8;
                      description
                        "Maximum number of hops that a OSPF packet may have travelled";
                    }
                  }  // container ttl-security
    
                  leaf enable {
                    type boolean;
                    description
                      "Enable/disable protocol on the interface";
                  }
    
                  container authentication {
                    description
                      "Authentication configuration";
                    choice auth-type-selection-choice {
                      description
                        "OSPF authentication type";
                      leaf sa {
                        type string;
                        description "SA name";
                      }
                      leaf key-chain {
                        type string;
                        description
                          "key-chain name";
                      }
    
                      case ospf-auth-trailer-key {
                        leaf key-string {
                          type string;
                          description
                            "Key string in ASCII format";
                        }
    
                        container crypto-algorithm-val {
                          description
                            "Crypto algorithm";
                          leaf hmac-sha1-12 {
                            type empty;
                            description
                              "HMAC-SHA1-12 algorithm";
                          }
    
                          leaf hmac-sha1-20 {
                            type empty;
                            description
                              "HMAC-SHA1-20 algorithm";
                          }
    
                          leaf md5 {
                            type empty;
                            description
                              "MD5 algorithm";
                          }
    
                          leaf sha-1 {
                            type empty;
                            description
                              "SHA-1 algorithm";
                          }
    
                          leaf hmac-sha-1 {
                            type empty;
                            description
                              "HMAC-SHA-1 authentication algorithm";
                          }
    
                          leaf hmac-sha-256 {
                            type empty;
                            description
                              "HMAC-SHA-256 authentication algorithm";
                          }
    
                          leaf hmac-sha-384 {
                            type empty;
                            description
                              "HMAC-SHA-384 authentication algorithm";
                          }
    
                          leaf hmac-sha-512 {
                            type empty;
                            description
                              "HMAC-SHA-512 authentication algorithm";
                          }
                        }  // container crypto-algorithm-val
                      }  // case ospf-auth-trailer-key
                      leaf no-auth {
                        type uint32;
                        description
                          "No authentication enabled";
                      }
                    }  // choice auth-type-selection-choice
                  }  // container authentication
    
                  leaf state {
                    type string;
                    description
                      "Interface state";
                  }
    
                  leaf hello-timer {
                    type uint32;
                    description "Hello timer";
                  }
    
                  leaf wait-timer {
                    type uint32;
                    description "Wait timer";
                  }
    
                  leaf dr {
                    type inet:ip-address;
                    description
                      "Designated Router";
                  }
    
                  leaf bdr {
                    type inet:ip-address;
                    description
                      "Backup Designated Router";
                  }
    
                  list ospf-neighbor {
                    key "neighbor-id";
                    description
                      "List of OSPF neighbors";
                    leaf neighbor-id {
                      type inet:ip-address;
                      description
                        "OSPF neighbor ID";
                    }
    
                    leaf address {
                      type inet:ip-address;
                      description
                        "Neighbor address";
                    }
    
                    leaf dr {
                      type inet:ip-address;
                      description
                        "Designated Router";
                    }
    
                    leaf bdr {
                      type inet:ip-address;
                      description
                        "Backup Designated Router";
                    }
    
                    leaf state {
                      type nbr-state-type;
                      description
                        "OSPF neighbor state";
                    }
    
                    container stats {
                      description
                        "Per-neighbor statistics";
                      leaf nbr-event-count {
                        type uint32;
                        description
                          "The number of time this neighbor has changed state or an error has occurred";
                      }
    
                      leaf nbr-retrans-qlen {
                        type uint32;
                        description
                          "The current length of the retransmission queue";
                      }
                    }  // container stats
                  }  // list ospf-neighbor
    
                  list intf-link-scope-lsas {
                    key "lsa-type";
                    description
                      "List OSPF link scope LSAs";
                    leaf lsa-type {
                      type uint32;
                      description
                        "OSPF link scope LSA type";
                    }
    
                    list link-scope-lsa {
                      key "lsa-id adv-router";
                      description
                        "List of OSPF link scope LSAs";
                      leaf lsa-id {
                        type uint32;
                        description "LSA ID";
                      }
    
                      leaf adv-router {
                        type inet:ip-address;
                        description
                          "Advertising router";
                      }
    
                      leaf decoded-completed {
                        type boolean;
                        description
                          "The OSPF LSA body is fully decoded";
                      }
    
                      leaf-list raw-data {
                        type uint8;
                        ordered-by user;
                        description
                          "The complete LSA in network byte order as received/sent over the wire";
                      }
    
                      leaf version {
                        type uint32;
                        description "Version";
                      }
    
                      container ospfv2-lsa {
                        description "OSPFv2 LSA";
                        container header {
                          description
                            "Decoded OSPFv2 LSA header data";
                          leaf lsa-id {
                            type inet:ip-address;
                            description "LSA ID";
                          }
    
                          leaf opaque-type {
                            type uint8;
                            description
                              "Opaque type";
                          }
    
                          leaf opaque-id {
                            type uint32;
                            description
                              "Opaque ID";
                          }
    
                          leaf age {
                            type uint16;
                            description
                              "LSA age";
                          }
    
                          leaf type {
                            type uint16;
                            description
                              "LSA type";
                          }
    
                          leaf adv-router {
                            type uint32;
                            description
                              "LSA advertising router";
                          }
    
                          leaf seq-num {
                            type string;
                            description
                              "LSA sequence number";
                          }
    
                          leaf checksum {
                            type string;
                            description
                              "LSA checksum";
                          }
    
                          leaf length {
                            type uint16;
                            description
                              "LSA length";
                          }
    
                          leaf flag-options {
                            type lsa-flag-options;
                            description
                              "LSA options";
                          }
                        }  // container header
    
                        container lsa-body {
                          description
                            "Decoded OSPFv2 LSA body data";
                          leaf num-of-links {
                            type uint16;
                            description
                              "Number of links";
                          }
    
                          container network {
                            description
                              "Network details";
                            leaf network-mask {
                              type inet:ip-address;
                              description
                                "IP network mask";
                            }
    
                            leaf-list attached-router {
                              type uint32;
                              ordered-by user;
                              description
                                "List of the routers attached to the network";
                            }
                          }  // container network
    
                          leaf summary-mask {
                            type inet:ip-address;
                            description
                              "Summary mask";
                          }
    
                          leaf external-mask {
                            type inet:ip-address;
                            description
                              "External mask";
                          }
    
                          leaf body-flag-options {
                            type ospfv2-lsa-body-flags-options;
                            description
                              "LSA body flags";
                          }
                        }  // container lsa-body
                      }  // container ospfv2-lsa
    
                      list ospfv2-link {
                        key "link-id link-data";
                        description
                          "OSPFv2 LSA link";
                        leaf link-id {
                          type uint32;
                          description "Link ID";
                        }
    
                        leaf link-data {
                          type uint32;
                          description
                            "Link data";
                        }
    
                        leaf type {
                          type uint8;
                          description
                            "Link type";
                        }
    
                        list ospfv2-topology {
                          key "mt-id";
                          description
                            "Topology specific information";
                          leaf mt-id {
                            type uint32;
                            description
                              "MT-ID for topology enabled link";
                          }
    
                          leaf metric {
                            type uint16;
                            description
                              "Metric for the topology";
                          }
                        }  // list ospfv2-topology
                      }  // list ospfv2-link
    
                      list ospfv2-topology {
                        key "mt-id";
                        description
                          "Summary LSA";
                        leaf mt-id {
                          type uint32;
                          description
                            "MT-ID for topology enabled link";
                        }
    
                        leaf metric {
                          type uint16;
                          description
                            "Metric for the topology";
                        }
                      }  // list ospfv2-topology
    
                      list ospfv2-external {
                        key "mt-id";
                        description
                          "External LSA";
                        leaf mt-id {
                          type uint32;
                          description
                            "MT-ID for topology enabled on the link";
                        }
    
                        leaf metric {
                          type uint32;
                          description
                            "Metric for the topology";
                        }
    
                        leaf forwarding-address {
                          type inet:ip-address;
                          description
                            "Forwarding address";
                        }
    
                        leaf external-route-tag {
                          type uint32;
                          description
                            "Route tag";
                        }
                      }  // list ospfv2-external
    
                      list ospfv2-unknown-tlv {
                        key "type";
                        description
                          "OSPFv2 Unknown TLV";
                        leaf type {
                          type uint16;
                          description "TLV type";
                        }
    
                        leaf length {
                          type uint16;
                          description
                            "TLV length";
                        }
    
                        leaf-list value {
                          type uint8;
                          ordered-by user;
                          description
                            "TLV value";
                        }
                      }  // list ospfv2-unknown-tlv
    
                      container ospfv3-lsa-val {
                        description "OSPFv3 LSA";
                        container header {
                          description
                            "Decoded OSPFv3 LSA header";
                          leaf lsa-id {
                            type inet:ip-address;
                            description "LSA ID";
                          }
    
                          container lsa-header {
                            description
                              "LSA header";
                            leaf age {
                              type uint16;
                              description
                                "LSA age";
                            }
    
                            leaf type {
                              type uint16;
                              description
                                "LSA type";
                            }
    
                            leaf adv-router {
                              type uint32;
                              description
                                "LSA advertising router";
                            }
    
                            leaf seq-num {
                              type string;
                              description
                                "LSA sequence number";
                            }
    
                            leaf checksum {
                              type string;
                              description
                                "LSA checksum";
                            }
    
                            leaf length {
                              type uint16;
                              description
                                "LSA length";
                            }
                          }  // container lsa-header
    
                          leaf lsa-hdr-options {
                            type ospfv3-lsa-options;
                            description
                              "OSPFv3 LSA options";
                          }
                        }  // container header
    
                        container lsa-body {
                          description
                            "Decoded OSPFv3 LSA body";
                          container network {
                            description
                              "OSPFv3 network";
                            leaf-list attached-router {
                              type uint32;
                              ordered-by user;
                              description
                                "List of the routers attached to the network";
                            }
    
                            leaf lsa-net-options {
                              type ospfv3-lsa-options;
                              description
                                "Network LSA options";
                            }
                          }  // container network
    
                          container prefix {
                            description
                              "OSPFv3 inter area prefix";
                            leaf metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf ia-prefix {
                              type string;
                              description
                                "Inter area Prefix";
                            }
    
                            leaf ia-prefix-options {
                              type string;
                              description
                                "Inter area prefix options";
                            }
                          }  // container prefix
    
                          container ia-router {
                            description
                              "OSPFv3 inter area router";
                            leaf metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf destination-router-id {
                              type uint32;
                              description
                                "Router ID of the router being described by the LSA";
                            }
    
                            leaf lsa-ia-options {
                              type ospfv3-lsa-options;
                              description
                                "Inter area LSA options";
                            }
                          }  // container ia-router
    
                          container lsa-external {
                            description
                              "OSPFv3 LSA external";
                            leaf metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            container flags {
                              description
                                "LSA Flags";
                              leaf e-flag {
                                type boolean;
                                description
                                  "When set, the metric specified is a Type 2 external metric";
                              }
                            }  // container flags
    
                            leaf referenced-ls-type {
                              type uint16;
                              description
                                "Referenced Link State type";
                            }
    
                            leaf external-prefix {
                              type string;
                              description
                                "Prefix";
                            }
    
                            leaf external-prefix-options {
                              type string;
                              description
                                "Prefix options";
                            }
    
                            leaf forwarding-address {
                              type inet:ip-address;
                              description
                                "Forwarding address";
                            }
    
                            leaf external-route-tag {
                              type uint32;
                              description
                                "Route tag";
                            }
    
                            leaf referenced-link-state-id {
                              type uint32;
                              description
                                "Referenced Link State ID";
                            }
                          }  // container lsa-external
    
                          container nssa {
                            description
                              "OSPFv3 NSSA";
                            container lsa-nssa-external {
                              description
                                "NSSA LSA";
                              leaf metric {
                                type uint32;
                                description
                                  "Metric";
                              }
    
                              container flags {
                                description
                                  "LSA Flags";
                                leaf e-flag {
                                  type boolean;
                                  description
                                    "When set, the metric specified is a Type 2 external metric";
                                }
                              }  // container flags
    
                              leaf referenced-ls-type {
                                type uint16;
                                description
                                  "Referenced Link State type";
                              }
    
                              leaf external-prefix {
                                type string;
                                description
                                  "Prefix";
                              }
    
                              leaf external-prefix-options {
                                type string;
                                description
                                  "Prefix options";
                              }
    
                              leaf forwarding-address {
                                type inet:ip-address;
                                description
                                  "Forwarding address";
                              }
    
                              leaf external-route-tag {
                                type uint32;
                                description
                                  "Route tag";
                              }
    
                              leaf referenced-link-state-id {
                                type uint32;
                                description
                                  "Referenced Link State ID";
                              }
                            }  // container lsa-nssa-external
                          }  // container nssa
    
                          container link-data {
                            description
                              "OSPFv3 Link data";
                            leaf rtr-priority {
                              type uint8;
                              description
                                "Router priority of the interface";
                            }
    
                            leaf link-local-interface-address {
                              type inet:ip-address;
                              description
                                "The originating router's link-local interface address on the link";
                            }
    
                            leaf num-of-prefixes {
                              type uint32;
                              description
                                "Number of prefixes";
                            }
    
                            leaf lsa-id-options {
                              type ospfv3-lsa-options;
                              description
                                "Link data LSA options";
                            }
                          }  // container link-data
    
                          container ia-prefix {
                            description
                              "OSPFv3 Intra area prefixes";
                            leaf referenced-ls-type {
                              type uint16;
                              description
                                "Referenced Link State type";
                            }
    
                            leaf referenced-link-state-id {
                              type uint32;
                              description
                                "Referenced Link State ID";
                            }
    
                            leaf referenced-adv-router {
                              type inet:ip-address;
                              description
                                "Referenced Advertising Router";
                            }
    
                            leaf num-of-prefixes {
                              type uint16;
                              description
                                "Number of prefixes";
                            }
                          }  // container ia-prefix
    
                          leaf lsa-flag-options {
                            type ospfv3-lsa-options;
                            description
                              "LSA options";
                          }
    
                          leaf lsa-body-flags {
                            type ospfv3-lsa-body-flag-options;
                            description
                              "LSA Body Flags";
                          }
                        }  // container lsa-body
                      }  // container ospfv3-lsa-val
    
                      list ospfv3-link {
                        key "interface-id neighbor-interface-id neighbor-router-id";
                        description
                          "OSPFv3 links";
                        leaf interface-id {
                          type uint32;
                          description
                            "Interface ID";
                        }
    
                        leaf neighbor-interface-id {
                          type uint32;
                          description
                            "Neighbor interface ID";
                        }
    
                        leaf neighbor-router-id {
                          type uint32;
                          description
                            "Neighbor router ID";
                        }
    
                        leaf type {
                          type uint8;
                          description
                            "Link type";
                        }
    
                        leaf metric {
                          type uint16;
                          description "Metric";
                        }
                      }  // list ospfv3-link
    
                      list ospfv3-prefix-list {
                        key "prefix";
                        description
                          "OSPFv3 prefix-list";
                        leaf prefix {
                          type string;
                          description "Prefix";
                        }
    
                        leaf prefix-options {
                          type string;
                          description
                            "Prefix options";
                        }
                      }  // list ospfv3-prefix-list
    
                      list ospfv3-ia-prefix {
                        key "prefix";
                        description
                          "OSPFv3 intra-area prefix-list";
                        leaf prefix {
                          type string;
                          description "Prefix";
                        }
    
                        leaf prefix-options {
                          type string;
                          description
                            "Prefix options";
                        }
                      }  // list ospfv3-ia-prefix
    
                      list multi-topology {
                        key "name";
                        description
                          "OSPF multi-topology interface augmentation";
                        leaf name {
                          type string;
                          description
                            "One of the topology enabled on this interface";
                        }
                      }  // list multi-topology
    
                      leaf router-address {
                        type inet:ip-address;
                        description
                          "Router address";
                      }
    
                      container tlv {
                        description "Link TLV";
                        leaf link-type {
                          type uint8;
                          description
                            "Link type";
                        }
    
                        leaf link-id {
                          type uint32;
                          description "Link ID";
                        }
    
                        leaf-list local-if-ipv4-addr {
                          type inet:ip-address;
                          ordered-by user;
                          description
                            "List of local interface IPv4 addresses";
                        }
    
                        leaf-list local-remote-ipv4-addr {
                          type inet:ip-address;
                          ordered-by user;
                          description
                            "List of remote interface IPv4 addresses";
                        }
    
                        leaf te-metric {
                          type uint32;
                          description
                            "TE metric";
                        }
    
                        leaf max-bandwidth {
                          type decimal64 {
                            fraction-digits 2;
                          }
                          description
                            "Maximum bandwidth";
                        }
    
                        leaf max-reservable-bandwidth {
                          type decimal64 {
                            fraction-digits 2;
                          }
                          description
                            "Maximum reservable bandwidth";
                        }
    
                        leaf unreserved-bandwidth {
                          type decimal64 {
                            fraction-digits 2;
                          }
                          description
                            "Unreserved bandwidth";
                        }
    
                        leaf admin-group {
                          type uint32;
                          description
                            "Administrative group/Resource class/Color";
                        }
                      }  // container tlv
    
                      list unknown-sub-tlv {
                        key "type";
                        description
                          "OSPFv2 Unknown sub TLV";
                        leaf type {
                          type uint16;
                          description "TLV type";
                        }
    
                        leaf length {
                          type uint16;
                          description
                            "TLV length";
                        }
    
                        leaf-list value {
                          type uint8;
                          ordered-by user;
                          description
                            "TLV value";
                        }
                      }  // list unknown-sub-tlv
                    }  // list link-scope-lsa
    
                    list area-scope-lsa {
                      key "lsa-type adv-router";
                      description
                        "List OSPF area scope LSA databases";
                      leaf lsa-type {
                        type uint32;
                        description "LSA Type";
                      }
    
                      leaf adv-router {
                        type inet:ip-address;
                        description
                          "Advertising router";
                      }
    
                      leaf decoded-completed {
                        type boolean;
                        description
                          "The OSPF LSA body is fully decoded";
                      }
    
                      leaf-list raw-data {
                        type uint8;
                        ordered-by user;
                        description
                          "The complete LSA in network byte order as received/sent over the wire";
                      }
    
                      container ospfv2-lsa {
                        description "OSPFv2 LSA";
                        container header {
                          description
                            "Decoded OSPFv2 LSA header data";
                          leaf lsa-id {
                            type inet:ip-address;
                            description "LSA ID";
                          }
    
                          leaf opaque-type {
                            type uint8;
                            description
                              "Opaque type";
                          }
    
                          leaf opaque-id {
                            type uint32;
                            description
                              "Opaque ID";
                          }
    
                          leaf age {
                            type uint16;
                            description
                              "LSA age";
                          }
    
                          leaf type {
                            type uint16;
                            description
                              "LSA type";
                          }
    
                          leaf adv-router {
                            type uint32;
                            description
                              "LSA advertising router";
                          }
    
                          leaf seq-num {
                            type string;
                            description
                              "LSA sequence number";
                          }
    
                          leaf checksum {
                            type string;
                            description
                              "LSA checksum";
                          }
    
                          leaf length {
                            type uint16;
                            description
                              "LSA length";
                          }
    
                          leaf flag-options {
                            type lsa-flag-options;
                            description
                              "LSA options";
                          }
                        }  // container header
    
                        container lsa-body {
                          description
                            "Decoded OSPFv2 LSA body data";
                          leaf num-of-links {
                            type uint16;
                            description
                              "Number of links";
                          }
    
                          container network {
                            description
                              "Network details";
                            leaf network-mask {
                              type inet:ip-address;
                              description
                                "IP network mask";
                            }
    
                            leaf-list attached-router {
                              type uint32;
                              ordered-by user;
                              description
                                "List of the routers attached to the network";
                            }
                          }  // container network
    
                          leaf summary-mask {
                            type inet:ip-address;
                            description
                              "Summary mask";
                          }
    
                          leaf external-mask {
                            type inet:ip-address;
                            description
                              "External mask";
                          }
    
                          leaf body-flag-options {
                            type ospfv2-lsa-body-flags-options;
                            description
                              "LSA body flags";
                          }
                        }  // container lsa-body
                      }  // container ospfv2-lsa
    
                      list ospfv2-link {
                        key "link-id link-data";
                        description
                          "Router LSA link";
                        leaf link-id {
                          type uint32;
                          description "Link ID";
                        }
    
                        leaf link-data {
                          type uint32;
                          description
                            "Link data";
                        }
    
                        leaf type {
                          type uint8;
                          description
                            "Link type";
                        }
    
                        list ospfv2-topology {
                          key "mt-id";
                          description
                            "Topology specific information";
                          leaf mt-id {
                            type uint32;
                            description
                              "MT-ID for topology enabled link";
                          }
    
                          leaf metric {
                            type uint16;
                            description
                              "Metric for the topology";
                          }
                        }  // list ospfv2-topology
                      }  // list ospfv2-link
    
                      list ospfv2-topology {
                        key "mt-id";
                        description
                          "Summary LSA";
                        leaf mt-id {
                          type uint32;
                          description
                            "MT-ID for topology enabled link";
                        }
    
                        leaf metric {
                          type uint16;
                          description
                            "Metric for the topology";
                        }
                      }  // list ospfv2-topology
    
                      list ospfv2-external {
                        key "mt-id";
                        description
                          "External LSA";
                        leaf mt-id {
                          type uint32;
                          description
                            "MT-ID for topology enabled on the link";
                        }
    
                        leaf metric {
                          type uint32;
                          description
                            "Metric for the topology";
                        }
    
                        leaf forwarding-address {
                          type inet:ip-address;
                          description
                            "Forwarding address";
                        }
    
                        leaf external-route-tag {
                          type uint32;
                          description
                            "Route tag";
                        }
                      }  // list ospfv2-external
    
                      container ospfv3-lsa {
                        description "OSPFv3 LSA";
                        container header {
                          description
                            "Decoded OSPFv3 LSA header";
                          leaf lsa-id {
                            type inet:ip-address;
                            description "LSA ID";
                          }
    
                          container lsa-header {
                            description
                              "LSA header";
                            leaf age {
                              type uint16;
                              description
                                "LSA age";
                            }
    
                            leaf type {
                              type uint16;
                              description
                                "LSA type";
                            }
    
                            leaf adv-router {
                              type uint32;
                              description
                                "LSA advertising router";
                            }
    
                            leaf seq-num {
                              type string;
                              description
                                "LSA sequence number";
                            }
    
                            leaf checksum {
                              type string;
                              description
                                "LSA checksum";
                            }
    
                            leaf length {
                              type uint16;
                              description
                                "LSA length";
                            }
                          }  // container lsa-header
    
                          leaf lsa-hdr-options {
                            type ospfv3-lsa-options;
                            description
                              "OSPFv3 LSA options";
                          }
                        }  // container header
    
                        container lsa-body {
                          description
                            "Decoded OSPFv3 LSA body";
                          container network {
                            description
                              "OSPFv3 network";
                            leaf-list attached-router {
                              type uint32;
                              ordered-by user;
                              description
                                "List of the routers attached to the network";
                            }
    
                            leaf lsa-net-options {
                              type ospfv3-lsa-options;
                              description
                                "Network LSA options";
                            }
                          }  // container network
    
                          container prefix {
                            description
                              "OSPFv3 inter area prefix";
                            leaf metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf ia-prefix {
                              type string;
                              description
                                "Inter area Prefix";
                            }
    
                            leaf ia-prefix-options {
                              type string;
                              description
                                "Inter area prefix options";
                            }
                          }  // container prefix
    
                          container ia-router {
                            description
                              "OSPFv3 inter area router";
                            leaf metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf destination-router-id {
                              type uint32;
                              description
                                "Router ID of the router being described by the LSA";
                            }
    
                            leaf lsa-ia-options {
                              type ospfv3-lsa-options;
                              description
                                "Inter area LSA options";
                            }
                          }  // container ia-router
    
                          container lsa-external {
                            description
                              "OSPFv3 LSA external";
                            leaf metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            container flags {
                              description
                                "LSA Flags";
                              leaf e-flag {
                                type boolean;
                                description
                                  "When set, the metric specified is a Type 2 external metric";
                              }
                            }  // container flags
    
                            leaf referenced-ls-type {
                              type uint16;
                              description
                                "Referenced Link State type";
                            }
    
                            leaf external-prefix {
                              type string;
                              description
                                "Prefix";
                            }
    
                            leaf external-prefix-options {
                              type string;
                              description
                                "Prefix options";
                            }
    
                            leaf forwarding-address {
                              type inet:ip-address;
                              description
                                "Forwarding address";
                            }
    
                            leaf external-route-tag {
                              type uint32;
                              description
                                "Route tag";
                            }
    
                            leaf referenced-link-state-id {
                              type uint32;
                              description
                                "Referenced Link State ID";
                            }
                          }  // container lsa-external
    
                          container nssa {
                            description
                              "OSPFv3 NSSA";
                            container lsa-nssa-external {
                              description
                                "NSSA LSA";
                              leaf metric {
                                type uint32;
                                description
                                  "Metric";
                              }
    
                              container flags {
                                description
                                  "LSA Flags";
                                leaf e-flag {
                                  type boolean;
                                  description
                                    "When set, the metric specified is a Type 2 external metric";
                                }
                              }  // container flags
    
                              leaf referenced-ls-type {
                                type uint16;
                                description
                                  "Referenced Link State type";
                              }
    
                              leaf external-prefix {
                                type string;
                                description
                                  "Prefix";
                              }
    
                              leaf external-prefix-options {
                                type string;
                                description
                                  "Prefix options";
                              }
    
                              leaf forwarding-address {
                                type inet:ip-address;
                                description
                                  "Forwarding address";
                              }
    
                              leaf external-route-tag {
                                type uint32;
                                description
                                  "Route tag";
                              }
    
                              leaf referenced-link-state-id {
                                type uint32;
                                description
                                  "Referenced Link State ID";
                              }
                            }  // container lsa-nssa-external
                          }  // container nssa
    
                          container link-data {
                            description
                              "OSPFv3 Link data";
                            leaf rtr-priority {
                              type uint8;
                              description
                                "Router priority of the interface";
                            }
    
                            leaf link-local-interface-address {
                              type inet:ip-address;
                              description
                                "The originating router's link-local interface address on the link";
                            }
    
                            leaf num-of-prefixes {
                              type uint32;
                              description
                                "Number of prefixes";
                            }
    
                            leaf lsa-id-options {
                              type ospfv3-lsa-options;
                              description
                                "Link data LSA options";
                            }
                          }  // container link-data
    
                          container ia-prefix {
                            description
                              "OSPFv3 Intra area prefixes";
                            leaf referenced-ls-type {
                              type uint16;
                              description
                                "Referenced Link State type";
                            }
    
                            leaf referenced-link-state-id {
                              type uint32;
                              description
                                "Referenced Link State ID";
                            }
    
                            leaf referenced-adv-router {
                              type inet:ip-address;
                              description
                                "Referenced Advertising Router";
                            }
    
                            leaf num-of-prefixes {
                              type uint16;
                              description
                                "Number of prefixes";
                            }
                          }  // container ia-prefix
    
                          leaf lsa-flag-options {
                            type ospfv3-lsa-options;
                            description
                              "LSA options";
                          }
    
                          leaf lsa-body-flags {
                            type ospfv3-lsa-body-flag-options;
                            description
                              "LSA Body Flags";
                          }
                        }  // container lsa-body
                      }  // container ospfv3-lsa
    
                      list ospfv3-link {
                        key "interface-id neighbor-interface-id neighbor-router-id";
                        description
                          "OSPFv3 links";
                        leaf interface-id {
                          type uint32;
                          description
                            "Interface ID";
                        }
    
                        leaf neighbor-interface-id {
                          type uint32;
                          description
                            "Neighbor interface ID";
                        }
    
                        leaf neighbor-router-id {
                          type uint32;
                          description
                            "Neighbor router ID";
                        }
    
                        leaf type {
                          type uint8;
                          description
                            "Link type";
                        }
    
                        leaf metric {
                          type uint16;
                          description "Metric";
                        }
                      }  // list ospfv3-link
    
                      list ospfv3-prefix {
                        key "prefix";
                        description
                          "OSPFv3 prefix-list";
                        leaf prefix {
                          type string;
                          description "Prefix";
                        }
    
                        leaf prefix-options {
                          type string;
                          description
                            "Prefix options";
                        }
                      }  // list ospfv3-prefix
    
                      list ospfv3-ia-prefix {
                        key "prefix";
                        description
                          "OSPFv3 intra-area prefix-list";
                        leaf prefix {
                          type string;
                          description "Prefix";
                        }
    
                        leaf prefix-options {
                          type string;
                          description
                            "Prefix options";
                        }
                      }  // list ospfv3-ia-prefix
                    }  // list area-scope-lsa
                  }  // list intf-link-scope-lsas
    
                  list intf-multi-topology {
                    key "name";
                    description
                      "OSPF interface topology";
                    leaf name {
                      type string;
                      description
                        "One of the topology enabled on this interface";
                    }
                  }  // list intf-multi-topology
    
                  leaf priority {
                    type uint8;
                    description
                      "Configure OSPF router priority";
                  }
                }  // list ospf-interface
    
                list area-scope-lsa {
                  key "lsa-type";
                  description
                    "List of OSPF area scope LSA";
                  leaf lsa-type {
                    type uint32;
                    description
                      "OSPF link scope LSA type";
                  }
    
                  list area-scope-lsa {
                    key "lsa-type adv-router";
                    description
                      "List of OSPF link scope LSAs";
                    leaf lsa-type {
                      type uint32;
                      description "LSA Type";
                    }
    
                    leaf adv-router {
                      type inet:ip-address;
                      description
                        "Advertising router";
                    }
    
                    leaf decoded-completed {
                      type boolean;
                      description
                        "The OSPF LSA body is fully decoded";
                    }
    
                    leaf-list raw-data {
                      type uint8;
                      ordered-by user;
                      description
                        "The complete LSA in network byte order as received/sent over the wire";
                    }
    
                    container ospfv2-lsa {
                      description "OSPFv2 LSA";
                      container header {
                        description
                          "Decoded OSPFv2 LSA header data";
                        leaf lsa-id {
                          type inet:ip-address;
                          description "LSA ID";
                        }
    
                        leaf opaque-type {
                          type uint8;
                          description
                            "Opaque type";
                        }
    
                        leaf opaque-id {
                          type uint32;
                          description
                            "Opaque ID";
                        }
    
                        leaf age {
                          type uint16;
                          description "LSA age";
                        }
    
                        leaf type {
                          type uint16;
                          description "LSA type";
                        }
    
                        leaf adv-router {
                          type uint32;
                          description
                            "LSA advertising router";
                        }
    
                        leaf seq-num {
                          type string;
                          description
                            "LSA sequence number";
                        }
    
                        leaf checksum {
                          type string;
                          description
                            "LSA checksum";
                        }
    
                        leaf length {
                          type uint16;
                          description
                            "LSA length";
                        }
    
                        leaf flag-options {
                          type lsa-flag-options;
                          description
                            "LSA options";
                        }
                      }  // container header
    
                      container lsa-body {
                        description
                          "Decoded OSPFv2 LSA body data";
                        leaf num-of-links {
                          type uint16;
                          description
                            "Number of links";
                        }
    
                        container network {
                          description
                            "Network details";
                          leaf network-mask {
                            type inet:ip-address;
                            description
                              "IP network mask";
                          }
    
                          leaf-list attached-router {
                            type uint32;
                            ordered-by user;
                            description
                              "List of the routers attached to the network";
                          }
                        }  // container network
    
                        leaf summary-mask {
                          type inet:ip-address;
                          description
                            "Summary mask";
                        }
    
                        leaf external-mask {
                          type inet:ip-address;
                          description
                            "External mask";
                        }
    
                        leaf body-flag-options {
                          type ospfv2-lsa-body-flags-options;
                          description
                            "LSA body flags";
                        }
                      }  // container lsa-body
                    }  // container ospfv2-lsa
    
                    list ospfv2-link {
                      key "link-id link-data";
                      description
                        "Router LSA link";
                      leaf link-id {
                        type uint32;
                        description "Link ID";
                      }
    
                      leaf link-data {
                        type uint32;
                        description "Link data";
                      }
    
                      leaf type {
                        type uint8;
                        description "Link type";
                      }
    
                      list ospfv2-topology {
                        key "mt-id";
                        description
                          "Topology specific information";
                        leaf mt-id {
                          type uint32;
                          description
                            "MT-ID for topology enabled link";
                        }
    
                        leaf metric {
                          type uint16;
                          description
                            "Metric for the topology";
                        }
                      }  // list ospfv2-topology
                    }  // list ospfv2-link
    
                    list ospfv2-topology {
                      key "mt-id";
                      description "Summary LSA";
                      leaf mt-id {
                        type uint32;
                        description
                          "MT-ID for topology enabled link";
                      }
    
                      leaf metric {
                        type uint16;
                        description
                          "Metric for the topology";
                      }
                    }  // list ospfv2-topology
    
                    list ospfv2-external {
                      key "mt-id";
                      description "External LSA";
                      leaf mt-id {
                        type uint32;
                        description
                          "MT-ID for topology enabled on the link";
                      }
    
                      leaf metric {
                        type uint32;
                        description
                          "Metric for the topology";
                      }
    
                      leaf forwarding-address {
                        type inet:ip-address;
                        description
                          "Forwarding address";
                      }
    
                      leaf external-route-tag {
                        type uint32;
                        description "Route tag";
                      }
                    }  // list ospfv2-external
    
                    container ospfv3-lsa {
                      description "OSPFv3 LSA";
                      container header {
                        description
                          "Decoded OSPFv3 LSA header";
                        leaf lsa-id {
                          type inet:ip-address;
                          description "LSA ID";
                        }
    
                        container lsa-header {
                          description
                            "LSA header";
                          leaf age {
                            type uint16;
                            description
                              "LSA age";
                          }
    
                          leaf type {
                            type uint16;
                            description
                              "LSA type";
                          }
    
                          leaf adv-router {
                            type uint32;
                            description
                              "LSA advertising router";
                          }
    
                          leaf seq-num {
                            type string;
                            description
                              "LSA sequence number";
                          }
    
                          leaf checksum {
                            type string;
                            description
                              "LSA checksum";
                          }
    
                          leaf length {
                            type uint16;
                            description
                              "LSA length";
                          }
                        }  // container lsa-header
    
                        leaf lsa-hdr-options {
                          type ospfv3-lsa-options;
                          description
                            "OSPFv3 LSA options";
                        }
                      }  // container header
    
                      container lsa-body {
                        description
                          "Decoded OSPFv3 LSA body";
                        container network {
                          description
                            "OSPFv3 network";
                          leaf-list attached-router {
                            type uint32;
                            ordered-by user;
                            description
                              "List of the routers attached to the network";
                          }
    
                          leaf lsa-net-options {
                            type ospfv3-lsa-options;
                            description
                              "Network LSA options";
                          }
                        }  // container network
    
                        container prefix {
                          description
                            "OSPFv3 inter area prefix";
                          leaf metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf ia-prefix {
                            type string;
                            description
                              "Inter area Prefix";
                          }
    
                          leaf ia-prefix-options {
                            type string;
                            description
                              "Inter area prefix options";
                          }
                        }  // container prefix
    
                        container ia-router {
                          description
                            "OSPFv3 inter area router";
                          leaf metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf destination-router-id {
                            type uint32;
                            description
                              "Router ID of the router being described by the LSA";
                          }
    
                          leaf lsa-ia-options {
                            type ospfv3-lsa-options;
                            description
                              "Inter area LSA options";
                          }
                        }  // container ia-router
    
                        container lsa-external {
                          description
                            "OSPFv3 LSA external";
                          leaf metric {
                            type uint32;
                            description "Metric";
                          }
    
                          container flags {
                            description
                              "LSA Flags";
                            leaf e-flag {
                              type boolean;
                              description
                                "When set, the metric specified is a Type 2 external metric";
                            }
                          }  // container flags
    
                          leaf referenced-ls-type {
                            type uint16;
                            description
                              "Referenced Link State type";
                          }
    
                          leaf external-prefix {
                            type string;
                            description "Prefix";
                          }
    
                          leaf external-prefix-options {
                            type string;
                            description
                              "Prefix options";
                          }
    
                          leaf forwarding-address {
                            type inet:ip-address;
                            description
                              "Forwarding address";
                          }
    
                          leaf external-route-tag {
                            type uint32;
                            description
                              "Route tag";
                          }
    
                          leaf referenced-link-state-id {
                            type uint32;
                            description
                              "Referenced Link State ID";
                          }
                        }  // container lsa-external
    
                        container nssa {
                          description
                            "OSPFv3 NSSA";
                          container lsa-nssa-external {
                            description
                              "NSSA LSA";
                            leaf metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            container flags {
                              description
                                "LSA Flags";
                              leaf e-flag {
                                type boolean;
                                description
                                  "When set, the metric specified is a Type 2 external metric";
                              }
                            }  // container flags
    
                            leaf referenced-ls-type {
                              type uint16;
                              description
                                "Referenced Link State type";
                            }
    
                            leaf external-prefix {
                              type string;
                              description
                                "Prefix";
                            }
    
                            leaf external-prefix-options {
                              type string;
                              description
                                "Prefix options";
                            }
    
                            leaf forwarding-address {
                              type inet:ip-address;
                              description
                                "Forwarding address";
                            }
    
                            leaf external-route-tag {
                              type uint32;
                              description
                                "Route tag";
                            }
    
                            leaf referenced-link-state-id {
                              type uint32;
                              description
                                "Referenced Link State ID";
                            }
                          }  // container lsa-nssa-external
                        }  // container nssa
    
                        container link-data {
                          description
                            "OSPFv3 Link data";
                          leaf rtr-priority {
                            type uint8;
                            description
                              "Router priority of the interface";
                          }
    
                          leaf link-local-interface-address {
                            type inet:ip-address;
                            description
                              "The originating router's link-local interface address on the link";
                          }
    
                          leaf num-of-prefixes {
                            type uint32;
                            description
                              "Number of prefixes";
                          }
    
                          leaf lsa-id-options {
                            type ospfv3-lsa-options;
                            description
                              "Link data LSA options";
                          }
                        }  // container link-data
    
                        container ia-prefix {
                          description
                            "OSPFv3 Intra area prefixes";
                          leaf referenced-ls-type {
                            type uint16;
                            description
                              "Referenced Link State type";
                          }
    
                          leaf referenced-link-state-id {
                            type uint32;
                            description
                              "Referenced Link State ID";
                          }
    
                          leaf referenced-adv-router {
                            type inet:ip-address;
                            description
                              "Referenced Advertising Router";
                          }
    
                          leaf num-of-prefixes {
                            type uint16;
                            description
                              "Number of prefixes";
                          }
                        }  // container ia-prefix
    
                        leaf lsa-flag-options {
                          type ospfv3-lsa-options;
                          description
                            "LSA options";
                        }
    
                        leaf lsa-body-flags {
                          type ospfv3-lsa-body-flag-options;
                          description
                            "LSA Body Flags";
                        }
                      }  // container lsa-body
                    }  // container ospfv3-lsa
    
                    list ospfv3-link {
                      key "interface-id neighbor-interface-id neighbor-router-id";
                      description "OSPFv3 links";
                      leaf interface-id {
                        type uint32;
                        description
                          "Interface ID";
                      }
    
                      leaf neighbor-interface-id {
                        type uint32;
                        description
                          "Neighbor interface ID";
                      }
    
                      leaf neighbor-router-id {
                        type uint32;
                        description
                          "Neighbor router ID";
                      }
    
                      leaf type {
                        type uint8;
                        description "Link type";
                      }
    
                      leaf metric {
                        type uint16;
                        description "Metric";
                      }
                    }  // list ospfv3-link
    
                    list ospfv3-prefix {
                      key "prefix";
                      description
                        "OSPFv3 prefix-list";
                      leaf prefix {
                        type string;
                        description "Prefix";
                      }
    
                      leaf prefix-options {
                        type string;
                        description
                          "Prefix options";
                      }
                    }  // list ospfv3-prefix
    
                    list ospfv3-ia-prefix {
                      key "prefix";
                      description
                        "OSPFv3 intra-area prefix-list";
                      leaf prefix {
                        type string;
                        description "Prefix";
                      }
    
                      leaf prefix-options {
                        type string;
                        description
                          "Prefix options";
                      }
                    }  // list ospfv3-ia-prefix
                  }  // list area-scope-lsa
                }  // list area-scope-lsa
              }  // list ospf-area
    
              list link-scope-lsas {
                key "lsa-type";
                description
                  "List OSPF link scope LSA";
                leaf lsa-type {
                  type uint32;
                  description
                    "OSPF link scope LSA type";
                }
    
                list link-scope-lsa {
                  key "lsa-id adv-router";
                  description
                    "List of OSPF link scope LSAs";
                  leaf lsa-id {
                    type uint32;
                    description "LSA ID";
                  }
    
                  leaf adv-router {
                    type inet:ip-address;
                    description
                      "Advertising router";
                  }
    
                  leaf decoded-completed {
                    type boolean;
                    description
                      "The OSPF LSA body is fully decoded";
                  }
    
                  leaf-list raw-data {
                    type uint8;
                    ordered-by user;
                    description
                      "The complete LSA in network byte order as received/sent over the wire";
                  }
    
                  leaf version {
                    type uint32;
                    description "Version";
                  }
    
                  container ospfv2-lsa {
                    description "OSPFv2 LSA";
                    container header {
                      description
                        "Decoded OSPFv2 LSA header data";
                      leaf lsa-id {
                        type inet:ip-address;
                        description "LSA ID";
                      }
    
                      leaf opaque-type {
                        type uint8;
                        description
                          "Opaque type";
                      }
    
                      leaf opaque-id {
                        type uint32;
                        description "Opaque ID";
                      }
    
                      leaf age {
                        type uint16;
                        description "LSA age";
                      }
    
                      leaf type {
                        type uint16;
                        description "LSA type";
                      }
    
                      leaf adv-router {
                        type uint32;
                        description
                          "LSA advertising router";
                      }
    
                      leaf seq-num {
                        type string;
                        description
                          "LSA sequence number";
                      }
    
                      leaf checksum {
                        type string;
                        description
                          "LSA checksum";
                      }
    
                      leaf length {
                        type uint16;
                        description "LSA length";
                      }
    
                      leaf flag-options {
                        type lsa-flag-options;
                        description
                          "LSA options";
                      }
                    }  // container header
    
                    container lsa-body {
                      description
                        "Decoded OSPFv2 LSA body data";
                      leaf num-of-links {
                        type uint16;
                        description
                          "Number of links";
                      }
    
                      container network {
                        description
                          "Network details";
                        leaf network-mask {
                          type inet:ip-address;
                          description
                            "IP network mask";
                        }
    
                        leaf-list attached-router {
                          type uint32;
                          ordered-by user;
                          description
                            "List of the routers attached to the network";
                        }
                      }  // container network
    
                      leaf summary-mask {
                        type inet:ip-address;
                        description
                          "Summary mask";
                      }
    
                      leaf external-mask {
                        type inet:ip-address;
                        description
                          "External mask";
                      }
    
                      leaf body-flag-options {
                        type ospfv2-lsa-body-flags-options;
                        description
                          "LSA body flags";
                      }
                    }  // container lsa-body
                  }  // container ospfv2-lsa
    
                  list ospfv2-link {
                    key "link-id link-data";
                    description
                      "OSPFv2 LSA link";
                    leaf link-id {
                      type uint32;
                      description "Link ID";
                    }
    
                    leaf link-data {
                      type uint32;
                      description "Link data";
                    }
    
                    leaf type {
                      type uint8;
                      description "Link type";
                    }
    
                    list ospfv2-topology {
                      key "mt-id";
                      description
                        "Topology specific information";
                      leaf mt-id {
                        type uint32;
                        description
                          "MT-ID for topology enabled link";
                      }
    
                      leaf metric {
                        type uint16;
                        description
                          "Metric for the topology";
                      }
                    }  // list ospfv2-topology
                  }  // list ospfv2-link
    
                  list ospfv2-topology {
                    key "mt-id";
                    description "Summary LSA";
                    leaf mt-id {
                      type uint32;
                      description
                        "MT-ID for topology enabled link";
                    }
    
                    leaf metric {
                      type uint16;
                      description
                        "Metric for the topology";
                    }
                  }  // list ospfv2-topology
    
                  list ospfv2-external {
                    key "mt-id";
                    description "External LSA";
                    leaf mt-id {
                      type uint32;
                      description
                        "MT-ID for topology enabled on the link";
                    }
    
                    leaf metric {
                      type uint32;
                      description
                        "Metric for the topology";
                    }
    
                    leaf forwarding-address {
                      type inet:ip-address;
                      description
                        "Forwarding address";
                    }
    
                    leaf external-route-tag {
                      type uint32;
                      description "Route tag";
                    }
                  }  // list ospfv2-external
    
                  list ospfv2-unknown-tlv {
                    key "type";
                    description
                      "OSPFv2 Unknown TLV";
                    leaf type {
                      type uint16;
                      description "TLV type";
                    }
    
                    leaf length {
                      type uint16;
                      description "TLV length";
                    }
    
                    leaf-list value {
                      type uint8;
                      ordered-by user;
                      description "TLV value";
                    }
                  }  // list ospfv2-unknown-tlv
    
                  container ospfv3-lsa-val {
                    description "OSPFv3 LSA";
                    container header {
                      description
                        "Decoded OSPFv3 LSA header";
                      leaf lsa-id {
                        type inet:ip-address;
                        description "LSA ID";
                      }
    
                      container lsa-header {
                        description "LSA header";
                        leaf age {
                          type uint16;
                          description "LSA age";
                        }
    
                        leaf type {
                          type uint16;
                          description "LSA type";
                        }
    
                        leaf adv-router {
                          type uint32;
                          description
                            "LSA advertising router";
                        }
    
                        leaf seq-num {
                          type string;
                          description
                            "LSA sequence number";
                        }
    
                        leaf checksum {
                          type string;
                          description
                            "LSA checksum";
                        }
    
                        leaf length {
                          type uint16;
                          description
                            "LSA length";
                        }
                      }  // container lsa-header
    
                      leaf lsa-hdr-options {
                        type ospfv3-lsa-options;
                        description
                          "OSPFv3 LSA options";
                      }
                    }  // container header
    
                    container lsa-body {
                      description
                        "Decoded OSPFv3 LSA body";
                      container network {
                        description
                          "OSPFv3 network";
                        leaf-list attached-router {
                          type uint32;
                          ordered-by user;
                          description
                            "List of the routers attached to the network";
                        }
    
                        leaf lsa-net-options {
                          type ospfv3-lsa-options;
                          description
                            "Network LSA options";
                        }
                      }  // container network
    
                      container prefix {
                        description
                          "OSPFv3 inter area prefix";
                        leaf metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf ia-prefix {
                          type string;
                          description
                            "Inter area Prefix";
                        }
    
                        leaf ia-prefix-options {
                          type string;
                          description
                            "Inter area prefix options";
                        }
                      }  // container prefix
    
                      container ia-router {
                        description
                          "OSPFv3 inter area router";
                        leaf metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf destination-router-id {
                          type uint32;
                          description
                            "Router ID of the router being described by the LSA";
                        }
    
                        leaf lsa-ia-options {
                          type ospfv3-lsa-options;
                          description
                            "Inter area LSA options";
                        }
                      }  // container ia-router
    
                      container lsa-external {
                        description
                          "OSPFv3 LSA external";
                        leaf metric {
                          type uint32;
                          description "Metric";
                        }
    
                        container flags {
                          description
                            "LSA Flags";
                          leaf e-flag {
                            type boolean;
                            description
                              "When set, the metric specified is a Type 2 external metric";
                          }
                        }  // container flags
    
                        leaf referenced-ls-type {
                          type uint16;
                          description
                            "Referenced Link State type";
                        }
    
                        leaf external-prefix {
                          type string;
                          description "Prefix";
                        }
    
                        leaf external-prefix-options {
                          type string;
                          description
                            "Prefix options";
                        }
    
                        leaf forwarding-address {
                          type inet:ip-address;
                          description
                            "Forwarding address";
                        }
    
                        leaf external-route-tag {
                          type uint32;
                          description
                            "Route tag";
                        }
    
                        leaf referenced-link-state-id {
                          type uint32;
                          description
                            "Referenced Link State ID";
                        }
                      }  // container lsa-external
    
                      container nssa {
                        description
                          "OSPFv3 NSSA";
                        container lsa-nssa-external {
                          description "NSSA LSA";
                          leaf metric {
                            type uint32;
                            description "Metric";
                          }
    
                          container flags {
                            description
                              "LSA Flags";
                            leaf e-flag {
                              type boolean;
                              description
                                "When set, the metric specified is a Type 2 external metric";
                            }
                          }  // container flags
    
                          leaf referenced-ls-type {
                            type uint16;
                            description
                              "Referenced Link State type";
                          }
    
                          leaf external-prefix {
                            type string;
                            description "Prefix";
                          }
    
                          leaf external-prefix-options {
                            type string;
                            description
                              "Prefix options";
                          }
    
                          leaf forwarding-address {
                            type inet:ip-address;
                            description
                              "Forwarding address";
                          }
    
                          leaf external-route-tag {
                            type uint32;
                            description
                              "Route tag";
                          }
    
                          leaf referenced-link-state-id {
                            type uint32;
                            description
                              "Referenced Link State ID";
                          }
                        }  // container lsa-nssa-external
                      }  // container nssa
    
                      container link-data {
                        description
                          "OSPFv3 Link data";
                        leaf rtr-priority {
                          type uint8;
                          description
                            "Router priority of the interface";
                        }
    
                        leaf link-local-interface-address {
                          type inet:ip-address;
                          description
                            "The originating router's link-local interface address on the link";
                        }
    
                        leaf num-of-prefixes {
                          type uint32;
                          description
                            "Number of prefixes";
                        }
    
                        leaf lsa-id-options {
                          type ospfv3-lsa-options;
                          description
                            "Link data LSA options";
                        }
                      }  // container link-data
    
                      container ia-prefix {
                        description
                          "OSPFv3 Intra area prefixes";
                        leaf referenced-ls-type {
                          type uint16;
                          description
                            "Referenced Link State type";
                        }
    
                        leaf referenced-link-state-id {
                          type uint32;
                          description
                            "Referenced Link State ID";
                        }
    
                        leaf referenced-adv-router {
                          type inet:ip-address;
                          description
                            "Referenced Advertising Router";
                        }
    
                        leaf num-of-prefixes {
                          type uint16;
                          description
                            "Number of prefixes";
                        }
                      }  // container ia-prefix
    
                      leaf lsa-flag-options {
                        type ospfv3-lsa-options;
                        description
                          "LSA options";
                      }
    
                      leaf lsa-body-flags {
                        type ospfv3-lsa-body-flag-options;
                        description
                          "LSA Body Flags";
                      }
                    }  // container lsa-body
                  }  // container ospfv3-lsa-val
    
                  list ospfv3-link {
                    key "interface-id neighbor-interface-id neighbor-router-id";
                    description "OSPFv3 links";
                    leaf interface-id {
                      type uint32;
                      description "Interface ID";
                    }
    
                    leaf neighbor-interface-id {
                      type uint32;
                      description
                        "Neighbor interface ID";
                    }
    
                    leaf neighbor-router-id {
                      type uint32;
                      description
                        "Neighbor router ID";
                    }
    
                    leaf type {
                      type uint8;
                      description "Link type";
                    }
    
                    leaf metric {
                      type uint16;
                      description "Metric";
                    }
                  }  // list ospfv3-link
    
                  list ospfv3-prefix-list {
                    key "prefix";
                    description
                      "OSPFv3 prefix-list";
                    leaf prefix {
                      type string;
                      description "Prefix";
                    }
    
                    leaf prefix-options {
                      type string;
                      description
                        "Prefix options";
                    }
                  }  // list ospfv3-prefix-list
    
                  list ospfv3-ia-prefix {
                    key "prefix";
                    description
                      "OSPFv3 intra-area prefix-list";
                    leaf prefix {
                      type string;
                      description "Prefix";
                    }
    
                    leaf prefix-options {
                      type string;
                      description
                        "Prefix options";
                    }
                  }  // list ospfv3-ia-prefix
    
                  list multi-topology {
                    key "name";
                    description
                      "OSPF multi-topology interface augmentation";
                    leaf name {
                      type string;
                      description
                        "One of the topology enabled on this interface";
                    }
                  }  // list multi-topology
    
                  leaf router-address {
                    type inet:ip-address;
                    description "Router address";
                  }
    
                  container tlv {
                    description "Link TLV";
                    leaf link-type {
                      type uint8;
                      description "Link type";
                    }
    
                    leaf link-id {
                      type uint32;
                      description "Link ID";
                    }
    
                    leaf-list local-if-ipv4-addr {
                      type inet:ip-address;
                      ordered-by user;
                      description
                        "List of local interface IPv4 addresses";
                    }
    
                    leaf-list local-remote-ipv4-addr {
                      type inet:ip-address;
                      ordered-by user;
                      description
                        "List of remote interface IPv4 addresses";
                    }
    
                    leaf te-metric {
                      type uint32;
                      description "TE metric";
                    }
    
                    leaf max-bandwidth {
                      type decimal64 {
                        fraction-digits 2;
                      }
                      description
                        "Maximum bandwidth";
                    }
    
                    leaf max-reservable-bandwidth {
                      type decimal64 {
                        fraction-digits 2;
                      }
                      description
                        "Maximum reservable bandwidth";
                    }
    
                    leaf unreserved-bandwidth {
                      type decimal64 {
                        fraction-digits 2;
                      }
                      description
                        "Unreserved bandwidth";
                    }
    
                    leaf admin-group {
                      type uint32;
                      description
                        "Administrative group/Resource class/Color";
                    }
                  }  // container tlv
    
                  list unknown-sub-tlv {
                    key "type";
                    description
                      "OSPFv2 Unknown sub TLV";
                    leaf type {
                      type uint16;
                      description "TLV type";
                    }
    
                    leaf length {
                      type uint16;
                      description "TLV length";
                    }
    
                    leaf-list value {
                      type uint8;
                      ordered-by user;
                      description "TLV value";
                    }
                  }  // list unknown-sub-tlv
                }  // list link-scope-lsa
    
                list area-scope-lsa {
                  key "lsa-type adv-router";
                  description
                    "List OSPF area scope LSA databases";
                  leaf lsa-type {
                    type uint32;
                    description "LSA Type";
                  }
    
                  leaf adv-router {
                    type inet:ip-address;
                    description
                      "Advertising router";
                  }
    
                  leaf decoded-completed {
                    type boolean;
                    description
                      "The OSPF LSA body is fully decoded";
                  }
    
                  leaf-list raw-data {
                    type uint8;
                    ordered-by user;
                    description
                      "The complete LSA in network byte order as received/sent over the wire";
                  }
    
                  container ospfv2-lsa {
                    description "OSPFv2 LSA";
                    container header {
                      description
                        "Decoded OSPFv2 LSA header data";
                      leaf lsa-id {
                        type inet:ip-address;
                        description "LSA ID";
                      }
    
                      leaf opaque-type {
                        type uint8;
                        description
                          "Opaque type";
                      }
    
                      leaf opaque-id {
                        type uint32;
                        description "Opaque ID";
                      }
    
                      leaf age {
                        type uint16;
                        description "LSA age";
                      }
    
                      leaf type {
                        type uint16;
                        description "LSA type";
                      }
    
                      leaf adv-router {
                        type uint32;
                        description
                          "LSA advertising router";
                      }
    
                      leaf seq-num {
                        type string;
                        description
                          "LSA sequence number";
                      }
    
                      leaf checksum {
                        type string;
                        description
                          "LSA checksum";
                      }
    
                      leaf length {
                        type uint16;
                        description "LSA length";
                      }
    
                      leaf flag-options {
                        type lsa-flag-options;
                        description
                          "LSA options";
                      }
                    }  // container header
    
                    container lsa-body {
                      description
                        "Decoded OSPFv2 LSA body data";
                      leaf num-of-links {
                        type uint16;
                        description
                          "Number of links";
                      }
    
                      container network {
                        description
                          "Network details";
                        leaf network-mask {
                          type inet:ip-address;
                          description
                            "IP network mask";
                        }
    
                        leaf-list attached-router {
                          type uint32;
                          ordered-by user;
                          description
                            "List of the routers attached to the network";
                        }
                      }  // container network
    
                      leaf summary-mask {
                        type inet:ip-address;
                        description
                          "Summary mask";
                      }
    
                      leaf external-mask {
                        type inet:ip-address;
                        description
                          "External mask";
                      }
    
                      leaf body-flag-options {
                        type ospfv2-lsa-body-flags-options;
                        description
                          "LSA body flags";
                      }
                    }  // container lsa-body
                  }  // container ospfv2-lsa
    
                  list ospfv2-link {
                    key "link-id link-data";
                    description
                      "Router LSA link";
                    leaf link-id {
                      type uint32;
                      description "Link ID";
                    }
    
                    leaf link-data {
                      type uint32;
                      description "Link data";
                    }
    
                    leaf type {
                      type uint8;
                      description "Link type";
                    }
    
                    list ospfv2-topology {
                      key "mt-id";
                      description
                        "Topology specific information";
                      leaf mt-id {
                        type uint32;
                        description
                          "MT-ID for topology enabled link";
                      }
    
                      leaf metric {
                        type uint16;
                        description
                          "Metric for the topology";
                      }
                    }  // list ospfv2-topology
                  }  // list ospfv2-link
    
                  list ospfv2-topology {
                    key "mt-id";
                    description "Summary LSA";
                    leaf mt-id {
                      type uint32;
                      description
                        "MT-ID for topology enabled link";
                    }
    
                    leaf metric {
                      type uint16;
                      description
                        "Metric for the topology";
                    }
                  }  // list ospfv2-topology
    
                  list ospfv2-external {
                    key "mt-id";
                    description "External LSA";
                    leaf mt-id {
                      type uint32;
                      description
                        "MT-ID for topology enabled on the link";
                    }
    
                    leaf metric {
                      type uint32;
                      description
                        "Metric for the topology";
                    }
    
                    leaf forwarding-address {
                      type inet:ip-address;
                      description
                        "Forwarding address";
                    }
    
                    leaf external-route-tag {
                      type uint32;
                      description "Route tag";
                    }
                  }  // list ospfv2-external
    
                  container ospfv3-lsa {
                    description "OSPFv3 LSA";
                    container header {
                      description
                        "Decoded OSPFv3 LSA header";
                      leaf lsa-id {
                        type inet:ip-address;
                        description "LSA ID";
                      }
    
                      container lsa-header {
                        description "LSA header";
                        leaf age {
                          type uint16;
                          description "LSA age";
                        }
    
                        leaf type {
                          type uint16;
                          description "LSA type";
                        }
    
                        leaf adv-router {
                          type uint32;
                          description
                            "LSA advertising router";
                        }
    
                        leaf seq-num {
                          type string;
                          description
                            "LSA sequence number";
                        }
    
                        leaf checksum {
                          type string;
                          description
                            "LSA checksum";
                        }
    
                        leaf length {
                          type uint16;
                          description
                            "LSA length";
                        }
                      }  // container lsa-header
    
                      leaf lsa-hdr-options {
                        type ospfv3-lsa-options;
                        description
                          "OSPFv3 LSA options";
                      }
                    }  // container header
    
                    container lsa-body {
                      description
                        "Decoded OSPFv3 LSA body";
                      container network {
                        description
                          "OSPFv3 network";
                        leaf-list attached-router {
                          type uint32;
                          ordered-by user;
                          description
                            "List of the routers attached to the network";
                        }
    
                        leaf lsa-net-options {
                          type ospfv3-lsa-options;
                          description
                            "Network LSA options";
                        }
                      }  // container network
    
                      container prefix {
                        description
                          "OSPFv3 inter area prefix";
                        leaf metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf ia-prefix {
                          type string;
                          description
                            "Inter area Prefix";
                        }
    
                        leaf ia-prefix-options {
                          type string;
                          description
                            "Inter area prefix options";
                        }
                      }  // container prefix
    
                      container ia-router {
                        description
                          "OSPFv3 inter area router";
                        leaf metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf destination-router-id {
                          type uint32;
                          description
                            "Router ID of the router being described by the LSA";
                        }
    
                        leaf lsa-ia-options {
                          type ospfv3-lsa-options;
                          description
                            "Inter area LSA options";
                        }
                      }  // container ia-router
    
                      container lsa-external {
                        description
                          "OSPFv3 LSA external";
                        leaf metric {
                          type uint32;
                          description "Metric";
                        }
    
                        container flags {
                          description
                            "LSA Flags";
                          leaf e-flag {
                            type boolean;
                            description
                              "When set, the metric specified is a Type 2 external metric";
                          }
                        }  // container flags
    
                        leaf referenced-ls-type {
                          type uint16;
                          description
                            "Referenced Link State type";
                        }
    
                        leaf external-prefix {
                          type string;
                          description "Prefix";
                        }
    
                        leaf external-prefix-options {
                          type string;
                          description
                            "Prefix options";
                        }
    
                        leaf forwarding-address {
                          type inet:ip-address;
                          description
                            "Forwarding address";
                        }
    
                        leaf external-route-tag {
                          type uint32;
                          description
                            "Route tag";
                        }
    
                        leaf referenced-link-state-id {
                          type uint32;
                          description
                            "Referenced Link State ID";
                        }
                      }  // container lsa-external
    
                      container nssa {
                        description
                          "OSPFv3 NSSA";
                        container lsa-nssa-external {
                          description "NSSA LSA";
                          leaf metric {
                            type uint32;
                            description "Metric";
                          }
    
                          container flags {
                            description
                              "LSA Flags";
                            leaf e-flag {
                              type boolean;
                              description
                                "When set, the metric specified is a Type 2 external metric";
                            }
                          }  // container flags
    
                          leaf referenced-ls-type {
                            type uint16;
                            description
                              "Referenced Link State type";
                          }
    
                          leaf external-prefix {
                            type string;
                            description "Prefix";
                          }
    
                          leaf external-prefix-options {
                            type string;
                            description
                              "Prefix options";
                          }
    
                          leaf forwarding-address {
                            type inet:ip-address;
                            description
                              "Forwarding address";
                          }
    
                          leaf external-route-tag {
                            type uint32;
                            description
                              "Route tag";
                          }
    
                          leaf referenced-link-state-id {
                            type uint32;
                            description
                              "Referenced Link State ID";
                          }
                        }  // container lsa-nssa-external
                      }  // container nssa
    
                      container link-data {
                        description
                          "OSPFv3 Link data";
                        leaf rtr-priority {
                          type uint8;
                          description
                            "Router priority of the interface";
                        }
    
                        leaf link-local-interface-address {
                          type inet:ip-address;
                          description
                            "The originating router's link-local interface address on the link";
                        }
    
                        leaf num-of-prefixes {
                          type uint32;
                          description
                            "Number of prefixes";
                        }
    
                        leaf lsa-id-options {
                          type ospfv3-lsa-options;
                          description
                            "Link data LSA options";
                        }
                      }  // container link-data
    
                      container ia-prefix {
                        description
                          "OSPFv3 Intra area prefixes";
                        leaf referenced-ls-type {
                          type uint16;
                          description
                            "Referenced Link State type";
                        }
    
                        leaf referenced-link-state-id {
                          type uint32;
                          description
                            "Referenced Link State ID";
                        }
    
                        leaf referenced-adv-router {
                          type inet:ip-address;
                          description
                            "Referenced Advertising Router";
                        }
    
                        leaf num-of-prefixes {
                          type uint16;
                          description
                            "Number of prefixes";
                        }
                      }  // container ia-prefix
    
                      leaf lsa-flag-options {
                        type ospfv3-lsa-options;
                        description
                          "LSA options";
                      }
    
                      leaf lsa-body-flags {
                        type ospfv3-lsa-body-flag-options;
                        description
                          "LSA Body Flags";
                      }
                    }  // container lsa-body
                  }  // container ospfv3-lsa
    
                  list ospfv3-link {
                    key "interface-id neighbor-interface-id neighbor-router-id";
                    description "OSPFv3 links";
                    leaf interface-id {
                      type uint32;
                      description "Interface ID";
                    }
    
                    leaf neighbor-interface-id {
                      type uint32;
                      description
                        "Neighbor interface ID";
                    }
    
                    leaf neighbor-router-id {
                      type uint32;
                      description
                        "Neighbor router ID";
                    }
    
                    leaf type {
                      type uint8;
                      description "Link type";
                    }
    
                    leaf metric {
                      type uint16;
                      description "Metric";
                    }
                  }  // list ospfv3-link
    
                  list ospfv3-prefix {
                    key "prefix";
                    description
                      "OSPFv3 prefix-list";
                    leaf prefix {
                      type string;
                      description "Prefix";
                    }
    
                    leaf prefix-options {
                      type string;
                      description
                        "Prefix options";
                    }
                  }  // list ospfv3-prefix
    
                  list ospfv3-ia-prefix {
                    key "prefix";
                    description
                      "OSPFv3 intra-area prefix-list";
                    leaf prefix {
                      type string;
                      description "Prefix";
                    }
    
                    leaf prefix-options {
                      type string;
                      description
                        "Prefix options";
                    }
                  }  // list ospfv3-ia-prefix
                }  // list area-scope-lsa
              }  // list link-scope-lsas
    
              list multi-topology {
                key "name";
                description
                  "OSPF multi-topology interface augmentation";
                leaf name {
                  type string;
                  description
                    "One of the topology enabled on this interface";
                }
              }  // list multi-topology
    
              leaf process-id {
                type uint16;
                description
                  "The process identifier used to refer to this instance";
              }
            }  // list ospf-instance
          }  // container ospf-state
    
          list ospfv2-instance {
            key "instance-id";
            description "The OSPF instance";
            leaf instance-id {
              type uint32;
              description
                "The routing instance identifier assigned to the
    OSPF instance";
            }
    
            leaf vrf-name {
              type string;
              description
                "The name of the Virtual Routing and Forwarding
    instance that the OSPF instance is operating within";
            }
    
            leaf router-id {
              type uint32;
              description
                "The router identifier assigned to the OSPF instance";
            }
    
            list ospfv2-area {
              key "area-id";
              description
                "The OSPF area information";
              leaf area-id {
                type uint32;
                description
                  "The area identifier";
              }
    
              list ospfv2-lsdb-area {
                key "lsa-type lsa-id advertising-router";
                description
                  "The OSPF Link State Database information for this area";
                leaf lsa-type {
                  type uint8;
                  description
                    "Link State Advertisement type";
                }
    
                leaf lsa-id {
                  type uint32;
                  description
                    "Link State Advertisement Identifier";
                }
    
                leaf advertising-router {
                  type uint32;
                  description
                    "Advertising router";
                }
    
                leaf lsa-age {
                  type uint16;
                  description
                    "The age of the Link State Advertisement";
                }
    
                leaf lsa-options {
                  type ospfv2-lsa-flag-options;
                  description
                    "The options of the Link State Advertisement";
                }
    
                leaf lsa-seq-number {
                  type uint32;
                  description
                    "The sequence number for the Link State Advertisement";
                }
    
                leaf lsa-checksum {
                  type uint16;
                  description
                    "The checksum of the Link State Advertisement";
                }
    
                leaf lsa-length {
                  type uint16;
                  description
                    "The length, in bytes, of the Link State Advertisement";
                }
    
                list ospfv2-router-lsa-links {
                  key "link-type link-id link-data";
                  description
                    "The router Link State Advertisement links";
                  leaf link-type {
                    type uint8;
                    description "Link Type";
                  }
    
                  leaf link-id {
                    type uint32;
                    description
                      "link Identifier";
                  }
    
                  leaf link-data {
                    type uint32;
                    description "link data";
                  }
    
                  list link-topo {
                    description "Link topology";
                    leaf mt-id {
                      type uint8;
                      description
                        "Multi topology identifier";
                    }
    
                    leaf topo-metric {
                      type uint16;
                      description
                        "Topology metric";
                    }
                  }  // list link-topo
                }  // list ospfv2-router-lsa-links
    
                choice lsa-union-type-choice {
                  description
                    "The type of Link State Advertisement";
                  container unsupported-lsa {
                    description
                      "The unsupported Link State Advertisements";
                    leaf-list lsa-data {
                      type uint8;
                      ordered-by user;
                      description
                        "Link State Advertisement data";
                    }
                  }  // container unsupported-lsa
                  container router-lsa {
                    description
                      "The router Link State Advertisements";
                    leaf router-lsa-bits {
                      type ospfv2-router-lsa-bits;
                      description
                        "Router Link State Advertisement bits";
                    }
    
                    leaf router-lsa-number-links {
                      type uint16;
                      description
                        "Router Link State Advertisement number of links";
                    }
                  }  // container router-lsa
                  container network-lsa {
                    description
                      "The network Link State Advertisements";
                    leaf network-lsa-mask {
                      type uint32;
                      description
                        "Network Link State Advertisement mask";
                    }
    
                    leaf-list network-attached-routers {
                      type uint32;
                      ordered-by user;
                      description
                        "Network attached routers";
                    }
                  }  // container network-lsa
                  container network-summary-lsa {
                    description
                      "The network summary Link State Advertisements";
                    leaf summary-lsa-mask {
                      type uint32;
                      description
                        "The summary Link State Advertisement mask";
                    }
    
                    list summary-topo {
                      description
                        "The summary topology";
                      leaf mt-id {
                        type uint8;
                        description
                          "Multi topology identifier";
                      }
    
                      leaf topo-metric {
                        type uint32;
                        description
                          "Topology Metric";
                      }
                    }  // list summary-topo
                  }  // container network-summary-lsa
                  container router-summary-lsa {
                    description
                      "The router summary Link State Advertisements";
                    leaf summary-lsa-mask {
                      type uint32;
                      description
                        "The summary Link State Advertisement mask";
                    }
    
                    list summary-topo {
                      description
                        "The summary topology";
                      leaf mt-id {
                        type uint8;
                        description
                          "Multi topology identifier";
                      }
    
                      leaf topo-metric {
                        type uint32;
                        description
                          "Topology Metric";
                      }
                    }  // list summary-topo
                  }  // container router-summary-lsa
                  container external-lsa {
                    description
                      "The external Link State Advertisements";
                    leaf external-lsa-mask {
                      type uint32;
                      description
                        "The mask for the external Link State Advertisement";
                    }
    
                    list external-topo {
                      description
                        "The external topology Link State Advertisement";
                      leaf mt-id {
                        type uint8;
                        description
                          "The multi topology identifier";
                      }
    
                      leaf topo-metric-type {
                        type ospf-external-metric-type;
                        description
                          "The topology metric type associated with the
    Link State Advertisement";
                      }
    
                      leaf topo-metric {
                        type uint32;
                        description
                          "The topology metric";
                      }
    
                      leaf topo-forwarding-address {
                        type inet:ip-address;
                        description
                          "The topology forwarding address";
                      }
    
                      leaf topo-route-tag {
                        type uint32;
                        description
                          "The topology route tag";
                      }
                    }  // list external-topo
                  }  // container external-lsa
                  container nssa-lsa {
                    description
                      "The Not So Stubby Area Link state advertisements";
                    leaf external-lsa-mask {
                      type uint32;
                      description
                        "The mask for the external Link State Advertisement";
                    }
    
                    list external-topo {
                      description
                        "The external topology Link State Advertisement";
                      leaf mt-id {
                        type uint8;
                        description
                          "The multi topology identifier";
                      }
    
                      leaf topo-metric-type {
                        type ospf-external-metric-type;
                        description
                          "The topology metric type associated with the
    Link State Advertisement";
                      }
    
                      leaf topo-metric {
                        type uint32;
                        description
                          "The topology metric";
                      }
    
                      leaf topo-forwarding-address {
                        type inet:ip-address;
                        description
                          "The topology forwarding address";
                      }
    
                      leaf topo-route-tag {
                        type uint32;
                        description
                          "The topology route tag";
                      }
                    }  // list external-topo
                  }  // container nssa-lsa
                }  // choice lsa-union-type-choice
              }  // list ospfv2-lsdb-area
    
              list ospfv2-interface {
                key "name";
                description
                  "A list of interfaces that belong to the area";
                leaf name {
                  type string;
                  description
                    "Name of the interface";
                }
    
                leaf network-type {
                  type ospf-network-type;
                  description "Network type";
                }
    
                leaf enable {
                  type boolean;
                  description
                    "If the interface is enabled";
                }
    
                leaf passive {
                  type boolean;
                  description
                    "If the interface is in passive mode";
                }
    
                leaf demand-circuit {
                  type boolean;
                  description
                    "If this is a demand circuit";
                }
    
                leaf mtu-ignore {
                  type boolean;
                  description
                    "If the MTU is being ignored";
                }
    
                leaf prefix-suppresion {
                  type boolean;
                  description
                    "If prefix suppression is enabled";
                }
    
                leaf cost {
                  type uint16;
                  description "The OSPFv2 cost";
                }
    
                leaf hello-interval {
                  type uint16;
                  description
                    "The hello interval in seconds";
                }
    
                leaf dead-interval {
                  type uint16;
                  description
                    "The dead interval in seconds";
                }
    
                leaf retransmit-interval {
                  type uint16;
                  description
                    "The retransmit interval in seconds";
                }
    
                leaf transmit-delay {
                  type uint16;
                  description
                    "The delay before transmitting a keepalive in seconds";
                }
    
                leaf hello-timer {
                  type uint32;
                  description
                    "The current hello timer in seconds";
                }
    
                leaf wait-timer {
                  type uint32;
                  description
                    "The wait timer in seconds";
                }
    
                leaf dr {
                  type uint32;
                  description
                    "The designated router identifier";
                }
    
                leaf bdr {
                  type uint32;
                  description
                    "The backup designated router identifier";
                }
    
                leaf dr-ip {
                  type inet:ip-address;
                  description
                    "The address of the designated router";
                }
    
                leaf bdr-ip {
                  type inet:ip-address;
                  description
                    "The address of the backup designated router";
                }
    
                leaf state {
                  type ospfv2-intf-state;
                  description
                    "The current state of the interface";
                }
    
                container ttl-security-val {
                  description
                    "The TTL security information";
                  leaf enable {
                    type boolean;
                    description
                      "Indicates whether time to live security is enabled";
                  }
    
                  leaf hops {
                    type int32;
                    description
                      "Number of hops for time to live security";
                  }
                }  // container ttl-security-val
    
                container auth-val {
                  description
                    "The authentication information";
                  choice auth-type-sel-choice {
                    description
                      "Authentication used";
                    leaf no-auth {
                      type uint32;
                      description
                        "No authentication in use";
                    }
                    container auth-key {
                      description
                        "Trailer key chain information";
                      leaf key-id {
                        type uint8;
                        description
                          "The key identifier";
                      }
    
                      leaf-list key-string {
                        type uint8;
                        ordered-by user;
                        description
                          "The key string";
                      }
    
                      leaf crypto-algo {
                        type ospfv2-crypto-algorithm;
                        description
                          "The algorithm in use";
                      }
                    }  // container auth-key
                    container key-chain {
                      description
                        "Trailer key information";
                      leaf-list key-chain {
                        type uint8;
                        ordered-by user;
                        description
                          "The key chain";
                      }
                    }  // container key-chain
                  }  // choice auth-type-sel-choice
                }  // container auth-val
    
                list ospfv2-neighbor {
                  key "nbr-id";
                  description
                    "All the neighbors on the interface";
                  leaf nbr-id {
                    type uint32;
                    description
                      "The neighbor identifier";
                  }
    
                  leaf address {
                    type inet:ip-address;
                    description
                      "Neighbor address";
                  }
    
                  leaf dr {
                    type uint32;
                    description
                      "The neighbor's Designated Router identifier ";
                  }
    
                  leaf bdr {
                    type uint32;
                    description
                      "The neighbor's Backup Designated Router identifier";
                  }
    
                  leaf dr-ip {
                    type inet:ip-address;
                    description
                      "The designated routers' IP address";
                  }
    
                  leaf bdr-ip {
                    type inet:ip-address;
                    description
                      "The backup designated routers' IP address";
                  }
    
                  leaf event-count {
                    type uint32;
                    description
                      "A count of neighbor events";
                  }
    
                  leaf retrans-count {
                    type uint32;
                    description
                      "A count of the retransmission events";
                  }
    
                  leaf state {
                    type nbr-state-type;
                    description
                      "The current neighbor state";
                  }
    
                  leaf dead-timer {
                    type uint32;
                    description
                      "The dead timer in seconds";
                  }
                }  // list ospfv2-neighbor
              }  // list ospfv2-interface
            }  // list ospfv2-area
    
            list ospfv2-lsdb-external {
              key "lsa-type lsa-id advertising-router";
              description
                "The external LSDB information";
              leaf lsa-type {
                type uint8;
                description
                  "Link State Advertisement type";
              }
    
              leaf lsa-id {
                type uint32;
                description
                  "Link State Advertisement Identifier";
              }
    
              leaf advertising-router {
                type uint32;
                description "Advertising router";
              }
    
              leaf lsa-age {
                type uint16;
                description
                  "The age of the Link State Advertisement";
              }
    
              leaf lsa-options {
                type ospfv2-lsa-flag-options;
                description
                  "The options of the Link State Advertisement";
              }
    
              leaf lsa-seq-number {
                type uint32;
                description
                  "The sequence number for the Link State Advertisement";
              }
    
              leaf lsa-checksum {
                type uint16;
                description
                  "The checksum of the Link State Advertisement";
              }
    
              leaf lsa-length {
                type uint16;
                description
                  "The length, in bytes, of the Link State Advertisement";
              }
    
              list ospfv2-router-lsa-links {
                key "link-type link-id link-data";
                description
                  "The router Link State Advertisement links";
                leaf link-type {
                  type uint8;
                  description "Link Type";
                }
    
                leaf link-id {
                  type uint32;
                  description "link Identifier";
                }
    
                leaf link-data {
                  type uint32;
                  description "link data";
                }
    
                list link-topo {
                  description "Link topology";
                  leaf mt-id {
                    type uint8;
                    description
                      "Multi topology identifier";
                  }
    
                  leaf topo-metric {
                    type uint16;
                    description
                      "Topology metric";
                  }
                }  // list link-topo
              }  // list ospfv2-router-lsa-links
    
              choice lsa-union-type-choice {
                description
                  "The type of Link State Advertisement";
                container unsupported-lsa {
                  description
                    "The unsupported Link State Advertisements";
                  leaf-list lsa-data {
                    type uint8;
                    ordered-by user;
                    description
                      "Link State Advertisement data";
                  }
                }  // container unsupported-lsa
                container router-lsa {
                  description
                    "The router Link State Advertisements";
                  leaf router-lsa-bits {
                    type ospfv2-router-lsa-bits;
                    description
                      "Router Link State Advertisement bits";
                  }
    
                  leaf router-lsa-number-links {
                    type uint16;
                    description
                      "Router Link State Advertisement number of links";
                  }
                }  // container router-lsa
                container network-lsa {
                  description
                    "The network Link State Advertisements";
                  leaf network-lsa-mask {
                    type uint32;
                    description
                      "Network Link State Advertisement mask";
                  }
    
                  leaf-list network-attached-routers {
                    type uint32;
                    ordered-by user;
                    description
                      "Network attached routers";
                  }
                }  // container network-lsa
                container network-summary-lsa {
                  description
                    "The network summary Link State Advertisements";
                  leaf summary-lsa-mask {
                    type uint32;
                    description
                      "The summary Link State Advertisement mask";
                  }
    
                  list summary-topo {
                    description
                      "The summary topology";
                    leaf mt-id {
                      type uint8;
                      description
                        "Multi topology identifier";
                    }
    
                    leaf topo-metric {
                      type uint32;
                      description
                        "Topology Metric";
                    }
                  }  // list summary-topo
                }  // container network-summary-lsa
                container router-summary-lsa {
                  description
                    "The router summary Link State Advertisements";
                  leaf summary-lsa-mask {
                    type uint32;
                    description
                      "The summary Link State Advertisement mask";
                  }
    
                  list summary-topo {
                    description
                      "The summary topology";
                    leaf mt-id {
                      type uint8;
                      description
                        "Multi topology identifier";
                    }
    
                    leaf topo-metric {
                      type uint32;
                      description
                        "Topology Metric";
                    }
                  }  // list summary-topo
                }  // container router-summary-lsa
                container external-lsa {
                  description
                    "The external Link State Advertisements";
                  leaf external-lsa-mask {
                    type uint32;
                    description
                      "The mask for the external Link State Advertisement";
                  }
    
                  list external-topo {
                    description
                      "The external topology Link State Advertisement";
                    leaf mt-id {
                      type uint8;
                      description
                        "The multi topology identifier";
                    }
    
                    leaf topo-metric-type {
                      type ospf-external-metric-type;
                      description
                        "The topology metric type associated with the
    Link State Advertisement";
                    }
    
                    leaf topo-metric {
                      type uint32;
                      description
                        "The topology metric";
                    }
    
                    leaf topo-forwarding-address {
                      type inet:ip-address;
                      description
                        "The topology forwarding address";
                    }
    
                    leaf topo-route-tag {
                      type uint32;
                      description
                        "The topology route tag";
                    }
                  }  // list external-topo
                }  // container external-lsa
                container nssa-lsa {
                  description
                    "The Not So Stubby Area Link state advertisements";
                  leaf external-lsa-mask {
                    type uint32;
                    description
                      "The mask for the external Link State Advertisement";
                  }
    
                  list external-topo {
                    description
                      "The external topology Link State Advertisement";
                    leaf mt-id {
                      type uint8;
                      description
                        "The multi topology identifier";
                    }
    
                    leaf topo-metric-type {
                      type ospf-external-metric-type;
                      description
                        "The topology metric type associated with the
    Link State Advertisement";
                    }
    
                    leaf topo-metric {
                      type uint32;
                      description
                        "The topology metric";
                    }
    
                    leaf topo-forwarding-address {
                      type inet:ip-address;
                      description
                        "The topology forwarding address";
                    }
    
                    leaf topo-route-tag {
                      type uint32;
                      description
                        "The topology route tag";
                    }
                  }  // list external-topo
                }  // container nssa-lsa
              }  // choice lsa-union-type-choice
            }  // list ospfv2-lsdb-external
          }  // list ospfv2-instance
    
          list ospfv3-router {
            key "process-id";
            description
              "The OSPFv3 router instance";
            leaf process-id {
              type uint16;
              description "OSPFv3 process id";
            }
    
            list ospfv3-afi {
              key "af vrf";
              description
                "OSPFv3 address family";
              leaf router-id {
                type inet:ipv4-address;
                description "OSPFv3 area ID";
              }
    
              list ospfv3-as-scope-lsa {
                key "lsa-type lsa-id advertising-router";
                description
                  "OSPFv3 AS scope LSA";
                leaf lsa-type {
                  type uint16;
                  description
                    "Link state advertisement type";
                }
    
                leaf lsa-id {
                  type uint32;
                  description
                    "Link state advertisement identifier";
                }
    
                leaf advertising-router {
                  type inet:ipv4-address;
                  description
                    "Advertising router";
                }
    
                container lsa-header-info {
                  description "LSA header info";
                  leaf lsa-age {
                    type uint16;
                    units "seconds";
                    description
                      "Age of the link state advertisement";
                  }
    
                  leaf lsa-seq-number {
                    type uint32;
                    description
                      "Sequence number for the link state advertisement";
                  }
    
                  leaf lsa-checksum {
                    type uint16;
                    description
                      "Checksum of the link state advertisement";
                  }
    
                  leaf lsa-length {
                    type uint16;
                    units "bytes";
                    description
                      "The length of the link state advertisement";
                  }
                }  // container lsa-header-info
    
                container ase-lsa {
                  description "AS-External LSA";
                  container prefix {
                    description
                      "The prefix for the external LSA";
                    leaf options {
                      type ospfv3-lsa-pfx-opts;
                      description
                        "The options advertised for the prefix in the LSA";
                    }
    
                    leaf prefix {
                      type inet:ip-prefix;
                      description
                        "Address of the prefix";
                    }
                  }  // container prefix
    
                  leaf metric-type {
                    type ospfv3-ase-metric-type;
                    description
                      "Metric type: 2 (larger than any link state path), Metric type: 1 (comparable directly to link state metric)";
                  }
    
                  leaf metric {
                    type uint32;
                    description
                      "The AS external LSA metric";
                  }
                }  // container ase-lsa
              }  // list ospfv3-as-scope-lsa
    
              list ospfv3-area {
                key "area-id";
                description "OSPFv3 area";
                leaf area-id {
                  type uint32;
                  description "OSPFv3 area ID";
                }
    
                list ospfv3-intf {
                  key "name";
                  description
                    "OSPFv3 interfaces";
                  leaf name {
                    type string;
                    description "Interface name";
                  }
    
                  leaf network-type {
                    type ospf-ios-xe-common:ospfv3-network-type;
                    description "Network type";
                  }
    
                  leaf enable {
                    type boolean;
                    description
                      "Indicates whether OSPFv3 is enabled or disabled on the interface";
                  }
    
                  leaf passive {
                    type boolean;
                    description
                      "Indicates whether interface is passive or not";
                  }
    
                  leaf demand-circuit {
                    type boolean;
                    description
                      "Indicates whether demand circuit is enabled or disabled";
                  }
    
                  leaf mtu-ignore {
                    type boolean;
                    description
                      "Indicates whether ignoring of MTU in DBD packets is enabled or disabled";
                  }
    
                  leaf prefix-suppression {
                    type boolean;
                    description
                      "Suppress advertisement of the prefixes";
                  }
    
                  leaf cost {
                    type uint16;
                    description "Interface cost";
                  }
    
                  leaf hello-interval {
                    type uint16;
                    units "seconds";
                    description
                      "Time between hello packets";
                  }
    
                  leaf dead-interval {
                    type uint16;
                    units "seconds";
                    description
                      "Interval to declare neighbor as dead";
                  }
    
                  leaf retransmit-interval {
                    type uint16;
                    units "seconds";
                    description
                      "Time between retransmitting unacknowledged link-state advertisements (LSAs)";
                  }
    
                  leaf transmit-delay {
                    type uint16;
                    units "seconds";
                    description
                      "Estimated time needed to send link-state update";
                  }
    
                  leaf hello-timer {
                    type uint32;
                    units "seconds";
                    description "Hello timer";
                  }
    
                  leaf wait-timer {
                    type uint32;
                    units "seconds";
                    description "Wait timer";
                  }
    
                  leaf dr {
                    type inet:ipv4-address;
                    description
                      "Designated router";
                  }
    
                  leaf bdr {
                    type inet:ipv4-address;
                    description
                      "Backup designated router";
                  }
    
                  leaf dr-ip {
                    type inet:ipv6-address;
                    description
                      "Designated router IP address";
                  }
    
                  leaf bdr-ip {
                    type inet:ipv6-address;
                    description
                      "Backup designated router IP address";
                  }
    
                  leaf if-state {
                    type ospf-ios-xe-common:ospfv3-if-state;
                    description
                      "Interface state";
                  }
    
                  container ttl-security {
                    description "TTL security";
                    leaf enable {
                      type boolean;
                      description
                        "Enable TTL security on interface";
                    }
    
                    leaf hops {
                      type uint8;
                      description
                        "Number of Hops Count";
                    }
                  }  // container ttl-security
    
                  container authentication {
                    description
                      "Authentication on interface";
                    leaf trailer-key-chain {
                      type string;
                      description
                        "Key chain name";
                    }
    
                    container ipsec-key {
                      description
                        "IPSEC authentication";
                      leaf algorithm {
                        type ospfv3-ipsec-auth-algo;
                        description
                          "IPSEC authentication algorithm";
                      }
    
                      leaf spi {
                        type uint32;
                        description
                          "Security parameter index";
                      }
    
                      leaf key-string {
                        type string;
                        description
                          "Key for IPSEC algorithm";
                      }
                    }  // container ipsec-key
                  }  // container authentication
    
                  list ospfv3-link-scope-lsa {
                    key "lsa-type lsa-id advertising-router";
                    description
                      "OSPFv3 link scope LSA ";
                    leaf lsa-type {
                      type uint16;
                      description
                        "Link state advertisement type";
                    }
    
                    leaf lsa-id {
                      type uint32;
                      description
                        "Link state advertisement identifier";
                    }
    
                    leaf advertising-router {
                      type inet:ipv4-address;
                      description
                        "Advertising router";
                    }
    
                    container lsa-header-info {
                      description
                        "LSA header details";
                      leaf lsa-age {
                        type uint16;
                        units "seconds";
                        description
                          "Age of the link state advertisement";
                      }
    
                      leaf lsa-seq-number {
                        type uint32;
                        description
                          "Sequence number for the link state advertisement";
                      }
    
                      leaf lsa-checksum {
                        type uint16;
                        description
                          "Checksum of the link state advertisement";
                      }
    
                      leaf lsa-length {
                        type uint16;
                        units "bytes";
                        description
                          "The length of the link state advertisement";
                      }
                    }  // container lsa-header-info
    
                    container link-lsa {
                      description
                        "Link LSA information";
                      leaf router-priority {
                        type uint8;
                        description
                          "The router priority for the link LSA";
                      }
    
                      leaf options {
                        type ospfv3-lsa-flag-opts;
                        description
                          "The options for the link LSA";
                      }
    
                      leaf local-addr {
                        type inet:ip-address;
                        description
                          "The link local address";
                      }
    
                      list prefix {
                        description
                          "Details of the prefixes in link LSA";
                        leaf options {
                          type ospfv3-lsa-pfx-opts;
                          description
                            "The options advertised for the prefix in the LSA";
                        }
    
                        leaf prefix {
                          type inet:ip-prefix;
                          description
                            "Address of the prefix";
                        }
                      }  // list prefix
                    }  // container link-lsa
                  }  // list ospfv3-link-scope-lsa
    
                  list ospfv3-nbr {
                    key "nbr-id";
                    description
                      "OSPFv3 neighbors";
                    leaf nbr-id {
                      type inet:ipv4-address;
                      description
                        "OSPFv3 neighbor ID";
                    }
    
                    leaf address {
                      type inet:ipv6-address;
                      description
                        "IPv6 link-local address";
                    }
    
                    leaf dr {
                      type inet:ipv4-address;
                      description
                        "Designated router";
                    }
    
                    leaf bdr {
                      type inet:ipv4-address;
                      description
                        "Backup designated router";
                    }
    
                    leaf event-count {
                      type uint32;
                      description
                        "OSPFv3 neighbor event count";
                    }
    
                    leaf retrans-count {
                      type uint32;
                      description
                        "OSPFv3 neighbor retransmission count";
                    }
    
                    leaf nbr-state {
                      type ospf-ios-xe-common:ospfv3-nbr-state;
                      description
                        "OSPFv3 neighbor state";
                    }
    
                    leaf dead-timer {
                      type uint32;
                      units "seconds";
                      description
                        "Dead timer for the neighbor";
                    }
                  }  // list ospfv3-nbr
                }  // list ospfv3-intf
    
                list ospfv3-area-scope-lsa {
                  key "lsa-type lsa-id advertising-router";
                  description
                    "OSPFv3 link state database information in this area";
                  leaf lsa-type {
                    type uint16;
                    description
                      "Link state advertisement type";
                  }
    
                  leaf lsa-id {
                    type uint32;
                    description
                      "Link state advertisement identifier";
                  }
    
                  leaf advertising-router {
                    type inet:ipv4-address;
                    description
                      "Advertising router";
                  }
    
                  container lsa-header-info {
                    description
                      "The link state advertisement header info";
                    leaf lsa-age {
                      type uint16;
                      units "seconds";
                      description
                        "Age of the link state advertisement";
                    }
    
                    leaf lsa-seq-number {
                      type uint32;
                      description
                        "Sequence number for the link state advertisement";
                    }
    
                    leaf lsa-checksum {
                      type uint16;
                      description
                        "Checksum of the link state advertisement";
                    }
    
                    leaf lsa-length {
                      type uint16;
                      units "bytes";
                      description
                        "The length of the link state advertisement";
                    }
                  }  // container lsa-header-info
    
                  list ospfv3-router-lsa-link {
                    key "link-type link-intf-id nbr-intf-id nbr-rtr-id";
                    description
                      "Router LSA links info";
                    leaf link-type {
                      type ospfv3-rtr-lsa-lnk-type;
                      description
                        "Router LSA link type";
                    }
    
                    leaf link-intf-id {
                      type uint32;
                      description
                        "Router LSA link interface ID";
                    }
    
                    leaf nbr-intf-id {
                      type uint32;
                      description
                        "Router LSA link neighbor interface ID";
                    }
    
                    leaf nbr-rtr-id {
                      type inet:ipv4-address;
                      description
                        "Router LSA link type";
                    }
    
                    list link-topo {
                      description
                        "Router LSA link topology";
                      leaf mt-id {
                        type uint8;
                        description
                          "Router link topo ID";
                      }
    
                      leaf metric {
                        type uint16;
                        description
                          "Router link topo metric";
                      }
                    }  // list link-topo
                  }  // list ospfv3-router-lsa-link
    
                  choice area-scope-lsa-type-choice {
                    description
                      "The type of link state advertisement";
                    case ospfv3-lsa-type-router {
                      description "Router LSA";
                      container router-lsa {
                        description
                          "The router link state advertisement";
                        leaf bits {
                          type ospfv3-rtr-lsa-bits;
                          description
                            "OSPFv3 router LSA bits";
                        }
    
                        leaf options {
                          type ospfv3-lsa-flag-opts;
                          description
                            "OSPFv3 router LSA options";
                        }
    
                        leaf num-links {
                          type uint32;
                          description
                            "Number of OSPFv3 router LSA links";
                        }
                      }  // container router-lsa
                    }  // case ospfv3-lsa-type-router
    
                    case ospfv3-lsa-type-network {
                      description "Network LSA";
                      container network-lsa {
                        description
                          "The network link state advertisement";
                        leaf-list attached-rtrs {
                          type inet:ipv4-address;
                          ordered-by user;
                          description
                            "Network attached routers";
                        }
    
                        leaf options {
                          type ospfv3-lsa-flag-opts;
                          description
                            "OSPFv3 LSA options";
                        }
                      }  // container network-lsa
                    }  // case ospfv3-lsa-type-network
    
                    case ospfv3-lsa-type-inter-area-prefix {
                      description
                        "Inter-area prefix LSA";
                      container iapfx-lsa {
                        description
                          "The inter-area prefix link state advertisement";
                        leaf metric {
                          type uint32;
                          description
                            "Metric for inter-area prefix LSA";
                        }
    
                        container prefix {
                          description
                            "Advertised prefix in inter-area prefix LSA";
                          leaf options {
                            type ospfv3-lsa-pfx-opts;
                            description
                              "The options advertised for the prefix in the LSA";
                          }
    
                          leaf prefix {
                            type inet:ip-prefix;
                            description
                              "Address of the prefix";
                          }
                        }  // container prefix
                      }  // container iapfx-lsa
                    }  // case ospfv3-lsa-type-inter-area-prefix
    
                    case ospfv3-lsa-type-inter-area-router {
                      description
                        "Inter-area router LSA";
                      container iartr-lsa {
                        description
                          "The inter-area router link state advertisement";
                        leaf metric {
                          type uint32;
                          description
                            "Metric for inter-area router LSA";
                        }
    
                        leaf options {
                          type ospfv3-lsa-flag-opts;
                          description
                            "Options advertised in inter-area router LSA";
                        }
    
                        leaf rtr-id {
                          type inet:ipv4-address;
                          description
                            "Advertising router in inter-area router LSA";
                        }
                      }  // container iartr-lsa
                    }  // case ospfv3-lsa-type-inter-area-router
    
                    case ospfv3-lsa-type-nssa {
                      description "NSSA LSA";
                      container nssa-lsa {
                        description
                          "The not-so-stubby-area link state advertisement";
                        container prefix {
                          description
                            "The prefix for the external LSA";
                          leaf options {
                            type ospfv3-lsa-pfx-opts;
                            description
                              "The options advertised for the prefix in the LSA";
                          }
    
                          leaf prefix {
                            type inet:ip-prefix;
                            description
                              "Address of the prefix";
                          }
                        }  // container prefix
    
                        leaf metric-type {
                          type ospfv3-ase-metric-type;
                          description
                            "Metric type: 2 (larger than any link state path), Metric type: 1 (comparable directly to link state metric)";
                        }
    
                        leaf metric {
                          type uint32;
                          description
                            "The AS external LSA metric";
                        }
                      }  // container nssa-lsa
                    }  // case ospfv3-lsa-type-nssa
    
                    case ospfv3-lsa-type-prefix {
                      description "Prefix LSA";
                      container prefix-lsa {
                        description
                          "The intra-area prefix link state advertisement";
                        leaf ref-ls-type {
                          type uint16;
                          description
                            "Referenced lSA type";
                        }
    
                        leaf ref-ls-id {
                          type uint32;
                          description
                            "Referenced link state ID";
                        }
    
                        leaf ref-adv-rtr {
                          type inet:ipv4-address;
                          description
                            "Reference advertising router";
                        }
    
                        list prefix {
                          description
                            "Prefix info in intra-area prefix LSA";
                          leaf options {
                            type ospfv3-lsa-pfx-opts;
                            description
                              "The options advertised for the prefix in the LSA";
                          }
    
                          leaf prefix {
                            type inet:ip-prefix;
                            description
                              "Address of the prefix";
                          }
    
                          leaf metric {
                            type uint16;
                            description
                              "Metric for the prefix";
                          }
                        }  // list prefix
                      }  // container prefix-lsa
                    }  // case ospfv3-lsa-type-prefix
                  }  // choice area-scope-lsa-type-choice
                }  // list ospfv3-area-scope-lsa
              }  // list ospfv3-area
    
              leaf af {
                type ospf-ios-xe-common:ospfv3-address-family-types;
                description
                  "OSPFv3 address family";
              }
    
              leaf vrf {
                type string;
                description "VRF name";
              }
            }  // list ospfv3-afi
          }  // list ospfv3-router
        }  // container ospf-oper-data
      }  // module Cisco-IOS-XE-ospf-oper
    

© 2023 YumaWorks, Inc. All rights reserved.