return result;
}
+/**
+ */
+static int DecodeEthernetTestIPv4Opt(void)
+{
+ uint8_t raw_eth[] = {
+ 0xae, 0x71, 0x00, 0x00, 0x00, 0x4b, 0x06, 0x90, 0x61, 0x02, 0x00, 0xcd, 0x88, 0x64, 0x11, 0x00,
+ 0x15, 0x00, 0x80, 0x64, 0x00, 0x21, 0x4c, 0x00, 0x00, 0x30, 0x42, 0xd6, 0xff, 0xff, 0xbd, 0x2f,
+ 0x02, 0x02, 0x00, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
+ 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
+ 0x01, 0x44, 0x05, 0x22, 0x02, 0x01
+ };
+
+ DefragInit();
+
+ Packet *p = SCMalloc(SIZE_OF_PACKET);
+ FAIL_IF_NULL(p);
+ ThreadVars tv;
+ DecodeThreadVars dtv;
+
+ memset(&dtv, 0, sizeof(DecodeThreadVars));
+ memset(&tv, 0, sizeof(ThreadVars));
+ memset(p, 0, SIZE_OF_PACKET);
+
+ DecodeEthernet(&tv, &dtv, p, raw_eth, sizeof(raw_eth), NULL);
+
+ SCFree(p);
+ DefragDestroy();
+ PASS;
+}
+
#endif /* UNITTESTS */
void DecodeIPV4RegisterTests(void)
UtRegisterTest("DecodeIPV4DefragTest01", DecodeIPV4DefragTest01);
UtRegisterTest("DecodeIPV4DefragTest02", DecodeIPV4DefragTest02);
UtRegisterTest("DecodeIPV4DefragTest03", DecodeIPV4DefragTest03);
+ UtRegisterTest("DecodeEthernetTestIPv4Opt", DecodeEthernetTestIPv4Opt);
#endif /* UNITTESTS */
}
/**