summaryrefslogtreecommitdiffstats
path: root/yang/frr-interface.yang
blob: 4f7f3beebd9aa9b356619c40d48a8373165d3902 (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
module frr-interface {
  yang-version 1.1;
  namespace "http://frrouting.org/yang/interface";
  prefix frr-interface;

  organization
    "Free Range Routing";
  contact
    "FRR Users List:       <mailto:frog@lists.frrouting.org>
     FRR Development List: <mailto:dev@lists.frrouting.org>";
  description
    "This module defines a model for managing FRR interfaces.";

  revision 2019-09-09 {
    description
      "Added interface-ref typedef";
  }
  revision 2018-03-28 {
    description
      "Initial revision.";
  }

  container lib {
    list interface {
      key "name vrf";
      description
        "Interface.";

      leaf name {
        type string {
          length "1..16";
        }
        description
          "Interface name.";
      }
      leaf vrf {
        type string {
          length "1..36";
        }
        description
          "VRF this interface is associated with.";
      }
      leaf description {
        type string;
        description
          "Interface description.";
      }
    }
  }

  typedef interface-ref {
    type leafref {
      require-instance false;
      path "/frr-interface:lib/frr-interface:interface/frr-interface:name";
    }
    description
      "Reference to an interface";
  }
}