Fetch the network portion of the IP address
eg 192.168.2.24/24 ==> 192.168.2.0
Change-Id: I5e46ce7b371360c90ef74fac175c8379c6f31d4c
Signed-off-by: Ratan Gupta <ratagupt@in.ibm.com>
diff --git a/test/test_util.cpp b/test/test_util.cpp
index d0888ca..9b1d34a 100644
--- a/test/test_util.cpp
+++ b/test/test_util.cpp
@@ -61,7 +61,7 @@
EXPECT_EQ(prefix, 0);
}
-TEST_F(TestUtil, isLinLocaladdress)
+TEST_F(TestUtil, isLinkLocaladdress)
{
std::string ipaddress = "fe80:fec0::";
EXPECT_TRUE(isLinkLocal(ipaddress));
@@ -85,5 +85,27 @@
EXPECT_EQ(mask, "255.255.255.224");
}
+TEST_F(TestUtil, getNetworkAddress)
+{
+ std::string address = getNetworkID(AF_INET,"9.3.23.251",24);
+ EXPECT_EQ("9.3.23.0",address);
+
+ address = getNetworkID(AF_INET,"9.3.23.251",25);
+ EXPECT_EQ("9.3.23.128",address);
+
+ address = getNetworkID(AF_INET6,"2001:db8:abcd:dd12::0",64);
+ EXPECT_EQ("2001:db8:abcd:dd12::",address);
+
+ address = getNetworkID(AF_INET,"a.b.c.d",25);
+ EXPECT_EQ("",address);
+
+ address = getNetworkID(AF_INET6,"2001:db8:gghh:dd12::0",64);
+ EXPECT_EQ("",address);
+
+
+ address = getNetworkID(AF_INET6,"fe80::201:6cff:fe80:228",64);
+ EXPECT_EQ("fe80::",address);
+}
+
}// namespce network
}// namespace phosphor