]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[3180] Addressed additional review comments.
authorMarcin Siodelski <marcin@isc.org>
Thu, 10 Oct 2013 10:48:11 +0000 (12:48 +0200)
committerMarcin Siodelski <marcin@isc.org>
Thu, 10 Oct 2013 10:48:11 +0000 (12:48 +0200)
src/lib/dhcp/pkt6.cc
src/lib/dhcp/tests/option_unittest.cc
src/lib/dhcp/tests/pkt6_unittest.cc

index c4dcfbba4d20c447dc1c00bc65ceccd662b6deff..9d194a5b2ee234d37c678d7d19610f1c50018c78 100644 (file)
@@ -333,7 +333,7 @@ Pkt6::unpackMsg(OptionBuffer::const_iterator begin,
             // The last two arguments hold the DHCPv6 Relay message offset and
             // length. Setting them to NULL because we are dealing with the
             // not-relayed message.
-            callback_(opt_buffer, "dhcp6", options_, 0, 0);
+            callback_(opt_buffer, "dhcp6", options_, NULL, NULL);
         }
     } catch (const Exception& e) {
         // @todo: throw exception here once we turn this function to void.
index 5dbc3ebbbf03487a79d38a54320de3f4c0090cde..3a47d0e69c619ba3b6265b06872059860ef63cbf 100644 (file)
@@ -608,6 +608,8 @@ TEST_F(OptionTest, unpackCallback) {
     // Parameters from _1 to _5 are placeholders for the actual values
     // to be passed to the callback function. See: boost::bind documentation
     // at http://www.boost.org/doc/libs/1_54_0/libs/bind/bind.html.
+    // Also, see UnpackOptionsCallback in option.h for description of the
+    // parameter values.
     option.setCallback(boost::bind(&CustomUnpackCallback::execute, &cb,
                                    _1, _2, _3, _4, _5));
     // Parse options. It should result in a call to our callback function.
index 9d6916807a7fa31dd521ed2f5493af993854b8cb..068732194c7aa1300b8869014e352c1178d3a071 100644 (file)
@@ -108,6 +108,19 @@ public:
     }
 
     /// @brief Create a wire representation of the test packet and clone it.
+    ///
+    /// The purpose of this function is to create a packet to be used to
+    /// check that packet parsing works correctly. The unpack() function
+    /// requires that the data_ field of the object holds the data to be
+    /// parsed. This function creates an on-wire representation of the
+    /// packet by calling pack(). But, the pack() function stores the
+    /// on-wire representation into the output buffer (not the data_ field).
+    /// For this reason, it is not enough to return the packet on which
+    /// pack() is called. This function returns a clone of this packet
+    /// which is created using a constructor taking a buffer and buffer
+    /// length as an input. This constructor is normally used to parse
+    /// received packets. It stores the packet in a data_ field and
+    /// therefore unpack() can be called to parse it.
     Pkt6Ptr packAndClone() {
         Pkt6Ptr parent(new Pkt6(DHCPV6_SOLICIT, 0x020304));