diff options
Diffstat (limited to 'example')
-rw-r--r-- | example/Makefile.in | 6 | ||||
-rw-r--r-- | example/ndpiReader.c | 4 | ||||
-rw-r--r-- | example/reader_util.c | 14 | ||||
-rw-r--r-- | example/reader_util.h | 5 |
4 files changed, 16 insertions, 13 deletions
diff --git a/example/Makefile.in b/example/Makefile.in index d71ce3f01..df7885166 100644 --- a/example/Makefile.in +++ b/example/Makefile.in @@ -11,14 +11,14 @@ PREFIX?=@prefix@ all: ndpiReader @DPDK_TARGET@ -EXECUTABLE_SOURCES := ndpiReader.c +EXECUTABLE_SOURCES := ndpiReader.c ndpiSimpleIntegration.c COMMON_SOURCES := $(filter-out $(EXECUTABLE_SOURCES),$(wildcard *.c )) libndpiReader.a: $(COMMON_SOURCES:%.c=%.o) $(LIBNDPI) ar rsv libndpiReader.a $(COMMON_SOURCES:%.c=%.o) -ndpiReader: libndpiReader.a $(LIBNDPI) $(EXECUTABLE_SOURCES:%.c=%.o) - $(CC) $(CFLAGS) $(EXECUTABLE_SOURCES:%.c=%.o) libndpiReader.a -o $@ $(LDFLAGS) +ndpiReader: libndpiReader.a $(LIBNDPI) ndpiReader.o + $(CC) $(CFLAGS) ndpiReader.o libndpiReader.a -o $@ $(LDFLAGS) ndpiSimpleIntegration: ndpiSimpleIntegration.o $(CC) $(CFLAGS) $< -o $@ $(LDFLAGS) diff --git a/example/ndpiReader.c b/example/ndpiReader.c index 58f2ad366..02a4b61de 100644 --- a/example/ndpiReader.c +++ b/example/ndpiReader.c @@ -1420,7 +1420,7 @@ static void node_proto_guess_walker(const void *node, ndpi_VISIT which, int dept flow->ndpi_flow, enable_protocol_guess, &proto_guessed); } - process_ndpi_collected_info(ndpi_thread_info[thread_id].workflow, flow); + process_ndpi_collected_info(ndpi_thread_info[thread_id].workflow, flow, csv_fp); proto = flow->detected_protocol.app_protocol ? flow->detected_protocol.app_protocol : flow->detected_protocol.master_protocol; @@ -2946,7 +2946,7 @@ static void ndpi_process_packet(u_char *args, uint8_t *packet_checked = malloc(header->caplen); memcpy(packet_checked, packet, header->caplen); - p = ndpi_workflow_process_packet(ndpi_thread_info[thread_id].workflow, header, packet_checked); + p = ndpi_workflow_process_packet(ndpi_thread_info[thread_id].workflow, header, packet_checked, csv_fp); if(!pcap_start.tv_sec) pcap_start.tv_sec = header->ts.tv_sec, pcap_start.tv_usec = header->ts.tv_usec; pcap_end.tv_sec = header->ts.tv_sec, pcap_end.tv_usec = header->ts.tv_usec; diff --git a/example/reader_util.c b/example/reader_util.c index c07cadeff..55dc0c667 100644 --- a/example/reader_util.c +++ b/example/reader_util.c @@ -89,7 +89,6 @@ extern u_int8_t enable_protocol_guess, enable_joy_stats, enable_payload_analyzer; extern u_int8_t verbose, human_readeable_string_len; extern u_int8_t max_num_udp_dissected_pkts /* 8 */, max_num_tcp_dissected_pkts /* 10 */; -extern FILE *csv_fp; static u_int32_t flow_id = 0; /* ****************************************************** */ @@ -1022,7 +1021,7 @@ void correct_csv_data_field(char* data) { /* ****************************************************** */ -void process_ndpi_collected_info(struct ndpi_workflow * workflow, struct ndpi_flow_info *flow) { +void process_ndpi_collected_info(struct ndpi_workflow * workflow, struct ndpi_flow_info *flow, FILE * csv_fp) { u_int i; if(!flow->ndpi_flow) return; @@ -1290,7 +1289,8 @@ static struct ndpi_proto packet_processing(struct ndpi_workflow * workflow, u_int16_t ipsize, u_int16_t rawsize, const struct pcap_pkthdr *header, const u_char *packet, - struct timeval when) { + struct timeval when, + FILE * csv_fp) { struct ndpi_id_struct *src, *dst; struct ndpi_flow_info *flow = NULL; struct ndpi_flow_struct *ndpi_flow = NULL; @@ -1513,7 +1513,7 @@ static struct ndpi_proto packet_processing(struct ndpi_workflow * workflow, enable_protocol_guess, &proto_guessed); } - process_ndpi_collected_info(workflow, flow); + process_ndpi_collected_info(workflow, flow, csv_fp); } } } @@ -1525,7 +1525,8 @@ static struct ndpi_proto packet_processing(struct ndpi_workflow * workflow, struct ndpi_proto ndpi_workflow_process_packet(struct ndpi_workflow * workflow, const struct pcap_pkthdr *header, - const u_char *packet) { + const u_char *packet, + FILE * csv_fp) { /* * Declare pointers to packet headers */ @@ -1945,7 +1946,8 @@ struct ndpi_proto ndpi_workflow_process_packet(struct ndpi_workflow * workflow, /* process the packet */ return(packet_processing(workflow, time_ms, vlan_id, tunnel_type, iph, iph6, ip_offset, header->caplen - ip_offset, - header->caplen, header, packet, header->ts)); + header->caplen, header, packet, header->ts, + csv_fp)); } /* ********************************************************** */ diff --git a/example/reader_util.h b/example/reader_util.h index 75d66bfd4..d4e3dc74f 100644 --- a/example/reader_util.h +++ b/example/reader_util.h @@ -308,7 +308,8 @@ void ndpi_free_flow_info_half(struct ndpi_flow_info *flow); /* Process a packet and update the workflow */ struct ndpi_proto ndpi_workflow_process_packet(struct ndpi_workflow * workflow, const struct pcap_pkthdr *header, - const u_char *packet); + const u_char *packet, + FILE * csv_fp); /* flow callbacks for complete detected flow @@ -327,7 +328,7 @@ static inline void ndpi_workflow_set_flow_giveup_callback(struct ndpi_workflow * /* compare two nodes in workflow */ int ndpi_workflow_node_cmp(const void *a, const void *b); -void process_ndpi_collected_info(struct ndpi_workflow * workflow, struct ndpi_flow_info *flow); +void process_ndpi_collected_info(struct ndpi_workflow * workflow, struct ndpi_flow_info *flow, FILE * csv_fp); u_int32_t ethernet_crc32(const void* data, size_t n_bytes); void ndpi_flow_info_free_data(struct ndpi_flow_info *flow); void ndpi_flow_info_freer(void *node); |