// domain-name
OptionDefinition def("domain-name", DHO_DOMAIN_NAME, OPT_FQDN_TYPE);
- boost::shared_ptr<OptionCustom>
- option_domain_name(new OptionCustom(def, Option::V4));
+ OptionCustomPtr option_domain_name(new OptionCustom(def, Option::V4));
option_domain_name->writeFqdn("example.com");
subnet_->addOption(option_domain_name, false, "dhcp4");
/// @brief checks that the response matches request
/// @param q query (client's message)
/// @param a answer (server's message)
- void messageCheck(const boost::shared_ptr<Pkt4>& q,
- const boost::shared_ptr<Pkt4>& a) {
+ void messageCheck(const Pkt4Ptr& q, const Pkt4Ptr& a) {
ASSERT_TRUE(q);
ASSERT_TRUE(a);
mac[i] = 255 - i;
}
- boost::shared_ptr<Pkt4> pkt(new Pkt4(DHCPDISCOVER, 1234));
- boost::shared_ptr<Pkt4> offer;
+ Pkt4Ptr pkt(new Pkt4(DHCPDISCOVER, 1234));
+ Pkt4Ptr offer;
pkt->setIface("eth0");
pkt->setIndex(17);
mac[i] = i * 10;
}
- boost::shared_ptr<Pkt4> req(new Pkt4(DHCPREQUEST, 1234));
- boost::shared_ptr<Pkt4> ack;
+ Pkt4Ptr req(new Pkt4(DHCPREQUEST, 1234));
+ Pkt4Ptr ack;
req->setIface("eth0");
req->setIndex(17);
TEST_F(Dhcpv4SrvTest, processRelease) {
NakedDhcpv4Srv srv;
- boost::shared_ptr<Pkt4> pkt(new Pkt4(DHCPRELEASE, 1234));
+ Pkt4Ptr pkt(new Pkt4(DHCPRELEASE, 1234));
// Should not throw
EXPECT_NO_THROW(srv.processRelease(pkt));
TEST_F(Dhcpv4SrvTest, processDecline) {
NakedDhcpv4Srv srv;
- boost::shared_ptr<Pkt4> pkt(new Pkt4(DHCPDECLINE, 1234));
+ Pkt4Ptr pkt(new Pkt4(DHCPDECLINE, 1234));
// Should not throw
EXPECT_NO_THROW(srv.processDecline(pkt));
TEST_F(Dhcpv4SrvTest, processInform) {
NakedDhcpv4Srv srv;
- boost::shared_ptr<Pkt4> pkt(new Pkt4(DHCPINFORM, 1234));
+ Pkt4Ptr pkt(new Pkt4(DHCPINFORM, 1234));
// Should not throw
EXPECT_NO_THROW(srv.processInform(pkt));
EXPECT_EQ(0, ia->getT1());
EXPECT_EQ(0, ia->getT2());
- boost::shared_ptr<OptionCustom> status =
+ OptionCustomPtr status =
boost::dynamic_pointer_cast<OptionCustom>(ia->getOption(D6O_STATUS_CODE));
// It is ok to not include status success as this is the default behavior
}
void checkMsgStatusCode(const Pkt6Ptr& msg, uint16_t expected_status) {
- boost::shared_ptr<OptionCustom> status =
+ OptionCustomPtr status =
boost::dynamic_pointer_cast<OptionCustom>(msg->getOption(D6O_STATUS_CODE));
// It is ok to not include status success as this is the default behavior
sol->addOption(clientid);
// Pass it to the server and get an advertise
- boost::shared_ptr<Pkt6> adv = srv.processSolicit(sol);
+ Pkt6Ptr adv = srv.processSolicit(sol);
// check if we get response at all
ASSERT_TRUE(adv);
// type and transaction doesn't matter in this test
pkt.reset(new Pkt4(DHCPOFFER, 1234));
- pkt->setHWAddr(255-macLen*10, // just weird htype
+ pkt->setHWAddr(255 - macLen * 10, // just weird htype
macLen,
mac);
EXPECT_EQ(0, memcmp(expectedChaddr, &pkt->getHWAddr()->hwaddr_[0],
// CHADDR starts at offset 28 in DHCP packet
const uint8_t* ptr =
- static_cast<const uint8_t*>(pkt->getBuffer().getData())+28;
+ static_cast<const uint8_t*>(pkt->getBuffer().getData()) + 28;
EXPECT_EQ(0, memcmp(ptr, expectedChaddr, Pkt4::MAX_CHADDR_LEN));
// SNAME starts at offset 44 in DHCP packet
const uint8_t* ptr =
- static_cast<const uint8_t*>(pkt->getBuffer().getData())+44;
+ static_cast<const uint8_t*>(pkt->getBuffer().getData()) + 44;
EXPECT_EQ(0, memcmp(ptr, sname, Pkt4::MAX_SNAME_LEN));
pkt.reset();
// FILE starts at offset 108 in DHCP packet.
const uint8_t* ptr =
- static_cast<const uint8_t*>(pkt->getBuffer().getData())+108;
+ static_cast<const uint8_t*>(pkt->getBuffer().getData()) + 108;
EXPECT_EQ(0, memcmp(ptr, file, Pkt4::MAX_FILE_LEN));
pkt.reset();
vector<uint8_t> payload[5];
for (int i = 0; i < 5; i++) {
- payload[i].push_back(i*10);
- payload[i].push_back(i*10+1);
- payload[i].push_back(i*10+2);
+ payload[i].push_back(i * 10);
+ payload[i].push_back(i * 10 + 1);
+ payload[i].push_back(i * 10 + 2);
}
boost::shared_ptr<Option> opt1(new Option(Option::V4, 12, payload[0]));
EXPECT_EQ(12, x->getType()); // this should be option 12
ASSERT_EQ(3, x->getData().size()); // it should be of length 3
EXPECT_EQ(5, x->len()); // total option length 5
- EXPECT_EQ(0, memcmp(&x->getData()[0], v4Opts+2, 3)); // data len=3
+ EXPECT_EQ(0, memcmp(&x->getData()[0], v4Opts + 2, 3)); // data len=3
x = pkt->getOption(14);
ASSERT_TRUE(x); // option 13 should exist
EXPECT_EQ(14, x->getType()); // this should be option 13
ASSERT_EQ(3, x->getData().size()); // it should be of length 3
EXPECT_EQ(5, x->len()); // total option length 5
- EXPECT_EQ(0, memcmp(&x->getData()[0], v4Opts+7, 3)); // data len=3
+ EXPECT_EQ(0, memcmp(&x->getData()[0], v4Opts + 7, 3)); // data len=3
x = pkt->getOption(60);
ASSERT_TRUE(x); // option 60 should exist
EXPECT_EQ(60, x->getType()); // this should be option 60
ASSERT_EQ(3, x->getData().size()); // it should be of length 3
EXPECT_EQ(5, x->len()); // total option length 5
- EXPECT_EQ(0, memcmp(&x->getData()[0], v4Opts+15, 3)); // data len=3
+ EXPECT_EQ(0, memcmp(&x->getData()[0], v4Opts + 15, 3)); // data len=3
x = pkt->getOption(128);
ASSERT_TRUE(x); // option 3 should exist
EXPECT_EQ(128, x->getType()); // this should be option 254
ASSERT_EQ(3, x->getData().size()); // it should be of length 3
EXPECT_EQ(5, x->len()); // total option length 5
- EXPECT_EQ(0, memcmp(&x->getData()[0], v4Opts+20, 3)); // data len=3
+ EXPECT_EQ(0, memcmp(&x->getData()[0], v4Opts + 20, 3)); // data len=3
x = pkt->getOption(254);
ASSERT_TRUE(x); // option 3 should exist
EXPECT_EQ(254, x->getType()); // this should be option 254
ASSERT_EQ(3, x->getData().size()); // it should be of length 3
EXPECT_EQ(5, x->len()); // total option length 5
- EXPECT_EQ(0, memcmp(&x->getData()[0], v4Opts+25, 3)); // data len=3
+ EXPECT_EQ(0, memcmp(&x->getData()[0], v4Opts + 25, 3)); // data len=3
}
// This test verifies methods that are used for manipulating meta fields