aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/yang/openconfig/openconfig-vlan-types@2018-02-14.yang
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/yang/openconfig/openconfig-vlan-types@2018-02-14.yang')
-rw-r--r--src/plugins/yang/openconfig/openconfig-vlan-types@2018-02-14.yang195
1 files changed, 0 insertions, 195 deletions
diff --git a/src/plugins/yang/openconfig/openconfig-vlan-types@2018-02-14.yang b/src/plugins/yang/openconfig/openconfig-vlan-types@2018-02-14.yang
deleted file mode 100644
index 6d9ab55..0000000
--- a/src/plugins/yang/openconfig/openconfig-vlan-types@2018-02-14.yang
+++ /dev/null
@@ -1,195 +0,0 @@
-module openconfig-vlan-types {
-
- yang-version "1";
-
- // namespace
- namespace "http://openconfig.net/yang/vlan-types";
-
- prefix "oc-vlan-types";
-
- // import some basic types
- import openconfig-extensions { prefix oc-ext; }
-
- // meta
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- netopenconfig@googlegroups.com";
-
- description
- "This module defines configuration and state variables for VLANs,
- in addition to VLAN parameters associated with interfaces";
-
- oc-ext:openconfig-version "3.0.0";
-
- revision "2018-02-14" {
- description
- "Fix bug with name of 802.1ad identity.";
- reference "3.0.0";
- }
-
- revision "2017-07-14" {
- description
- "Move top-level vlan data to network-instance; Update
- identities to comply to style guide; fixed pattern
- quoting; corrected trunk vlan types; added TPID config to
- base interface.";
- reference "2.0.0";
- }
-
- revision "2016-05-26" {
- description
- "OpenConfig public release";
- reference "1.0.2";
- }
-
- // extension statements
-
- // feature statements
-
- // identity statements
-
- identity TPID_TYPES {
- description
- "Base identity for TPID values that can override the VLAN
- ethertype value";
- }
-
- identity TPID_0X8100 {
- base TPID_TYPES;
- description
- "Default TPID value for 802.1q single-tagged VLANs.";
- }
-
- identity TPID_0X88A8 {
- base TPID_TYPES;
- description
- "TPID value for 802.1ad provider bridging, QinQ or
- stacked VLANs.";
- }
-
- identity TPID_0X9100 {
- base TPID_TYPES;
- description
- "Alternate TPID value";
- }
-
- identity TPID_0X9200 {
- base TPID_TYPES;
- description
- "Alternate TPID value";
- }
-
- // typedef statements
-
- // TODO: typedefs should be defined in a vlan-types.yang file.
- typedef vlan-id {
- type uint16 {
- range 1..4094;
- }
- description
- "Type definition representing a single-tagged VLAN";
- }
-
- typedef vlan-range {
- type string {
- // range specified as [lower]..[upper]
- pattern '^(409[0-4]|40[0-8][0-9]|[1-3][0-9]{3}|' +
- '[1-9][0-9]{1,2}|[1-9])\.\.(409[0-4]|' +
- '40[0-8][0-9]|[1-3][0-9]{3}|[1-9][0-9]{1,2}|' +
- '[1-9])$';
- }
- description
- "Type definition representing a range of single-tagged
- VLANs. A range is specified as x..y where x and y are
- valid VLAN IDs (1 <= vlan-id <= 4094). The range is
- assumed to be inclusive, such that any VLAN-ID matching
- x <= VLAN-ID <= y falls within the range.";
- }
-
- typedef qinq-id {
- type string {
- pattern
- '^(409[0-4]|40[0-8][0-9]|[1-3][0-9]{3}|' +
- '[1-9][0-9]{1,2}|[1-9])\.' +
- '((409[0-4]|40[0-8][0-9]|[1-3][0-9]{3}|' +
- '[1-9][0-9]{1,2}|[1-9])|\*)$';
- }
- description
- "Type definition representing a single double-tagged/QinQ VLAN
- identifier. The format of a QinQ VLAN-ID is x.y where X is the
- 'outer' VLAN identifier, and y is the 'inner' VLAN identifier.
- Both x and y must be valid VLAN IDs (1 <= vlan-id <= 4094)
- with the exception that y may be equal to a wildcard (*). In
- cases where y is set to the wildcard, this represents all inner
- VLAN identifiers where the outer VLAN identifier is equal to
- x";
- }
-
- typedef qinq-id-range {
- type union {
- type string {
- // match cases where the range is specified as x..y.z
- pattern
- '^(409[0-4]|40[0-8][0-9]|[1-3][0-9]{3}|' +
- '[1-9][0-9]{1,2}|[1-9])\.\.' +
- '(409[0-4]|40[0-8][0-9]|[1-3][0-9]{3}|' +
- '[1-9][0-9]{1,2}|[1-9])\.' +
- '((409[0-4]|40[0-8][0-9]|[1-3][0-9]{3}|' +
- '[1-9][0-9]{1,2}|[1-9])|\*)$';
- }
- type string {
- // match cases where the range is specified as x.y..z
- pattern
- '^(\*|(409[0-4]|40[0-8][0-9]|[1-3][0-9]{3}|' +
- '[1-9][0-9]{1,2}|[1-9]))\.' +
- '(409[0-4]|40[0-8][0-9]|[1-3][0-9]{3}|' +
- '[1-9][0-9]{1,2}|[1-9])\.\.' +
- '(409[0-4]|40[0-8][0-9]|[1-3][0-9]{3}|' +
- '[1-9][0-9]{1,2}|[1-9])$';
- }
- }
- description
- "A type definition representing a range of double-tagged/QinQ
- VLAN identifiers. The format of a QinQ VLAN-ID range can be
- specified in three formats. Where the range is outer VLAN IDs
- the range is specified as x..y.z. In this case outer VLAN
- identifiers meeting the criteria x <= outer-vlan-id <= y are
- accepted iff the inner VLAN-ID is equal to y - or any inner-tag
- if the wildcard is specified. Alternatively the range can be
- specified as x.y..z. In this case only VLANs with an
- outer-vlan-id qual to x are accepted (x may again be the
- wildcard). Inner VLANs are accepted if they meet the inequality
- y <= inner-vlan-id <= z.";
- }
-
- typedef vlan-mode-type {
- type enumeration {
- enum ACCESS {
- description "Access mode VLAN interface (No 802.1q header)";
- }
- enum TRUNK {
- description "Trunk mode VLAN interface";
- }
- }
- description
- "VLAN interface mode (trunk or access)";
- }
-
- typedef vlan-ref {
- type union {
- type vlan-id;
- type string;
- // TODO: string should be changed to leafref to reference
- // an existing VLAN. this is not allowed in YANG 1.0 but
- // is expected to be in YANG 1.1.
- // type leafref {
- // path "vlan:vlans/vlan:vlan/vlan:config/vlan:name";
- // }
- }
- description
- "Reference to a VLAN by name or id";
- }
-
-}