]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[fd4o6] Added DHCPv4 message option
authorFrancis Dupont <fdupont@isc.org>
Mon, 14 Sep 2015 13:53:43 +0000 (15:53 +0200)
committerFrancis Dupont <fdupont@isc.org>
Mon, 14 Sep 2015 13:53:43 +0000 (15:53 +0200)
src/lib/dhcp/dhcp6.h
src/lib/dhcp/std_option_defs.h
src/lib/dhcp/tests/libdhcp++_unittest.cc

index 439f4700370c679070d213678db3515ebcf20770..ecfd3517247f64de86125cb18efc9fe4b4e15f1c 100644 (file)
@@ -68,6 +68,7 @@
 #define D6O_ERP_LOCAL_DOMAIN_NAME               65 /* RFC6440 */
 #define D6O_RSOO                                66 /* RFC6422 */
 #define D6O_CLIENT_LINKLAYER_ADDR               79 /* RFC6939 */
+#define D6O_DHCPV4_MSG                          87 /* RFC7341 */
 #define D6O_DHCPV4_O_DHCPV6_SERVER              88 /* RFC7341 */
 
 /*
@@ -193,4 +194,8 @@ extern const int dhcpv6_type_name_max;
 #define IRT_DEFAULT     86400
 #define IRT_MINIMUM     600
 
+/* DHCPv4-query message flags */
+
+#define DHCPV4_QUERY_FLAGS0_UNICAST 0x80
+
 #endif /* DHCP6_H */
index 67b3f872d0178378eb04624931bc8945103ca790..e7dc154ae904bed977f86f3dc22707a5df66203c 100644 (file)
@@ -331,8 +331,9 @@ const OptionDefParams OPTION_DEF_PARAMS6[] = {
     { "rsoo", D6O_RSOO, OPT_EMPTY_TYPE, false, NO_RECORD_DEF, "rsoo-opts" },
     { "client-linklayer-addr", D6O_CLIENT_LINKLAYER_ADDR, OPT_BINARY_TYPE, false,
       NO_RECORD_DEF, "" },
+    { "dhcpv4-message", D6O_DHCPV4_MSG, OPT_BINARY_TYPE, false, NO_RECORD_DEF, "" },
     { "dhcp4o6-server-addr", D6O_DHCPV4_O_DHCPV6_SERVER, OPT_IPV6_ADDRESS_TYPE, true,
-      NO_RECORD_DEF, "" },
+      NO_RECORD_DEF, "" }
 
     // @todo There is still a bunch of options for which we have to provide
     // definitions but we don't do it because they are not really
index 1b2aff98e8bde22d60119d2f5d317b83cacb3abb..dc1952b7f95962779abdef10761b86f031182afe 100644 (file)
@@ -1169,6 +1169,9 @@ TEST_F(LibDhcpTest, stdOptionDefs6) {
                                     fqdn_buf.begin(), fqdn_buf.end(),
                                     typeid(OptionCustom));
 
+    LibDhcpTest::testStdOptionDefs6(D6O_DHCPV4_MSG, begin, end,
+                                    typeid(Option));
+
     LibDhcpTest::testStdOptionDefs6(D6O_DHCPV4_O_DHCPV6_SERVER, begin, end,
                                     typeid(Option6AddrLst));
 }