diff options
Diffstat (limited to 'v3po/api/src/main')
-rw-r--r-- | v3po/api/src/main/yang/v3po.yang | 28 |
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))"; |