summaryrefslogtreecommitdiffstats
path: root/dhcp/dhcp-api/src/main/yang/dhcp@2018-01-03.yang
diff options
context:
space:
mode:
Diffstat (limited to 'dhcp/dhcp-api/src/main/yang/dhcp@2018-01-03.yang')
-rw-r--r--dhcp/dhcp-api/src/main/yang/dhcp@2018-01-03.yang95
1 files changed, 95 insertions, 0 deletions
diff --git a/dhcp/dhcp-api/src/main/yang/dhcp@2018-01-03.yang b/dhcp/dhcp-api/src/main/yang/dhcp@2018-01-03.yang
new file mode 100644
index 000000000..7c88b6d0d
--- /dev/null
+++ b/dhcp/dhcp-api/src/main/yang/dhcp@2018-01-03.yang
@@ -0,0 +1,95 @@
+module dhcp {
+
+ yang-version 1;
+ namespace "urn:opendaylight:params:xml:ns:yang:vpp:dhcp";
+ prefix "dhcp";
+
+ description
+ "This YANG module defines the generic configuration and
+ operational data for dhcp in VPP";
+
+ revision "2018-01-03" {
+ description
+ "Changes type of ip-addresses from inet:ip-address to inet:ip-address-no-zone.";
+ reference
+ "https://jira.fd.io/browse/HC2VPP-79";
+ }
+
+ revision "2017-03-15" {
+ description
+ "Initial revision of dhcp model";
+ }
+
+ import ietf-inet-types {
+ prefix inet;
+ }
+
+ identity address-family {
+ description
+ "Base identity from which identities describing address
+ families are derived.";
+ }
+
+ identity ipv4 {
+ base address-family;
+ description
+ "This identity represents IPv4 address family.";
+ }
+
+ identity ipv6 {
+ base address-family;
+ description
+ "This identity represents IPv6 address family.";
+ }
+
+ typedef address-type {
+ type identityref {
+ base address-family;
+ }
+ }
+
+ grouping relay-attributes {
+ list server {
+ key "vrf-id address";
+ leaf address {
+ type inet:ip-address-no-zone;
+ description
+ "IP address of the server DHCP packets will be forwarded to.";
+ }
+ leaf vrf-id {
+ type uint32;
+ description
+ "Used to send DHCP messages to the server";
+ }
+ }
+
+ leaf gateway-address {
+ type inet:ip-address-no-zone;
+ mandatory true;
+ description
+ "IP address of the relay agent.";
+ }
+ // TODO(HC2VPP-44): add configurable circut-id (option-82/remote-id)
+ }
+
+ grouping dhcp-attributes {
+ container relays {
+ list relay {
+ key "address-type rx-vrf-id";
+ leaf address-type {
+ type address-type;
+ }
+ leaf rx-vrf-id {
+ type uint32;
+ description
+ "Used to receive DHCP messages from clients.";
+ }
+ uses relay-attributes;
+ }
+ }
+ }
+
+ container dhcp {
+ uses dhcp-attributes;
+ }
+} \ No newline at end of file