summaryrefslogtreecommitdiff
path: root/yang/frr-staticd.yang
blob: ce8d641de1ed2f9f2f76b76427aa5e7fe401845f (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
74
75
76
77
78
79
80
81
82
83
84
85
86
module frr-staticd {
  yang-version "1.1";
  namespace "http://frrouting.org/yang/staticd";

  prefix frr-staticd;

  import frr-routing {
    prefix "frr-rt";
  }

  import frr-nexthop {
    prefix frr-nexthop;
  }

  import ietf-inet-types {
    prefix inet;
  }

  organization
    "FRRouting";

  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 staticd information.
     This YANG module augments the ietf-routing with additional
     nexthop information";

  revision 2019-12-03 {
    description
      "Initial revision.";
  }

  identity static {
    base frr-rt:routing-protocol;
    description
      "'Static' routing pseudo-protocol.";
  }

  augment "/frr-rt:routing/frr-rt:control-plane-protocols/"
        + "frr-rt:control-plane-protocol" {
    container staticd {
      when "../frr-rt:type = 'frr-staticd:static'" {
        description
          "This container is only valid for the 'static' routing
           protocol.";
      }
      description
      "Support for a 'static' pseudo-protocol instance
       consists of a list of routes.";

      list prefix-list {
        key "destination-prefix";
        description
          "List of static IP routes.";

        leaf destination-prefix {
          type inet:ip-address;
          description
            "IP destination prefix.";
        }

        leaf distance {
          type frr-rt:administrative-distance;
          description
            "Admin distance associated with this route.";
        }

        leaf tag {
          type uint32 {
            range "1..4294967295";
          }
          description
            "Route tag";
        }
        container frr-staticd-next-hop {
          description
            "Augment static route configuration 'nexthop-list'.";
          uses frr-nexthop:frr-nexthop;
        }
      }
    }
  }
}