diff options
Diffstat (limited to 'nsh/api/src/main/yang/vpp-nsh.yang')
-rw-r--r-- | nsh/api/src/main/yang/vpp-nsh.yang | 303 |
1 files changed, 0 insertions, 303 deletions
diff --git a/nsh/api/src/main/yang/vpp-nsh.yang b/nsh/api/src/main/yang/vpp-nsh.yang deleted file mode 100644 index d4914f4fd..000000000 --- a/nsh/api/src/main/yang/vpp-nsh.yang +++ /dev/null @@ -1,303 +0,0 @@ -module vpp-nsh { - yang-version 1; - namespace "urn:opendaylight:params:xml:ns:yang:vpp:nsh"; - prefix "vpp-nsh"; - - revision "2016-06-24" { - description "Initial revision of vpp-nsh model"; - } - - import iana-if-type { - prefix "ianaift"; - } - import ietf-interfaces { - prefix "if"; - } - import ietf-yang-types { - prefix "yang"; - } - import ietf-inet-types { - prefix "inet"; - } - import yang-ext { - prefix "ext"; - } - import v3po { - prefix "v3po"; - } - /* - * Defines the supported next protocols that can be used for - * NSH next-protocol field. - */ - identity next-protocol { - description "Base identity from which all nsh next protocols - are derived from"; - } - - identity ipv4 { - base next-protocol; - description - "Support ipv4 to act as next protocol"; - } - - identity ipv6 { - base next-protocol; - description - "Support ipv6 to act as next protocol"; - } - - identity ethernet { - base next-protocol; - description - "Support ethernet to act as next protocol"; - } - - typedef nsh-next-protocol { - type identityref { - base "next-protocol"; - } - description "Identifies a specific next protocol for nsh"; - } - - /* - * Defines the supported nsh header action. - */ - identity action-type { - description "nsh header action type"; - } - - identity swap { - base "action-type"; - description "swap action type"; - } - - identity push { - base "action-type"; - description "push action type"; - } - - identity pop { - base "action-type"; - description "pop action type"; - } - - typedef nsh-action-type { - type identityref { - base "action-type"; - } - } - - /* - * Defines the supported encap type. - */ - identity encap-type { - description "encap type"; - } - - identity vxlan-gpe { - base "encap-type"; - description "vxlan-gpe encap type"; - } - - identity vxlan { - base "encap-type"; - description "vxlan encap type"; - } - - typedef nsh-encap-type { - type identityref { - base "encap-type"; - } - } - - /* - * Defines the supported MD-types. - */ - identity md-type { - description "md type"; - } - - identity md-type1 { - base "md-type"; - description "nsh md-type1"; - } - - identity md-type2 { - base "md-type"; - description "nsh md-type2"; - } - - typedef nsh-md-type { - type identityref { - base "md-type"; - } - } - - grouping nsh-md-type1-attributes { - leaf c1 { - type uint32; - } - leaf c2 { - type uint32; - } - leaf c3 { - type uint32; - } - leaf c4 { - type uint32; - } - } - - grouping nsh-md-type2-attributes { - leaf type { - type uint32; - } - } - - grouping nsh-entry-base-attributes { - leaf name { - type string; - description "NSH Entry Name"; - } - leaf nsp { - type uint32 { - range "0..16777215"; - } - } - leaf nsi { - type uint8 { - range "1..255"; - } - } - leaf md-type { - type nsh-md-type; - } - leaf version { - type uint8; - } - leaf length { - type uint8; - } - leaf next-protocol { - type nsh-next-protocol; - } - } - - grouping nsh-map-base-attributes { - leaf name { - type string; - description "NSH Map Name"; - } - leaf nsp { - type uint32 { - range "0..16777215"; - } - } - leaf nsi { - type uint8 { - range "1..255"; - } - } - leaf mapped-nsp { - type uint32 { - range "0..16777215"; - } - } - leaf mapped-nsi { - type uint8 { - range "1..255"; - } - } - leaf nsh-action { - type nsh-action-type; - default "swap"; - } - leaf encap-type { - type nsh-encap-type; - } - leaf encap-if-name { - type string; - description "Interface Name"; - } - } - - container vpp-nsh { - description - "NSH config data"; - - container nsh-entries { - list nsh-entry { - key "name"; - - uses nsh-entry-base-attributes; - - description - "nsh-entry configuration"; - } - } - - container nsh-maps { - list nsh-map { - key "name"; - - uses nsh-map-base-attributes; - - description - "nsh-map configuration"; - } - } - } - - augment /vpp-nsh/nsh-entries/nsh-entry { - ext:augment-identifier nsh-md-type-1-augment; - when "/md-type = 'vpp-nsh:md-type1' "; - uses nsh-md-type1-attributes; - } - - augment /vpp-nsh/nsh-entries/nsh-entry { - ext:augment-identifier nsh-md-type-2-augment; - when "/md-type = 'vpp-nsh:md-type2' "; - uses nsh-md-type2-attributes; - } - - container vpp-nsh-state { - config false; - - description - "NSH operational data"; - - container nsh-entries { - list nsh-entry { - key "name"; - - uses nsh-entry-base-attributes; - - description - "nsh-entry operational data"; - } - } - - container nsh-maps { - list nsh-map { - key "name"; - - uses nsh-map-base-attributes; - - description - "nsh-map operational data"; - } - } - } - - augment /vpp-nsh-state/nsh-entries/nsh-entry { - ext:augment-identifier nsh-md-type-1-state-augment; - when "/md-type = 'vpp-nsh:md-type1' "; - uses nsh-md-type1-attributes; - } - - augment /vpp-nsh-state/nsh-entries/nsh-entry { - ext:augment-identifier nsh-md-type-2-state-augment; - when "/md-type = 'vpp-nsh:md-type2' "; - uses nsh-md-type2-attributes; - } -}
\ No newline at end of file |