Add import for netconf-node-optional
[netconf.git] / netconf / sal-netconf-connector / src / main / yang / netconf-node-topology.yang
index 91bda040f916e1b17e5250101d25c350323148ce..207441828b49b9e788fd0071a178cf260a4ebbaf 100644 (file)
@@ -5,6 +5,7 @@ module netconf-node-topology {
     import network-topology { prefix nt; revision-date 2013-10-21; }
     import yang-ext { prefix ext; revision-date "2013-07-09";}
     import ietf-inet-types { prefix inet; revision-date "2013-07-15"; }
+    import netconf-node-optional { prefix nno; revision-date "2019-06-14"; }
 
     revision "2015-01-14" {
         description "Initial revision of Topology model";
@@ -12,6 +13,8 @@ module netconf-node-topology {
 
     augment "/nt:network-topology/nt:topology/nt:topology-types" {
         container topology-netconf {
+            presence "The presence of the container node indicates a network
+                      of NETCONF devices";
         }
     }
 
@@ -28,7 +31,7 @@ module netconf-node-topology {
     grouping netconf-node-credentials {
         choice credentials {
             config true;
-            case login-password-deprecated {
+            case login-password {
                 description "Deprecated way of storing credentials, unencrypted.";
 
                 status deprecated;
@@ -37,7 +40,6 @@ module netconf-node-topology {
             case login-pw {
                 description "login-password credentials, encrypted.";
 
-
                 container login-password {
                     uses username-password;
                 }
@@ -78,6 +80,31 @@ module netconf-node-topology {
         leaf tcp-only {
             config true;
             type boolean;
+            default false;
+        }
+
+        container protocol {
+            config true;
+            leaf name {
+                type enumeration {
+                    enum SSH;
+                    enum TLS;
+                }
+                default SSH;
+            }
+
+            choice specification {
+                case tls-case {
+                   container tls {
+                       leaf-list excluded-versions {
+                           type string;
+                           description "A list of TLS version names provided in JDK that are not supported by the
+                                        target netconf device, eg, the netopeer2 simulator does not support the
+                                        SSLv2Hello. Most of the time, this list need not be set";
+                       }
+                   }
+                }
+            }
         }
 
         leaf schemaless {
@@ -186,6 +213,15 @@ module netconf-node-topology {
                     default 5;
                     description "Time that slave actor will wait for response from master.";
         }
+
+        container odl-hello-message-capabilities {
+            config true;
+            leaf-list capability {
+                type inet:uri;
+                description "Certain devices are non-accepting of ODL's hello message.  This allows specification of
+                             a custom ODL hello message based on a list of supported capabilities.";
+            }
+        }
     }
 
     grouping netconf-node-connection-status {
@@ -303,6 +339,7 @@ module netconf-node-topology {
         uses netconf-node-connection-status;
 
         uses netconf-schema-storage;
+        uses nno:netconf-node-augmented-optional-fields ;
 
     }