From: Marcin Siodelski Date: Wed, 12 Mar 2014 17:35:35 +0000 (+0100) Subject: [3232] Initialize all values in Lease6 in the default constructor. X-Git-Tag: kea-eng-20140313~11^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=8ae73d0c674b4bd641d1323c447c19f9f255be0c;p=thirdparty%2Fkea.git [3232] Initialize all values in Lease6 in the default constructor. Failing to initialize all values causes valgrind errors. --- diff --git a/src/lib/dhcpsrv/lease.cc b/src/lib/dhcpsrv/lease.cc index 7bc71f94d8..159cda533b 100644 --- a/src/lib/dhcpsrv/lease.cc +++ b/src/lib/dhcpsrv/lease.cc @@ -166,6 +166,12 @@ Lease6::Lease6(Type type, const isc::asiolink::IOAddress& addr, cltt_ = time(NULL); } +Lease6::Lease6() + : Lease(isc::asiolink::IOAddress("::"), 0, 0, 0, 0, 0, false, false, ""), + type_(TYPE_NA), prefixlen_(0), iaid_(0), duid_(DuidPtr()), + preferred_lft_(0) { +} + const std::vector& Lease6::getDuidVector() const { if (!duid_) { @@ -180,7 +186,7 @@ std::string Lease6::toText() const { ostringstream stream; - stream << "Type: " << typeToText(type_) << "(" + stream << "Type: " << typeToText(type_) << "(" << static_cast(type_) << ") "; stream << "Address: " << addr_ << "\n" << "Prefix length: " << static_cast(prefixlen_) << "\n" diff --git a/src/lib/dhcpsrv/lease.h b/src/lib/dhcpsrv/lease.h index c767142761..a8f4527963 100644 --- a/src/lib/dhcpsrv/lease.h +++ b/src/lib/dhcpsrv/lease.h @@ -348,10 +348,7 @@ struct Lease6 : public Lease { /// @brief Constructor /// /// Initialize fields that don't have a default constructor. - Lease6() : Lease(isc::asiolink::IOAddress("::"), 0, 0, 0, 0, 0, - false, false, ""), - type_(TYPE_NA) { - } + Lease6(); /// @brief Returns a reference to a vector representing a DUID. ///