Use ietf-ip.yang from mdsal instead of our own 81/70781/1
authorLorand Jakab <lojakab@cisco.com>
Wed, 11 Apr 2018 12:57:58 +0000 (15:57 +0300)
committerLorand Jakab <lojakab@cisco.com>
Wed, 11 Apr 2018 12:57:58 +0000 (15:57 +0300)
Change-Id: I368657319c6fa22a6dd93507af479dfb2edc64f0
Signed-off-by: Lorand Jakab <lojakab@cisco.com>
mappingservice/neutron/pom.xml
mappingservice/neutron/src/main/yang/ietf-ip.yang [deleted file]

index 6d6195afd53f2f78dd5c6917e1fb176227e62c79..9071417b6792c69e556f4cc7b821db103fd04a9a 100644 (file)
       <groupId>org.opendaylight.mdsal.model</groupId>
       <artifactId>iana-if-type-2014-05-08</artifactId>
     </dependency>
+    <dependency>
+      <groupId>org.opendaylight.mdsal.model</groupId>
+      <artifactId>ietf-ip-2014-06-16</artifactId>
+    </dependency>
     <dependency>
       <groupId>org.opendaylight.netconf</groupId>
       <artifactId>sal-netconf-connector</artifactId>
diff --git a/mappingservice/neutron/src/main/yang/ietf-ip.yang b/mappingservice/neutron/src/main/yang/ietf-ip.yang
deleted file mode 100644 (file)
index f6c59ed..0000000
+++ /dev/null
@@ -1,742 +0,0 @@
-module ietf-ip {
-
-  yang-version 1;
-
-  namespace
-    "urn:ietf:params:xml:ns:yang:ietf-ip";
-
-  prefix ip;
-
-  import ietf-interfaces {
-    prefix if;
-  }
-  import ietf-inet-types {
-    prefix inet;
-  }
-  import ietf-yang-types {
-    prefix yang;
-  }
-
-  organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-  contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-  WG List:  <mailto:netmod@ietf.org>
-
-  WG Chair: Thomas Nadeau
-            <mailto:tnadeau@lucidvision.com>
-
-  WG Chair: Juergen Schoenwaelder
-            <mailto:j.schoenwaelder@jacobs-university.de>
-
-  Editor:   Martin Bjorklund
-            <mailto:mbj@tail-f.com>";
-
-  description
-    "This module contains a collection of YANG definitions for
-  configuring IP implementations.
-
-  Copyright (c) 2014 IETF Trust and the persons identified as
-  authors of the code.  All rights reserved.
-
-  Redistribution and use in source and binary forms, with or
-  without modification, is permitted pursuant to, and subject
-  to the license terms contained in, the Simplified BSD License
-  set forth in Section 4.c of the IETF Trust's Legal Provisions
-  Relating to IETF Documents
-  (http://trustee.ietf.org/license-info).
-
-  This version of this YANG module is part of RFC 7277; see
-  the RFC itself for full legal notices.";
-
-  revision "2014-06-16" {
-    description "Initial revision.";
-    reference
-      "RFC 7277: A YANG Data Model for IP Management";
-
-  }
-
-
-  feature ipv4-non-contiguous-netmasks {
-    description
-      "Indicates support for configuring non-contiguous
-    subnet masks.";
-  }
-
-  feature ipv6-privacy-autoconf {
-    description
-      "Indicates support for Privacy Extensions for Stateless Address
-    Autoconfiguration in IPv6.";
-    reference
-      "RFC 4941: Privacy Extensions for Stateless Address
-         Autoconfiguration in IPv6";
-
-  }
-
-  typedef ip-address-origin {
-    type enumeration {
-      enum "other" {
-        value 0;
-        description
-          "None of the following.";
-      }
-      enum "static" {
-        value 1;
-        description
-          "Indicates that the address has been statically
-        configured - for example, using NETCONF or a Command Line
-        Interface.";
-      }
-      enum "dhcp" {
-        value 2;
-        description
-          "Indicates an address that has been assigned to this
-        system by a DHCP server.";
-      }
-      enum "link-layer" {
-        value 3;
-        description
-          "Indicates an address created by IPv6 stateless
-        autoconfiguration that embeds a link-layer address in its
-        interface identifier.";
-      }
-      enum "random" {
-        value 4;
-        description
-          "Indicates an address chosen by the system at
-
-        random, e.g., an IPv4 address within 169.254/16, an
-        RFC 4941 temporary address, or an RFC 7217 semantically
-        opaque address.";
-        reference
-          "RFC 4941: Privacy Extensions for Stateless Address
-                 Autoconfiguration in IPv6
-           RFC 7217: A Method for Generating Semantically Opaque
-                 Interface Identifiers with IPv6 Stateless
-                 Address Autoconfiguration (SLAAC)";
-
-      }
-    }
-    description
-      "The origin of an address.";
-  }
-
-  typedef neighbor-origin {
-    type enumeration {
-      enum "other" {
-        value 0;
-        description
-          "None of the following.";
-      }
-      enum "static" {
-        value 1;
-        description
-          "Indicates that the mapping has been statically
-        configured - for example, using NETCONF or a Command Line
-        Interface.";
-      }
-      enum "dynamic" {
-        value 2;
-        description
-          "Indicates that the mapping has been dynamically resolved
-        using, e.g., IPv4 ARP or the IPv6 Neighbor Discovery
-        protocol.";
-      }
-    }
-    description
-      "The origin of a neighbor entry.";
-  }
-
-  augment /if:interfaces/if:interface {
-    description
-      "Parameters for configuring IP on interfaces.
-
-    If an interface is not capable of running IP, the server
-    must not allow the client to configure these parameters.";
-    container ipv4 {
-      presence
-        "Enables IPv4 unless the 'enabled' leaf
-      (which defaults to 'true') is set to 'false'";
-      description
-        "Parameters for the IPv4 address family.";
-      leaf enabled {
-        type boolean;
-        default 'true';
-        description
-          "Controls whether IPv4 is enabled or disabled on this
-        interface.  When IPv4 is enabled, this interface is
-        connected to an IPv4 stack, and the interface can send
-        and receive IPv4 packets.";
-      }
-
-      leaf forwarding {
-        type boolean;
-        default 'false';
-        description
-          "Controls IPv4 packet forwarding of datagrams received by,
-        but not addressed to, this interface.  IPv4 routers
-        forward datagrams.  IPv4 hosts do not (except those
-        source-routed via the host).";
-      }
-
-      leaf mtu {
-        type uint16 {
-          range "68..max";
-        }
-        units "octets";
-        description
-          "The size, in octets, of the largest IPv4 packet that the
-        interface will send and receive.
-
-        The server may restrict the allowed values for this leaf,
-        depending on the interface's type.
-
-        If this leaf is not configured, the operationally used MTU
-        depends on the interface's type.";
-        reference
-          "RFC 791: Internet Protocol";
-
-      }
-
-      list address {
-        key "ip";
-        description
-          "The list of configured IPv4 addresses on the interface.";
-        leaf ip {
-          type inet:ipv4-address-no-zone;
-          description
-            "The IPv4 address on the interface.";
-        }
-
-        choice subnet {
-          mandatory true;
-          description
-            "The subnet can be specified as a prefix-length, or,
-          if the server supports non-contiguous netmasks, as
-          a netmask.";
-          leaf prefix-length {
-            type uint8 {
-              range "0..32";
-            }
-            description
-              "The length of the subnet prefix.";
-          }
-          leaf netmask {
-            if-feature ipv4-non-contiguous-netmasks;
-            type yang:dotted-quad;
-            description
-              "The subnet specified as a netmask.";
-          }
-        }  // choice subnet
-      }  // list address
-
-      list neighbor {
-        key "ip";
-        description
-          "A list of mappings from IPv4 addresses to
-        link-layer addresses.
-
-        Entries in this list are used as static entries in the
-        ARP Cache.";
-        reference
-          "RFC 826: An Ethernet Address Resolution Protocol";
-
-        leaf ip {
-          type inet:ipv4-address-no-zone;
-          description
-            "The IPv4 address of the neighbor node.";
-        }
-
-        leaf link-layer-address {
-          type yang:phys-address;
-          mandatory true;
-          description
-            "The link-layer address of the neighbor node.";
-        }
-      }  // list neighbor
-    }  // container ipv4
-
-    container ipv6 {
-      presence
-        "Enables IPv6 unless the 'enabled' leaf
-      (which defaults to 'true') is set to 'false'";
-      description
-        "Parameters for the IPv6 address family.";
-      leaf enabled {
-        type boolean;
-        default 'true';
-        description
-          "Controls whether IPv6 is enabled or disabled on this
-        interface.  When IPv6 is enabled, this interface is
-        connected to an IPv6 stack, and the interface can send
-        and receive IPv6 packets.";
-      }
-
-      leaf forwarding {
-        type boolean;
-        default 'false';
-        description
-          "Controls IPv6 packet forwarding of datagrams received by,
-        but not addressed to, this interface.  IPv6 routers
-        forward datagrams.  IPv6 hosts do not (except those
-        source-routed via the host).";
-        reference
-          "RFC 4861: Neighbor Discovery for IP version 6 (IPv6)
-                 Section 6.2.1, IsRouter";
-
-      }
-
-      leaf mtu {
-        type uint32 {
-          range "1280..max";
-        }
-        units "octets";
-        description
-          "The size, in octets, of the largest IPv6 packet that the
-        interface will send and receive.
-
-        The server may restrict the allowed values for this leaf,
-        depending on the interface's type.
-
-        If this leaf is not configured, the operationally used MTU
-        depends on the interface's type.";
-        reference
-          "RFC 2460: Internet Protocol, Version 6 (IPv6) Specification
-                 Section 5";
-
-      }
-
-      list address {
-        key "ip";
-        description
-          "The list of configured IPv6 addresses on the interface.";
-        leaf ip {
-          type inet:ipv6-address-no-zone;
-          description
-            "The IPv6 address on the interface.";
-        }
-
-        leaf prefix-length {
-          type uint8 {
-            range "0..128";
-          }
-          mandatory true;
-          description
-            "The length of the subnet prefix.";
-        }
-      }  // list address
-
-      list neighbor {
-        key "ip";
-        description
-          "A list of mappings from IPv6 addresses to
-        link-layer addresses.
-
-        Entries in this list are used as static entries in the
-        Neighbor Cache.";
-        reference
-          "RFC 4861: Neighbor Discovery for IP version 6 (IPv6)";
-
-        leaf ip {
-          type inet:ipv6-address-no-zone;
-          description
-            "The IPv6 address of the neighbor node.";
-        }
-
-        leaf link-layer-address {
-          type yang:phys-address;
-          mandatory true;
-          description
-            "The link-layer address of the neighbor node.";
-        }
-      }  // list neighbor
-
-      leaf dup-addr-detect-transmits {
-        type uint32;
-        default '1';
-        description
-          "The number of consecutive Neighbor Solicitation messages
-        sent while performing Duplicate Address Detection on a
-        tentative address.  A value of zero indicates that
-        Duplicate Address Detection is not performed on
-        tentative addresses.  A value of one indicates a single
-        transmission with no follow-up retransmissions.";
-        reference
-          "RFC 4862: IPv6 Stateless Address Autoconfiguration";
-
-      }
-
-      container autoconf {
-        description
-          "Parameters to control the autoconfiguration of IPv6
-        addresses, as described in RFC 4862.";
-        reference
-          "RFC 4862: IPv6 Stateless Address Autoconfiguration";
-
-        leaf create-global-addresses {
-          type boolean;
-          default 'true';
-          description
-            "If enabled, the host creates global addresses as
-          described in RFC 4862.";
-          reference
-            "RFC 4862: IPv6 Stateless Address Autoconfiguration
-                 Section 5.5";
-
-        }
-
-        leaf create-temporary-addresses {
-          if-feature ipv6-privacy-autoconf;
-          type boolean;
-          default 'false';
-          description
-            "If enabled, the host creates temporary addresses as
-          described in RFC 4941.";
-          reference
-            "RFC 4941: Privacy Extensions for Stateless Address
-                 Autoconfiguration in IPv6";
-
-        }
-
-        leaf temporary-valid-lifetime {
-          if-feature ipv6-privacy-autoconf;
-          type uint32;
-          units "seconds";
-          default '604800';
-          description
-            "The time period during which the temporary address
-          is valid.";
-          reference
-            "RFC 4941: Privacy Extensions for Stateless Address
-                 Autoconfiguration in IPv6
-                 - TEMP_VALID_LIFETIME";
-
-        }
-
-        leaf temporary-preferred-lifetime {
-          if-feature ipv6-privacy-autoconf;
-          type uint32;
-          units "seconds";
-          default '86400';
-          description
-            "The time period during which the temporary address is
-          preferred.";
-          reference
-            "RFC 4941: Privacy Extensions for Stateless Address
-                 Autoconfiguration in IPv6
-                 - TEMP_PREFERRED_LIFETIME";
-
-        }
-      }  // container autoconf
-    }  // container ipv6
-  }
-
-  augment /if:interfaces-state/if:interface {
-    description
-      "Data nodes for the operational state of IP on interfaces.";
-    container ipv4 {
-      presence
-        "Present if IPv4 is enabled on this interface";
-      config false;
-      description
-        "Interface-specific parameters for the IPv4 address family.";
-      leaf forwarding {
-        type boolean;
-        description
-          "Indicates whether IPv4 packet forwarding is enabled or
-        disabled on this interface.";
-      }
-
-      leaf mtu {
-        type uint16 {
-          range "68..max";
-        }
-        units "octets";
-        description
-          "The size, in octets, of the largest IPv4 packet that the
-        interface will send and receive.";
-        reference
-          "RFC 791: Internet Protocol";
-
-      }
-
-      list address {
-        key "ip";
-        description
-          "The list of IPv4 addresses on the interface.";
-        leaf ip {
-          type inet:ipv4-address-no-zone;
-          description
-            "The IPv4 address on the interface.";
-        }
-
-        choice subnet {
-          description
-            "The subnet can be specified as a prefix-length, or,
-          if the server supports non-contiguous netmasks, as
-          a netmask.";
-          leaf prefix-length {
-            type uint8 {
-              range "0..32";
-            }
-            description
-              "The length of the subnet prefix.";
-          }
-          leaf netmask {
-            if-feature ipv4-non-contiguous-netmasks;
-            type yang:dotted-quad;
-            description
-              "The subnet specified as a netmask.";
-          }
-        }  // choice subnet
-
-        leaf origin {
-          type ip-address-origin;
-          description
-            "The origin of this address.";
-        }
-      }  // list address
-
-      list neighbor {
-        key "ip";
-        description
-          "A list of mappings from IPv4 addresses to
-        link-layer addresses.
-
-        This list represents the ARP Cache.";
-        reference
-          "RFC 826: An Ethernet Address Resolution Protocol";
-
-        leaf ip {
-          type inet:ipv4-address-no-zone;
-          description
-            "The IPv4 address of the neighbor node.";
-        }
-
-        leaf link-layer-address {
-          type yang:phys-address;
-          description
-            "The link-layer address of the neighbor node.";
-        }
-
-        leaf origin {
-          type neighbor-origin;
-          description
-            "The origin of this neighbor entry.";
-        }
-      }  // list neighbor
-    }  // container ipv4
-
-    container ipv6 {
-      presence
-        "Present if IPv6 is enabled on this interface";
-      config false;
-      description
-        "Parameters for the IPv6 address family.";
-      leaf forwarding {
-        type boolean;
-        default 'false';
-        description
-          "Indicates whether IPv6 packet forwarding is enabled or
-        disabled on this interface.";
-        reference
-          "RFC 4861: Neighbor Discovery for IP version 6 (IPv6)
-                 Section 6.2.1, IsRouter";
-
-      }
-
-      leaf mtu {
-        type uint32 {
-          range "1280..max";
-        }
-        units "octets";
-        description
-          "The size, in octets, of the largest IPv6 packet that the
-        interface will send and receive.";
-        reference
-          "RFC 2460: Internet Protocol, Version 6 (IPv6) Specification
-                 Section 5";
-
-      }
-
-      list address {
-        key "ip";
-        description
-          "The list of IPv6 addresses on the interface.";
-        leaf ip {
-          type inet:ipv6-address-no-zone;
-          description
-            "The IPv6 address on the interface.";
-        }
-
-        leaf prefix-length {
-          type uint8 {
-            range "0..128";
-          }
-          mandatory true;
-          description
-            "The length of the subnet prefix.";
-        }
-
-        leaf origin {
-          type ip-address-origin;
-          description
-            "The origin of this address.";
-        }
-
-        leaf status {
-          type enumeration {
-            enum "preferred" {
-              value 0;
-              description
-                "This is a valid address that can appear as the
-              destination or source address of a packet.";
-            }
-            enum "deprecated" {
-              value 1;
-              description
-                "This is a valid but deprecated address that should
-              no longer be used as a source address in new
-              communications, but packets addressed to such an
-              address are processed as expected.";
-            }
-            enum "invalid" {
-              value 2;
-              description
-                "This isn't a valid address, and it shouldn't appear
-              as the destination or source address of a packet.";
-            }
-            enum "inaccessible" {
-              value 3;
-              description
-                "The address is not accessible because the interface
-              to which this address is assigned is not
-              operational.";
-            }
-            enum "unknown" {
-              value 4;
-              description
-                "The status cannot be determined for some reason.";
-            }
-            enum "tentative" {
-              value 5;
-              description
-                "The uniqueness of the address on the link is being
-              verified.  Addresses in this state should not be
-              used for general communication and should only be
-              used to determine the uniqueness of the address.";
-            }
-            enum "duplicate" {
-              value 6;
-              description
-                "The address has been determined to be non-unique on
-              the link and so must not be used.";
-            }
-            enum "optimistic" {
-              value 7;
-              description
-                "The address is available for use, subject to
-              restrictions, while its uniqueness on a link is
-              being verified.";
-            }
-          }
-          description
-            "The status of an address.  Most of the states correspond
-          to states from the IPv6 Stateless Address
-          Autoconfiguration protocol.";
-          reference
-            "RFC 4293: Management Information Base for the
-                 Internet Protocol (IP)
-                 - IpAddressStatusTC
-             RFC 4862: IPv6 Stateless Address Autoconfiguration";
-
-        }
-      }  // list address
-
-      list neighbor {
-        key "ip";
-        description
-          "A list of mappings from IPv6 addresses to
-        link-layer addresses.
-
-        This list represents the Neighbor Cache.";
-        reference
-          "RFC 4861: Neighbor Discovery for IP version 6 (IPv6)";
-
-        leaf ip {
-          type inet:ipv6-address-no-zone;
-          description
-            "The IPv6 address of the neighbor node.";
-        }
-
-        leaf link-layer-address {
-          type yang:phys-address;
-          description
-            "The link-layer address of the neighbor node.";
-        }
-
-        leaf origin {
-          type neighbor-origin;
-          description
-            "The origin of this neighbor entry.";
-        }
-
-        leaf is-router {
-          type empty;
-          description
-            "Indicates that the neighbor node acts as a router.";
-        }
-
-        leaf state {
-          type enumeration {
-            enum "incomplete" {
-              value 0;
-              description
-                "Address resolution is in progress, and the link-layer
-              address of the neighbor has not yet been
-              determined.";
-            }
-            enum "reachable" {
-              value 1;
-              description
-                "Roughly speaking, the neighbor is known to have been
-              reachable recently (within tens of seconds ago).";
-            }
-            enum "stale" {
-              value 2;
-              description
-                "The neighbor is no longer known to be reachable, but
-              until traffic is sent to the neighbor no attempt
-              should be made to verify its reachability.";
-            }
-            enum "delay" {
-              value 3;
-              description
-                "The neighbor is no longer known to be reachable, and
-              traffic has recently been sent to the neighbor.
-              Rather than probe the neighbor immediately, however,
-              delay sending probes for a short while in order to
-              give upper-layer protocols a chance to provide
-              reachability confirmation.";
-            }
-            enum "probe" {
-              value 4;
-              description
-                "The neighbor is no longer known to be reachable, and
-              unicast Neighbor Solicitation probes are being sent
-              to verify reachability.";
-            }
-          }
-          description
-            "The Neighbor Unreachability Detection state of this
-          entry.";
-          reference
-            "RFC 4861: Neighbor Discovery for IP version 6 (IPv6)
-                 Section 7.3.2";
-
-        }
-      }  // list neighbor
-    }  // container ipv6
-  }
-}  // module ietf-ip