#include #include "packet_helper.h" /* * Virtual eXtensible Local Area Network * Flags: 0x0800, VXLAN Network ID (VNI) * 0... .... .... .... = GBP Extension: Not defined * .... 1... .... .... = VXLAN Network ID (VNI): True * .... .... .0.. .... = Don't Learn: False * .... .... .... 0... = Policy Applied: False * .000 .000 0.00 .000 = Reserved(R): 0x0000 * Group Policy ID: 0 * VXLAN Network Identifier (VNI): 461829 * Reserved: 0 */ unsigned char data[] = { 0x08, 0x00, 0x00, 0x00, 0x07, 0x0c, 0x05, 0x00}; TEST(VXLAN_UTILS, GET) { const struct vxlan_hdr *hdr = (struct vxlan_hdr *)data; EXPECT_TRUE(vxlan_hdr_get_flags(hdr) == 0x08); EXPECT_TRUE(vxlan_hdr_get_vni(hdr) == 461829); } TEST(VXLAN_UTILS, SET) { char buff[8] = {0}; struct vxlan_hdr *hdr = (struct vxlan_hdr *)buff; vxlan_hdr_set_flags(hdr, 0x08); vxlan_hdr_set_vni(hdr, 461829); EXPECT_TRUE(memcmp(buff, data, 8) == 0); } int main(int argc, char **argv) { ::testing::InitGoogleTest(&argc, argv); return RUN_ALL_TESTS(); }