60 uint32_t a_ip1 =
SCNtohl(a->
ip.addr_data32[0]);
61 uint32_t a_ip2 =
SCNtohl(a->
ip2.addr_data32[0]);
62 uint32_t b_ip1 =
SCNtohl(b->
ip.addr_data32[0]);
63 uint32_t b_ip2 =
SCNtohl(b->
ip2.addr_data32[0]);
65 if (a_ip1 == b_ip1 && a_ip2 == b_ip2) {
68 }
else if (a_ip1 >= b_ip1 && a_ip1 <= b_ip2 && a_ip2 <= b_ip2) {
71 }
else if (a_ip1 <= b_ip1 && a_ip2 >= b_ip2) {
74 }
else if (a_ip1 < b_ip1 && a_ip2 < b_ip2 && a_ip2 >= b_ip1) {
77 }
else if (a_ip1 < b_ip1 && a_ip2 < b_ip2) {
80 }
else if (a_ip1 > b_ip1 && a_ip1 <= b_ip2 && a_ip2 > b_ip2) {
83 }
else if (a_ip1 > b_ip2) {
88 SCLogDebug(
"Internal Error: should be unreachable");
115 uint32_t a_ip1 =
SCNtohl(a->
ip.addr_data32[0]);
116 uint32_t a_ip2 =
SCNtohl(a->
ip2.addr_data32[0]);
117 uint32_t b_ip1 =
SCNtohl(b->
ip.addr_data32[0]);
118 uint32_t b_ip2 =
SCNtohl(b->
ip2.addr_data32[0]);
143 SCLogDebug(
"DetectAddressCutIPv4: r == ADDRESS_LE");
145 a->
ip.addr_data32[0] = htonl(a_ip1);
146 a->
ip2.addr_data32[0] = htonl(b_ip1 - 1);
148 b->
ip.addr_data32[0] = htonl(b_ip1);
149 b->
ip2.addr_data32[0] = htonl(a_ip2);
156 tmp_c->
ip.addr_data32[0] = htonl(a_ip2 + 1);
157 tmp_c->
ip2.addr_data32[0] = htonl(b_ip2);
166 SCLogDebug(
"DetectAddressCutIPv4: r == ADDRESS_GE");
168 a->
ip.addr_data32[0] = htonl(b_ip1);
169 a->
ip2.addr_data32[0] = htonl(a_ip1 - 1);
171 b->
ip.addr_data32[0] = htonl(a_ip1);
172 b->
ip2.addr_data32[0] = htonl(b_ip2);
179 tmp_c->
ip.addr_data32[0] = htonl(b_ip2 + 1);
180 tmp_c->
ip2.addr_data32[0] = htonl(a_ip2);
200 SCLogDebug(
"DetectAddressCutIPv4: r == ADDRESS_ES");
202 if (a_ip1 == b_ip1) {
205 a->
ip.addr_data32[0] = htonl(a_ip1);
206 a->
ip2.addr_data32[0] = htonl(a_ip2);
208 b->
ip.addr_data32[0] = htonl(a_ip2 + 1);
209 b->
ip2.addr_data32[0] = htonl(b_ip2);
211 }
else if (a_ip2 == b_ip2) {
214 a->
ip.addr_data32[0] = htonl(b_ip1);
215 a->
ip2.addr_data32[0] = htonl(a_ip1 - 1);
217 b->
ip.addr_data32[0] = htonl(a_ip1);
218 b->
ip2.addr_data32[0] = htonl(a_ip2);
223 a->
ip.addr_data32[0] = htonl(b_ip1);
224 a->
ip2.addr_data32[0] = htonl(a_ip1 - 1);
226 b->
ip.addr_data32[0] = htonl(a_ip1);
227 b->
ip2.addr_data32[0] = htonl(a_ip2);
234 tmp_c->
ip.addr_data32[0] = htonl(a_ip2 + 1);
235 tmp_c->
ip2.addr_data32[0] = htonl(b_ip2);
255 SCLogDebug(
"DetectAddressCutIPv4: r == ADDRESS_EB");
257 if (a_ip1 == b_ip1) {
260 a->
ip.addr_data32[0] = htonl(b_ip1);
261 a->
ip2.addr_data32[0] = htonl(b_ip2);
263 b->
ip.addr_data32[0] = htonl(b_ip2 + 1);
264 b->
ip2.addr_data32[0] = htonl(a_ip2);
265 }
else if (a_ip2 == b_ip2) {
268 a->
ip.addr_data32[0] = htonl(a_ip1);
269 a->
ip2.addr_data32[0] = htonl(b_ip1 - 1);
271 b->
ip.addr_data32[0] = htonl(b_ip1);
272 b->
ip2.addr_data32[0] = htonl(b_ip2);
276 a->
ip.addr_data32[0] = htonl(a_ip1);
277 a->
ip2.addr_data32[0] = htonl(b_ip1 - 1);
279 b->
ip.addr_data32[0] = htonl(b_ip1);
280 b->
ip2.addr_data32[0] = htonl(b_ip2);
287 tmp_c->
ip.addr_data32[0] = htonl(b_ip2 + 1);
288 tmp_c->
ip2.addr_data32[0] = htonl(a_ip2);
315 uint32_t next_ip = 0;
321 if (
SCNtohl(ag->
ip.addr_data32[0]) != 0x00000000)
326 if (
SCNtohl(ag->
ip2.addr_data32[0]) == 0xFFFFFFFF)
329 next_ip = htonl(
SCNtohl(ag->
ip2.addr_data32[0]) + 1);
332 for ( ; ag != NULL; ag = ag->
next) {
334 if (ag->
ip.addr_data32[0] != next_ip)
337 if (
SCNtohl(ag->
ip2.addr_data32[0]) == 0xFFFFFFFF)
340 next_ip = htonl(
SCNtohl(ag->
ip2.addr_data32[0]) + 1);
369 uint32_t a_ip1 =
SCNtohl(a->
ip.addr_data32[0]);
370 uint32_t a_ip2 =
SCNtohl(a->
ip2.addr_data32[0]);
376 if (a_ip1 != 0x00000000 && a_ip2 != 0xFFFFFFFF) {
377 a->
ip.addr_data32[0] = htonl(0x00000000);
378 a->
ip2.addr_data32[0] = htonl(a_ip1 - 1);
385 tmp_b->
ip.addr_data32[0] = htonl(a_ip2 + 1);
386 tmp_b->
ip2.addr_data32[0] = htonl(0xFFFFFFFF);
388 }
else if (a_ip1 == 0x00000000 && a_ip2 != 0xFFFFFFFF) {
389 a->
ip.addr_data32[0] = htonl(a_ip2 + 1);
390 a->
ip2.addr_data32[0] = htonl(0xFFFFFFFF);
391 }
else if (a_ip1 != 0x00000000 && a_ip2 == 0xFFFFFFFF) {
392 a->
ip.addr_data32[0] = htonl(0x00000000);
393 a->
ip2.addr_data32[0] = htonl(a_ip1 - 1);
408 static int DetectAddressIPv4TestAddressCmp01(
void)
418 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
419 a->ip.addr_data32[0] = in.s_addr;
420 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
421 a->ip2.addr_data32[0] = in.s_addr;
422 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
423 b->
ip.addr_data32[0] = in.s_addr;
424 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
425 b->
ip2.addr_data32[0] = in.s_addr;
428 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
429 a->ip.addr_data32[0] = in.s_addr;
430 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
431 a->ip2.addr_data32[0] = in.s_addr;
432 FAIL_IF(inet_pton(AF_INET,
"1.2.3.3", &in) < 0);
433 b->
ip.addr_data32[0] = in.s_addr;
434 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
435 b->
ip2.addr_data32[0] = in.s_addr;
438 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
439 a->ip.addr_data32[0] = in.s_addr;
440 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
441 a->ip2.addr_data32[0] = in.s_addr;
442 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
443 b->
ip.addr_data32[0] = in.s_addr;
444 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
445 b->
ip2.addr_data32[0] = in.s_addr;
448 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
449 a->ip.addr_data32[0] = in.s_addr;
450 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
451 a->ip2.addr_data32[0] = in.s_addr;
452 FAIL_IF(inet_pton(AF_INET,
"1.2.3.3", &in) < 0);
453 b->
ip.addr_data32[0] = in.s_addr;
454 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
455 b->
ip2.addr_data32[0] = in.s_addr;
458 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
459 a->ip.addr_data32[0] = in.s_addr;
460 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
461 a->ip2.addr_data32[0] = in.s_addr;
462 FAIL_IF(inet_pton(AF_INET,
"1.2.3.3", &in) < 0);
463 b->
ip.addr_data32[0] = in.s_addr;
464 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
465 b->
ip2.addr_data32[0] = in.s_addr;
468 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
469 a->ip.addr_data32[0] = in.s_addr;
470 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
471 a->ip2.addr_data32[0] = in.s_addr;
472 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
473 b->
ip.addr_data32[0] = in.s_addr;
474 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
475 b->
ip2.addr_data32[0] = in.s_addr;
478 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
479 a->ip.addr_data32[0] = in.s_addr;
480 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
481 a->ip2.addr_data32[0] = in.s_addr;
482 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
483 b->
ip.addr_data32[0] = in.s_addr;
484 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
485 b->
ip2.addr_data32[0] = in.s_addr;
488 FAIL_IF(inet_pton(AF_INET,
"1.2.3.3", &in) < 0);
489 a->ip.addr_data32[0] = in.s_addr;
490 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
491 a->ip2.addr_data32[0] = in.s_addr;
492 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
493 b->
ip.addr_data32[0] = in.s_addr;
494 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
495 b->
ip2.addr_data32[0] = in.s_addr;
498 FAIL_IF(inet_pton(AF_INET,
"1.2.3.3", &in) < 0);
499 a->ip.addr_data32[0] = in.s_addr;
500 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
501 a->ip2.addr_data32[0] = in.s_addr;
502 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
503 b->
ip.addr_data32[0] = in.s_addr;
504 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
505 b->
ip2.addr_data32[0] = in.s_addr;
508 FAIL_IF(inet_pton(AF_INET,
"1.2.3.5", &in) < 0);
509 a->ip.addr_data32[0] = in.s_addr;
510 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
511 a->ip2.addr_data32[0] = in.s_addr;
512 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
513 b->
ip.addr_data32[0] = in.s_addr;
514 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
515 b->
ip2.addr_data32[0] = in.s_addr;
518 FAIL_IF(inet_pton(AF_INET,
"1.2.3.3", &in) < 0);
519 a->ip.addr_data32[0] = in.s_addr;
520 FAIL_IF(inet_pton(AF_INET,
"128.128.128.128", &in) < 0);
521 a->ip2.addr_data32[0] = in.s_addr;
522 FAIL_IF(inet_pton(AF_INET,
"128.128.128.128", &in) < 0);
523 b->
ip.addr_data32[0] = in.s_addr;
524 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
525 b->
ip2.addr_data32[0] = in.s_addr;
528 FAIL_IF(inet_pton(AF_INET,
"1.2.3.3", &in) < 0);
529 a->ip.addr_data32[0] = in.s_addr;
530 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
531 a->ip2.addr_data32[0] = in.s_addr;
532 FAIL_IF(inet_pton(AF_INET,
"128.128.128.128", &in) < 0);
533 b->
ip.addr_data32[0] = in.s_addr;
534 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
535 b->
ip2.addr_data32[0] = in.s_addr;
538 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
539 a->ip.addr_data32[0] = in.s_addr;
540 FAIL_IF(inet_pton(AF_INET,
"180.180.180.180", &in) < 0);
541 a->ip2.addr_data32[0] = in.s_addr;
542 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
543 b->
ip.addr_data32[0] = in.s_addr;
544 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
545 b->
ip2.addr_data32[0] = in.s_addr;
548 FAIL_IF(inet_pton(AF_INET,
"170.170.170.169", &in) < 0);
549 a->ip.addr_data32[0] = in.s_addr;
550 FAIL_IF(inet_pton(AF_INET,
"180.180.180.180", &in) < 0);
551 a->ip2.addr_data32[0] = in.s_addr;
552 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
553 b->
ip.addr_data32[0] = in.s_addr;
554 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
555 b->
ip2.addr_data32[0] = in.s_addr;
558 FAIL_IF(inet_pton(AF_INET,
"170.170.170.169", &in) < 0);
559 a->ip.addr_data32[0] = in.s_addr;
560 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
561 a->ip2.addr_data32[0] = in.s_addr;
562 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
563 b->
ip.addr_data32[0] = in.s_addr;
564 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
565 b->
ip2.addr_data32[0] = in.s_addr;
568 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
569 a->ip.addr_data32[0] = in.s_addr;
570 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
571 a->ip2.addr_data32[0] = in.s_addr;
572 FAIL_IF(inet_pton(AF_INET,
"180.180.180.180", &in) < 0);
573 b->
ip.addr_data32[0] = in.s_addr;
574 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
575 b->
ip2.addr_data32[0] = in.s_addr;
578 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
579 a->ip.addr_data32[0] = in.s_addr;
580 FAIL_IF(inet_pton(AF_INET,
"185.185.185.185", &in) < 0);
581 a->ip2.addr_data32[0] = in.s_addr;
582 FAIL_IF(inet_pton(AF_INET,
"180.180.180.180", &in) < 0);
583 b->
ip.addr_data32[0] = in.s_addr;
584 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
585 b->
ip2.addr_data32[0] = in.s_addr;
589 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
590 a->ip.addr_data32[0] = in.s_addr;
591 FAIL_IF(inet_pton(AF_INET,
"180.180.180.180", &in) < 0);
592 a->ip2.addr_data32[0] = in.s_addr;
593 FAIL_IF(inet_pton(AF_INET,
"180.180.180.180", &in) < 0);
594 b->
ip.addr_data32[0] = in.s_addr;
595 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
596 b->
ip2.addr_data32[0] = in.s_addr;
600 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
601 a->ip.addr_data32[0] = in.s_addr;
602 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
603 a->ip2.addr_data32[0] = in.s_addr;
604 FAIL_IF(inet_pton(AF_INET,
"180.180.180.180", &in) < 0);
605 b->
ip.addr_data32[0] = in.s_addr;
606 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
607 b->
ip2.addr_data32[0] = in.s_addr;
610 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
611 a->ip.addr_data32[0] = in.s_addr;
612 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
613 a->ip2.addr_data32[0] = in.s_addr;
614 FAIL_IF(inet_pton(AF_INET,
"180.180.180.180", &in) < 0);
615 b->
ip.addr_data32[0] = in.s_addr;
616 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
617 b->
ip2.addr_data32[0] = in.s_addr;
620 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
621 a->ip.addr_data32[0] = in.s_addr;
622 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
623 a->ip2.addr_data32[0] = in.s_addr;
624 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
625 b->
ip.addr_data32[0] = in.s_addr;
626 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
627 b->
ip2.addr_data32[0] = in.s_addr;
630 FAIL_IF(inet_pton(AF_INET,
"128.128.128.128", &in) < 0);
631 a->ip.addr_data32[0] = in.s_addr;
632 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
633 a->ip2.addr_data32[0] = in.s_addr;
634 FAIL_IF(inet_pton(AF_INET,
"1.2.3.3", &in) < 0);
635 b->
ip.addr_data32[0] = in.s_addr;
636 FAIL_IF(inet_pton(AF_INET,
"128.128.128.128", &in) < 0);
637 b->
ip2.addr_data32[0] = in.s_addr;
640 FAIL_IF(inet_pton(AF_INET,
"128.128.128.128", &in) < 0);
641 a->ip.addr_data32[0] = in.s_addr;
642 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
643 a->ip2.addr_data32[0] = in.s_addr;
644 FAIL_IF(inet_pton(AF_INET,
"1.2.3.3", &in) < 0);
645 b->
ip.addr_data32[0] = in.s_addr;
646 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
647 b->
ip2.addr_data32[0] = in.s_addr;
650 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
651 a->ip.addr_data32[0] = in.s_addr;
652 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
653 a->ip2.addr_data32[0] = in.s_addr;
654 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
655 b->
ip.addr_data32[0] = in.s_addr;
656 FAIL_IF(inet_pton(AF_INET,
"180.180.180.180", &in) < 0);
657 b->
ip2.addr_data32[0] = in.s_addr;
660 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
661 a->ip.addr_data32[0] = in.s_addr;
662 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
663 a->ip2.addr_data32[0] = in.s_addr;
664 FAIL_IF(inet_pton(AF_INET,
"170.170.170.169", &in) < 0);
665 b->
ip.addr_data32[0] = in.s_addr;
666 FAIL_IF(inet_pton(AF_INET,
"180.180.180.180", &in) < 0);
667 b->
ip2.addr_data32[0] = in.s_addr;
670 FAIL_IF(inet_pton(AF_INET,
"170.170.170.169", &in) < 0);
671 a->ip.addr_data32[0] = in.s_addr;
672 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
673 a->ip2.addr_data32[0] = in.s_addr;
674 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
675 b->
ip.addr_data32[0] = in.s_addr;
676 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
677 b->
ip2.addr_data32[0] = in.s_addr;
680 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
681 a->ip.addr_data32[0] = in.s_addr;
682 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
683 a->ip2.addr_data32[0] = in.s_addr;
684 FAIL_IF(inet_pton(AF_INET,
"170.170.169.170", &in) < 0);
685 b->
ip.addr_data32[0] = in.s_addr;
686 FAIL_IF(inet_pton(AF_INET,
"192.168.1.1", &in) < 0);
687 b->
ip2.addr_data32[0] = in.s_addr;
690 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
691 a->ip.addr_data32[0] = in.s_addr;
692 FAIL_IF(inet_pton(AF_INET,
"200.200.200.200", &in) < 0);
693 a->ip2.addr_data32[0] = in.s_addr;
694 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
695 b->
ip.addr_data32[0] = in.s_addr;
696 FAIL_IF(inet_pton(AF_INET,
"185.185.185.185", &in) < 0);
697 b->
ip2.addr_data32[0] = in.s_addr;
700 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
701 a->ip.addr_data32[0] = in.s_addr;
702 FAIL_IF(inet_pton(AF_INET,
"200.200.200.200", &in) < 0);
703 a->ip2.addr_data32[0] = in.s_addr;
704 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
705 b->
ip.addr_data32[0] = in.s_addr;
706 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
707 b->
ip2.addr_data32[0] = in.s_addr;
710 FAIL_IF(inet_pton(AF_INET,
"182.168.1.2", &in) < 0);
711 a->ip.addr_data32[0] = in.s_addr;
712 FAIL_IF(inet_pton(AF_INET,
"200.200.200.200", &in) < 0);
713 a->ip2.addr_data32[0] = in.s_addr;
714 FAIL_IF(inet_pton(AF_INET,
"170.170.170.170", &in) < 0);
715 b->
ip.addr_data32[0] = in.s_addr;
716 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
717 b->
ip2.addr_data32[0] = in.s_addr;
725 static int DetectAddressIPv4IsCompleteIPSpace02(
void)
732 FAIL_IF(inet_pton(AF_INET,
"0.0.0.0", &in) < 0);
733 a->ip.addr_data32[0] = in.s_addr;
734 FAIL_IF(inet_pton(AF_INET,
"255.255.255.255", &in) < 0);
735 a->ip2.addr_data32[0] = in.s_addr;
738 FAIL_IF(inet_pton(AF_INET,
"0.0.0.1", &in) < 0);
739 a->ip.addr_data32[0] = in.s_addr;
740 FAIL_IF(inet_pton(AF_INET,
"255.255.255.255", &in) < 0);
741 a->ip2.addr_data32[0] = in.s_addr;
749 FAIL_IF(inet_pton(AF_INET,
"0.0.0.0", &in) < 0);
750 a->ip.addr_data32[0] = in.s_addr;
751 FAIL_IF(inet_pton(AF_INET,
"255.255.255.254", &in) < 0);
752 a->ip2.addr_data32[0] = in.s_addr;
760 static int DetectAddressIPv4IsCompleteIPSpace03(
void)
768 FAIL_IF(inet_pton(AF_INET,
"0.0.0.0", &in) < 0);
769 a->ip.addr_data32[0] = in.s_addr;
770 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
771 a->ip2.addr_data32[0] = in.s_addr;
778 FAIL_IF(inet_pton(AF_INET,
"1.2.3.5", &in) < 0);
779 temp->
ip.addr_data32[0] = in.s_addr;
780 FAIL_IF(inet_pton(AF_INET,
"126.36.62.61", &in) < 0);
781 temp->
ip2.addr_data32[0] = in.s_addr;
788 FAIL_IF(inet_pton(AF_INET,
"126.36.62.62", &in) < 0);
789 temp->
ip.addr_data32[0] = in.s_addr;
790 FAIL_IF(inet_pton(AF_INET,
"222.52.21.62", &in) < 0);
791 temp->
ip2.addr_data32[0] = in.s_addr;
798 FAIL_IF(inet_pton(AF_INET,
"222.52.21.63", &in) < 0);
799 temp->
ip.addr_data32[0] = in.s_addr;
800 FAIL_IF(inet_pton(AF_INET,
"255.255.255.254", &in) < 0);
801 temp->
ip2.addr_data32[0] = in.s_addr;
808 FAIL_IF(inet_pton(AF_INET,
"255.255.255.255", &in) < 0);
809 temp->
ip.addr_data32[0] = in.s_addr;
810 FAIL_IF(inet_pton(AF_INET,
"255.255.255.255", &in) < 0);
811 temp->
ip2.addr_data32[0] = in.s_addr;
819 static int DetectAddressIPv4IsCompleteIPSpace04(
void)
827 FAIL_IF(inet_pton(AF_INET,
"0.0.0.0", &in) < 0);
828 a->ip.addr_data32[0] = in.s_addr;
829 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
830 a->ip2.addr_data32[0] = in.s_addr;
837 FAIL_IF(inet_pton(AF_INET,
"1.2.3.5", &in) < 0);
838 temp->
ip.addr_data32[0] = in.s_addr;
839 FAIL_IF(inet_pton(AF_INET,
"126.36.62.61", &in) < 0);
840 temp->
ip2.addr_data32[0] = in.s_addr;
847 FAIL_IF(inet_pton(AF_INET,
"126.36.62.62", &in) < 0);
848 temp->
ip.addr_data32[0] = in.s_addr;
849 FAIL_IF(inet_pton(AF_INET,
"222.52.21.62", &in) < 0);
850 temp->
ip2.addr_data32[0] = in.s_addr;
857 FAIL_IF(inet_pton(AF_INET,
"222.52.21.64", &in) < 0);
858 temp->
ip.addr_data32[0] = in.s_addr;
859 FAIL_IF(inet_pton(AF_INET,
"255.255.255.254", &in) < 0);
860 temp->
ip2.addr_data32[0] = in.s_addr;
867 FAIL_IF(inet_pton(AF_INET,
"255.255.255.255", &in) < 0);
868 temp->
ip.addr_data32[0] = in.s_addr;
869 FAIL_IF(inet_pton(AF_INET,
"255.255.255.255", &in) < 0);
870 temp->
ip2.addr_data32[0] = in.s_addr;
878 static int DetectAddressIPv4CutNot05(
void)
886 FAIL_IF(inet_pton(AF_INET,
"0.0.0.0", &in) < 0);
887 a->ip.addr_data32[0] = in.s_addr;
888 FAIL_IF(inet_pton(AF_INET,
"255.255.255.255", &in) < 0);
889 a->ip2.addr_data32[0] = in.s_addr;
897 static int DetectAddressIPv4CutNot06(
void)
905 FAIL_IF(inet_pton(AF_INET,
"0.0.0.0", &in) < 0);
906 a->ip.addr_data32[0] = in.s_addr;
907 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
908 a->ip2.addr_data32[0] = in.s_addr;
911 FAIL_IF(inet_pton(AF_INET,
"1.2.3.5", &in) < 0);
913 FAIL_IF(inet_pton(AF_INET,
"255.255.255.255", &in) < 0);
921 static int DetectAddressIPv4CutNot07(
void)
929 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
930 a->ip.addr_data32[0] = in.s_addr;
931 FAIL_IF(inet_pton(AF_INET,
"255.255.255.255", &in) < 0);
932 a->ip2.addr_data32[0] = in.s_addr;
935 FAIL_IF(inet_pton(AF_INET,
"0.0.0.0", &in) < 0);
937 FAIL_IF(inet_pton(AF_INET,
"1.2.3.3", &in) < 0);
945 static int DetectAddressIPv4CutNot08(
void)
953 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
954 a->ip.addr_data32[0] = in.s_addr;
955 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
956 a->ip2.addr_data32[0] = in.s_addr;
959 FAIL_IF(inet_pton(AF_INET,
"0.0.0.0", &in) < 0);
961 FAIL_IF(inet_pton(AF_INET,
"1.2.3.3", &in) < 0);
965 FAIL_IF(inet_pton(AF_INET,
"1.2.3.5", &in) < 0);
967 FAIL_IF(inet_pton(AF_INET,
"255.255.255.255", &in) < 0);
975 static int DetectAddressIPv4CutNot09(
void)
983 FAIL_IF(inet_pton(AF_INET,
"1.2.3.4", &in) < 0);
984 a->ip.addr_data32[0] = in.s_addr;
985 FAIL_IF(inet_pton(AF_INET,
"192.168.1.2", &in) < 0);
986 a->ip2.addr_data32[0] = in.s_addr;
989 FAIL_IF(inet_pton(AF_INET,
"0.0.0.0", &in) < 0);
991 FAIL_IF(inet_pton(AF_INET,
"1.2.3.3", &in) < 0);
995 FAIL_IF(inet_pton(AF_INET,
"192.168.1.3", &in) < 0);
997 FAIL_IF(inet_pton(AF_INET,
"255.255.255.255", &in) < 0);
1011 DetectAddressIPv4TestAddressCmp01);
1013 DetectAddressIPv4IsCompleteIPSpace02);
1015 DetectAddressIPv4IsCompleteIPSpace03);
1017 DetectAddressIPv4IsCompleteIPSpace04);
1018 UtRegisterTest(
"DetectAddressIPv4CutNot05", DetectAddressIPv4CutNot05);
1019 UtRegisterTest(
"DetectAddressIPv4CutNot06", DetectAddressIPv4CutNot06);
1020 UtRegisterTest(
"DetectAddressIPv4CutNot07", DetectAddressIPv4CutNot07);
1021 UtRegisterTest(
"DetectAddressIPv4CutNot08", DetectAddressIPv4CutNot08);
1022 UtRegisterTest(
"DetectAddressIPv4CutNot09", DetectAddressIPv4CutNot09);