summaryrefslogtreecommitdiffstats
path: root/v3po/api/src/main/yang/v3po.yang
diff options
context:
space:
mode:
Diffstat (limited to 'v3po/api/src/main/yang/v3po.yang')
-rw-r--r--v3po/api/src/main/yang/v3po.yang28
1 files changed, 28 insertions, 0 deletions
diff --git a/v3po/api/src/main/yang/v3po.yang b/v3po/api/src/main/yang/v3po.yang
index 5d582181f..409da3041 100644
--- a/v3po/api/src/main/yang/v3po.yang
+++ b/v3po/api/src/main/yang/v3po.yang
@@ -49,6 +49,10 @@ module v3po {
base if:interface-type;
}
+ identity gre-tunnel {
+ base if:interface-type;
+ }
+
identity vhost-user {
base if:interface-type;
}
@@ -291,6 +295,20 @@ module v3po {
}
}
+ grouping gre-base-attributes {
+ leaf src {
+ /*mandatory true;*/
+ type inet:ip-address;
+ }
+ leaf dst {
+ /*mandatory true;*/
+ type inet:ip-address;
+ }
+ leaf outer-fib-id {
+ type uint32;
+ }
+ }
+
grouping vxlan-gpe-base-attributes {
leaf local {
/*mandatory true;*/
@@ -423,6 +441,11 @@ module v3po {
uses vxlan-base-attributes;
}
+ container gre {
+ when "../if:type = 'v3po:gre-tunnel'";
+ uses gre-base-attributes;
+ }
+
container l2 {
must "(not (../if:ipv4[if:enabled = 'true']/if:address/if:ip) and " +
"not (../if:ipv6[if:enabled = 'true']/if:address/if:ip))";
@@ -496,6 +519,11 @@ module v3po {
uses vxlan-gpe-base-attributes;
}
+ container gre {
+ when "../if:type = 'gre-tunnel'";
+ uses gre-base-attributes;
+ }
+
container l2 {
must "(not (../if:ipv4[if:enabled = 'true']/if:address/if:ip) and " +
"not (../if:ipv6[if:enabled = 'true']/if:address/if:ip))";