60 static void IPRepRegisterTests(
void);
78 static inline int8_t GetRep(
const SReputation *r,
const uint8_t cat,
const uint32_t
version)
89 static int8_t GetHostRepSrc(
Packet *p, uint8_t cat, uint32_t
version)
116 static int8_t GetHostRepDst(
Packet *p, uint8_t cat, uint32_t
version)
151 const DetectIPRepData *rd = (
const DetectIPRepData *)
ctx;
162 val = GetHostRepSrc(p, rd->cat,
version);
169 val = GetHostRepDst(p, rd->cat,
version);
178 val = GetHostRepSrc(p, rd->cat,
version);
184 val = GetHostRepDst(p, rd->cat,
version);
196 val = GetHostRepSrc(p, rd->cat,
version);
197 SCLogDebug(
"checking src -- val %d (looking for cat %u, val %u)", val, rd->cat,
212 val = GetHostRepDst(p, rd->cat,
version);
226 val = GetHostRepSrc(p, rd->cat,
version);
231 val = GetHostRepDst(p, rd->cat,
version);
238 val = GetHostRepSrc(p, rd->cat,
version);
244 val = GetHostRepDst(p, rd->cat,
version);
260 DetectIPRepData *cd = SCDetectIPRepParse(rawstr);
262 SCLogError(
"\"%s\" is not a valid setting for iprep", rawstr);
266 SCLogDebug(
"cmd %u, cat %u, op %u, val %u", cd->cmd, cd->cat, cd->du8.mode, cd->du8.arg1);
286 DetectIPRepData *fd = (DetectIPRepData *)ptr;
290 SCDetectIPRepFree(fd);
297 static FILE *DetectIPRepGenerateCategoriesDummy(
void)
300 const char *buffer =
"1,BadHosts,Know bad hosts";
302 fd =
SCFmemopen((
void *)buffer, strlen(buffer),
"r");
309 static FILE *DetectIPRepGenerateCategoriesDummy2(
void)
313 "1,BadHosts,Know bad hosts\n"
314 "2,GoodHosts,Know good hosts\n";
316 fd =
SCFmemopen((
void *)buffer, strlen(buffer),
"r");
323 static FILE *DetectIPRepGenerateNetworksDummy(
void)
326 const char *buffer =
"10.0.0.0/24,1,20";
328 fd =
SCFmemopen((
void *)buffer, strlen(buffer),
"r");
335 static FILE *DetectIPRepGenerateNetworksDummy2(
void)
340 "192.168.0.0/16,2,127";
342 fd =
SCFmemopen((
void *)buffer, strlen(buffer),
"r");
349 static int DetectIPRepTest01(
void)
360 memset(&th_v, 0,
sizeof(th_v));
370 fd = DetectIPRepGenerateCategoriesDummy();
374 fd = DetectIPRepGenerateNetworksDummy();
379 "badhost\"; iprep:any,BadHosts,>,1; sid:1;rev:1;)");
401 static int DetectIPRepTest02(
void)
412 memset(&th_v, 0,
sizeof(th_v));
422 fd = DetectIPRepGenerateCategoriesDummy();
426 fd = DetectIPRepGenerateNetworksDummy();
431 "badhost\"; iprep:src,BadHosts,>,1; sid:1; rev:1;)");
453 static int DetectIPRepTest03(
void)
464 memset(&th_v, 0,
sizeof(th_v));
474 fd = DetectIPRepGenerateCategoriesDummy();
478 fd = DetectIPRepGenerateNetworksDummy();
483 "badhost\"; iprep:dst,BadHosts,>,1; sid:1; rev:1;)");
505 static int DetectIPRepTest04(
void)
516 memset(&th_v, 0,
sizeof(th_v));
527 fd = DetectIPRepGenerateCategoriesDummy();
531 fd = DetectIPRepGenerateNetworksDummy();
536 "badhost\"; iprep:both,BadHosts,>,1; sid:1; rev:1;)");
558 static int DetectIPRepTest05(
void)
569 memset(&th_v, 0,
sizeof(th_v));
579 fd = DetectIPRepGenerateCategoriesDummy();
583 fd = DetectIPRepGenerateNetworksDummy();
588 "badhost\"; iprep:any,BadHosts,>,1; sid:1; rev:1;)");
610 static int DetectIPRepTest06(
void)
621 memset(&th_v, 0,
sizeof(th_v));
631 fd = DetectIPRepGenerateCategoriesDummy();
635 fd = DetectIPRepGenerateNetworksDummy2();
640 "badhost\"; iprep:any,BadHosts,>,1; sid:1; rev:1;)");
662 static int DetectIPRepTest07(
void)
673 memset(&th_v, 0,
sizeof(th_v));
683 fd = DetectIPRepGenerateCategoriesDummy();
687 fd = DetectIPRepGenerateNetworksDummy2();
692 "badhost\"; iprep:any,BadHosts,>,1; sid:1; rev:1;)");
714 static int DetectIPRepTest08(
void)
725 memset(&th_v, 0,
sizeof(th_v));
736 fd = DetectIPRepGenerateCategoriesDummy();
740 fd = DetectIPRepGenerateNetworksDummy();
745 "badhost\"; iprep:any,BadHosts,>,1; sid:1; rev:1;)");
767 static int DetectIPRepTest09(
void)
778 memset(&th_v, 0,
sizeof(th_v));
789 fd = DetectIPRepGenerateCategoriesDummy2();
793 fd = DetectIPRepGenerateNetworksDummy2();
798 "alert tcp any any -> any any (msg:\"test\"; iprep:src,BadHosts,>,9; sid:1; rev:1;)");
820 static FILE *DetectIPRepGenerateNetworksDummy3(
void)
823 const char *buffer =
"192.168.0.0/16,1,127";
825 fd =
SCFmemopen((
void *)buffer, strlen(buffer),
"r");
832 static int DetectIPRepTest10(
void)
843 memset(&th_v, 0,
sizeof(th_v));
854 fd = DetectIPRepGenerateCategoriesDummy2();
858 fd = DetectIPRepGenerateNetworksDummy3();
863 "alert tcp any any -> any any (msg:\"test\"; iprep:src,BadHosts,isset; sid:1; rev:1;)");
882 static int DetectIPRepTest11(
void)
893 memset(&th_v, 0,
sizeof(th_v));
904 fd = DetectIPRepGenerateCategoriesDummy2();
908 fd = DetectIPRepGenerateNetworksDummy3();
913 "iprep:src,BadHosts,isnotset; sid:1; rev:1;)");
935 void IPRepRegisterTests(
void)
947 UtRegisterTest(
"DetectIPRepTest11 -- isnotset", DetectIPRepTest11);