example: print fingerprints
This commit is contained in:
@@ -431,7 +431,7 @@ const char *PrintInet(int af, const void *src, char *dst, socklen_t size)
|
||||
void example_detect(struct osfp_db *osfp_db, Packet *p)
|
||||
{
|
||||
int ret;
|
||||
char str_buf[1024];
|
||||
char str_buf[1024] = "";
|
||||
//unsigned char *iph = (unsigned char *)(p->iph != NULL ? (void *)p->iph : (void *)p->ip6h);
|
||||
struct iphdr *iph;
|
||||
struct ip6_hdr *ip6h;
|
||||
@@ -448,11 +448,15 @@ void example_detect(struct osfp_db *osfp_db, Packet *p)
|
||||
osfp_profile_cycle(c2);
|
||||
|
||||
|
||||
struct osfp_fingerprint fp = {0};
|
||||
|
||||
osfp_profile_get_cycle(c1);
|
||||
if (iph) {
|
||||
result = osfp_ipv4_identify(osfp_db, iph, tcph, tcph_len);
|
||||
osfp_fingerprinting(iph, tcph, tcph_len, &fp, 4);
|
||||
} else if (ip6h) {
|
||||
result = osfp_ipv6_identify(osfp_db, ip6h, tcph, tcph_len);
|
||||
osfp_fingerprinting(iph, tcph, tcph_len, &fp, 6);
|
||||
} else {
|
||||
goto exit;
|
||||
}
|
||||
@@ -471,6 +475,9 @@ void example_detect(struct osfp_db *osfp_db, Packet *p)
|
||||
|
||||
char *json = osfp_result_score_detail_export(result);
|
||||
|
||||
osfp_fingerprint_to_json_buf(&fp, str_buf, 2048, 0);
|
||||
printf("%s\n", str_buf);
|
||||
|
||||
if (1) {
|
||||
printf("Example ipv4 header detect: --------------------------\n");
|
||||
printf("Connection info: %s:%d -> %s:%d\n", p->srcip, p->sp, p->dstip, p->dp);
|
||||
|
||||
Reference in New Issue
Block a user