summaryrefslogtreecommitdiffstats
path: root/srv6/srv6-api/src/main/yang/locator-context@2018-06-05.yang
blob: 0634be5cac6e3b2a6040f64d04bfddc6cfffa593 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
module locator-context {
    yang-version 1;
    namespace "urn:honeycomb:params:xml:ns:yang:locator:context";
    prefix "locator-ctx";

    import ietf-inet-types {
       prefix "inet";
    }

    import naming-context {
       prefix "nc";
    }

    import yang-ext {
       prefix "ext";
    }

    organization
        "FD.io - The Fast Data Project";

    contact
        "Hc2vpp Wiki <https://wiki.fd.io/view/Hc2vpp>
         Mailing List <hc2vpp@lists.fd.io>";

    description
        "This module provides mapping between SRV6 locator identifiers
         defined in the ietf-nat-srv6-base module
         and identifiers used by the VPP SRV6 plugin.

         The mapping is managed internally by the HC SRV6 plugin.
         It is exposed as operational state data for debugging purposes.

         Copyright (c) 2018 Bell Canada, Pantheon Technologies and/or its affiliates.

         Licensed under the Apache License, Version 2.0 (the 'License');
         you may not use this file except in compliance with the License.
         You may obtain a copy of the License at:

         http://www.apache.org/licenses/LICENSE-2.0

         Unless required by applicable law or agreed to in writing, software
         distributed under the License is distributed on an 'AS IS' BASIS,
         WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
         See the License for the specific language governing permissions and
         limitations under the License.";

    revision "2018-06-05" {
        description "Initial revision.";
    }

    grouping srv6-locator-context-attributes {
        container srv6-locator-mappings {
            list srv6-locator-mapping {
                key "name";

                leaf name {
                    type string;
                    description "Srv6 locator name";
                }

                leaf prefix {
                    type inet:ipv6-prefix;
                    description "Locator represented by IPv6 address and locator length.";
                }
            }
        }
    }

    augment /nc:contexts {
        ext:augment-identifier "srv6-locator-context-augmentation";
        uses srv6-locator-context-attributes;
    }
}