|
|
|
|
@ -1153,7 +1153,7 @@ error:
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static Packet *BuildIpv6TestPacket(
|
|
|
|
|
uint8_t proto, uint32_t id, uint16_t off, int mf, const char content, int content_len)
|
|
|
|
|
uint8_t proto, uint32_t id, uint16_t off, int mf, const uint8_t content, int content_len)
|
|
|
|
|
{
|
|
|
|
|
Packet *p = NULL;
|
|
|
|
|
uint8_t *pcontent;
|
|
|
|
|
@ -1429,8 +1429,7 @@ static int DefragReverseSimpleIpv6Test(void)
|
|
|
|
|
PASS;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static int DefragDoSturgesNovakTest(int policy, u_char *expected,
|
|
|
|
|
size_t expected_len)
|
|
|
|
|
static int DefragDoSturgesNovakTest(int policy, uint8_t *expected, size_t expected_len)
|
|
|
|
|
{
|
|
|
|
|
int i;
|
|
|
|
|
|
|
|
|
|
@ -1542,7 +1541,7 @@ static int DefragDoSturgesNovakTest(int policy, u_char *expected,
|
|
|
|
|
PASS;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static int DefragDoSturgesNovakIpv6Test(int policy, u_char *expected, size_t expected_len)
|
|
|
|
|
static int DefragDoSturgesNovakIpv6Test(int policy, uint8_t *expected, size_t expected_len)
|
|
|
|
|
{
|
|
|
|
|
int i;
|
|
|
|
|
|
|
|
|
|
@ -1659,7 +1658,7 @@ static int DefragDoSturgesNovakIpv6Test(int policy, u_char *expected, size_t exp
|
|
|
|
|
* and uses these to diagram the input fragments and the resulting
|
|
|
|
|
* policies. We build test cases for the papers scenario but assign
|
|
|
|
|
* specific values to each segment.
|
|
|
|
|
*/
|
|
|
|
|
*/
|
|
|
|
|
#define D_1 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A'
|
|
|
|
|
#define D_2 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B'
|
|
|
|
|
#define D_3 'C', 'C', 'C', 'C', 'C', 'C', 'C', 'C'
|
|
|
|
|
@ -1682,7 +1681,7 @@ static int
|
|
|
|
|
DefragSturgesNovakBsdTest(void)
|
|
|
|
|
{
|
|
|
|
|
/* Expected data. */
|
|
|
|
|
u_char expected[] = {
|
|
|
|
|
uint8_t expected[] = {
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
@ -1717,7 +1716,7 @@ DefragSturgesNovakBsdTest(void)
|
|
|
|
|
static int DefragSturgesNovakBsdIpv6Test(void)
|
|
|
|
|
{
|
|
|
|
|
/* Expected data. */
|
|
|
|
|
u_char expected[] = {
|
|
|
|
|
uint8_t expected[] = {
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
@ -1751,7 +1750,7 @@ static int DefragSturgesNovakBsdIpv6Test(void)
|
|
|
|
|
static int DefragSturgesNovakLinuxIpv4Test(void)
|
|
|
|
|
{
|
|
|
|
|
/* Expected data. */
|
|
|
|
|
u_char expected[] = {
|
|
|
|
|
uint8_t expected[] = {
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
@ -1786,7 +1785,7 @@ static int DefragSturgesNovakLinuxIpv4Test(void)
|
|
|
|
|
static int DefragSturgesNovakLinuxIpv6Test(void)
|
|
|
|
|
{
|
|
|
|
|
/* Expected data. */
|
|
|
|
|
u_char expected[] = {
|
|
|
|
|
uint8_t expected[] = {
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
@ -1820,7 +1819,7 @@ static int DefragSturgesNovakLinuxIpv6Test(void)
|
|
|
|
|
static int DefragSturgesNovakWindowsIpv4Test(void)
|
|
|
|
|
{
|
|
|
|
|
/* Expected data. */
|
|
|
|
|
u_char expected[] = {
|
|
|
|
|
uint8_t expected[] = {
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
@ -1855,7 +1854,7 @@ static int DefragSturgesNovakWindowsIpv4Test(void)
|
|
|
|
|
static int DefragSturgesNovakWindowsIpv6Test(void)
|
|
|
|
|
{
|
|
|
|
|
/* Expected data. */
|
|
|
|
|
u_char expected[] = {
|
|
|
|
|
uint8_t expected[] = {
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
@ -1889,7 +1888,7 @@ static int DefragSturgesNovakWindowsIpv6Test(void)
|
|
|
|
|
static int DefragSturgesNovakSolarisTest(void)
|
|
|
|
|
{
|
|
|
|
|
/* Expected data. */
|
|
|
|
|
u_char expected[] = {
|
|
|
|
|
uint8_t expected[] = {
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
@ -1924,7 +1923,7 @@ static int DefragSturgesNovakSolarisTest(void)
|
|
|
|
|
static int DefragSturgesNovakSolarisIpv6Test(void)
|
|
|
|
|
{
|
|
|
|
|
/* Expected data. */
|
|
|
|
|
u_char expected[] = {
|
|
|
|
|
uint8_t expected[] = {
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
@ -1958,7 +1957,7 @@ static int DefragSturgesNovakSolarisIpv6Test(void)
|
|
|
|
|
static int DefragSturgesNovakFirstTest(void)
|
|
|
|
|
{
|
|
|
|
|
/* Expected data. */
|
|
|
|
|
u_char expected[] = {
|
|
|
|
|
uint8_t expected[] = {
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
@ -1993,7 +1992,7 @@ static int DefragSturgesNovakFirstTest(void)
|
|
|
|
|
static int DefragSturgesNovakFirstIpv6Test(void)
|
|
|
|
|
{
|
|
|
|
|
/* Expected data. */
|
|
|
|
|
u_char expected[] = {
|
|
|
|
|
uint8_t expected[] = {
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
D_1,
|
|
|
|
|
@ -2027,7 +2026,7 @@ static int
|
|
|
|
|
DefragSturgesNovakLastTest(void)
|
|
|
|
|
{
|
|
|
|
|
/* Expected data. */
|
|
|
|
|
u_char expected[] = {
|
|
|
|
|
uint8_t expected[] = {
|
|
|
|
|
D_1,
|
|
|
|
|
D_4,
|
|
|
|
|
D_4,
|
|
|
|
|
@ -2062,7 +2061,7 @@ DefragSturgesNovakLastTest(void)
|
|
|
|
|
static int DefragSturgesNovakLastIpv6Test(void)
|
|
|
|
|
{
|
|
|
|
|
/* Expected data. */
|
|
|
|
|
u_char expected[] = {
|
|
|
|
|
uint8_t expected[] = {
|
|
|
|
|
D_1,
|
|
|
|
|
D_4,
|
|
|
|
|
D_4,
|
|
|
|
|
@ -2466,19 +2465,19 @@ static int DefragTestBadProto(void)
|
|
|
|
|
*/
|
|
|
|
|
static int DefragTestJeremyLinux(void)
|
|
|
|
|
{
|
|
|
|
|
char expected[] = "AAAAAAAA"
|
|
|
|
|
"AAAAAAAA"
|
|
|
|
|
"AAAAAAAA"
|
|
|
|
|
"CCCCCCCC"
|
|
|
|
|
"CCCCCCCC"
|
|
|
|
|
"CCCCCCCC"
|
|
|
|
|
"CCCCCCCC"
|
|
|
|
|
"CCCCCCCC"
|
|
|
|
|
"CCCCCCCC"
|
|
|
|
|
"BBBBBBBB"
|
|
|
|
|
"BBBBBBBB"
|
|
|
|
|
"DDDDDDDD"
|
|
|
|
|
"DDDDDD";
|
|
|
|
|
uint8_t expected[] = "AAAAAAAA"
|
|
|
|
|
"AAAAAAAA"
|
|
|
|
|
"AAAAAAAA"
|
|
|
|
|
"CCCCCCCC"
|
|
|
|
|
"CCCCCCCC"
|
|
|
|
|
"CCCCCCCC"
|
|
|
|
|
"CCCCCCCC"
|
|
|
|
|
"CCCCCCCC"
|
|
|
|
|
"CCCCCCCC"
|
|
|
|
|
"BBBBBBBB"
|
|
|
|
|
"BBBBBBBB"
|
|
|
|
|
"DDDDDDDD"
|
|
|
|
|
"DDDDDD";
|
|
|
|
|
|
|
|
|
|
DefragInit();
|
|
|
|
|
default_policy = DEFRAG_POLICY_LINUX;
|
|
|
|
|
|