summaryrefslogtreecommitdiffstats
path: root/datatop/src/datatop.c
diff options
context:
space:
mode:
Diffstat (limited to 'datatop/src/datatop.c')
-rw-r--r--datatop/src/datatop.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/datatop/src/datatop.c b/datatop/src/datatop.c
index 82022a3..da8e74d 100644
--- a/datatop/src/datatop.c
+++ b/datatop/src/datatop.c
@@ -1,5 +1,5 @@
/************************************************************************
-Copyright (c) 2015, The Linux Foundation. All rights reserved.
+Copyright (c) 2015-2016, The Linux Foundation. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
@@ -46,6 +46,7 @@ IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <string.h>
#include <errno.h>
#include <time.h>
+#include <pthread.h>
#include "datatop_interface.h"
#include "datatop_linked_list.h"
#include "datatop_opt.h"
@@ -175,6 +176,7 @@ static void dtop_set_niceness(int niceness)
int main(int argc, char **argv)
{
int parse_status;
+ pthread_t tid;
printf("DataTop - Version %s\n", VERSION);
printf("(c)2014-2015 Linux Foundation\n");
@@ -197,6 +199,13 @@ int main(int argc, char **argv)
break;
}
+ if (usr_cl_opts.iptables_rules_routes == OPT_CHOSE) {
+ if (!usr_cl_opts.out_dir) {
+ printf("Please provide an out directory.\n");
+ exit(EXIT_FAILURE);
+ }
+ }
+
dtop_dual_line_init("/proc/net/netstat");
dtop_dual_line_init("/proc/net/snmp");
dtop_single_line_init("/proc/net/snmp6");
@@ -213,6 +222,14 @@ int main(int argc, char **argv)
dtop_gen_init("/sys/kernel/debug/clk/snoc_clk/");
dtop_gen_init("/sys/kernel/debug/clk/pnoc_clk/");
+ if (usr_cl_opts.iptables_rules_routes == OPT_CHOSE) {
+ printf("Datatop IP Tables, rules, routes\n");
+ dtop_ip_table_init(usr_cl_opts.out_dir);
+ if(0 != pthread_create(&tid, NULL, &dtop_ip_table_start_poll, NULL)) {
+ printf("Unable to create capture_ip_tables_rules_routes thread\n");
+ }
+ }
+
if (usr_cl_opts.print_cl == OPT_CHOSE) {
dtop_poll(first_dpg_list);
dtop_print_terminal(first_dpg_list);