debug version
[svn/Prometheus-QoS/.git] / parseiptables.c
index ea9ef965b44dd26ceb4309cd266b6076749d0c7a..b44c7ad133008b5275d3e128449a0ff40d752deb 100644 (file)
@@ -1,4 +1,4 @@
-/* Modified by: xChaos, 20131029 */\r
+/* Modified by: xChaos, 20131208 */\r
 \r
 #include "cll1-0.6.2.h"\r
 #include "ipstruct.h"\r
@@ -8,17 +8,20 @@
 /* globals declared in prometheus.c */\r
 extern struct IP *ips, *ip, *sharedip;\r
 extern char *mark;\r
-extern char *proxy_ip;\r
+/* extern char *proxy_ip; */\r
 extern int free_min;\r
 extern int free_max;\r
 extern int include_upload;\r
 \r
+int traffic_detected = 0;\r
+\r
 /* ===================== traffic analyser - uses iptables  ================ */ \r
 \r
 void get_traffic_statistics(const char *whichiptables, int ipv6)\r
 {\r
  char *str,*cmd;\r
- int downloadflag=0;\r
+ int downloadflag = 0;\r
+ traffic_detected = 0;\r
 \r
  textfile(Pipe,str) *line,*lines=NULL;\r
  string(str,STRLEN);\r
@@ -36,7 +39,7 @@ void get_traffic_statistics(const char *whichiptables, int ipv6)
 \r
  for_each(line,lines)\r
  {\r
-  int col, accept = 0, proxyflag = 0, valid = 1, setchainname = 0, commonflag = 0; \r
+  int col, accept = 0, /*proxyflag = 0, */valid = 1, setchainname = 0, commonflag = 0; \r
   unsigned long long traffic = 0;\r
   unsigned long pkts = 0;\r
   char *ipaddr = NULL,*ptr;\r
@@ -98,14 +101,17 @@ void get_traffic_statistics(const char *whichiptables, int ipv6)
            }\r
            else if(!ipv6)\r
            {\r
-            if(downloadflag)\r
+/*          if(downloadflag)\r
             { \r
              if(strstr(proxy_ip,ptr))\r
              {\r
               proxyflag = 1;\r
              }\r
-            }\r
-            else\r
+\r
+            } \r
+            else \r
+            {  */\r
+            if(!downloadflag)\r
             {\r
              ipaddr = ptr;\r
             }\r
@@ -131,12 +137,14 @@ void get_traffic_statistics(const char *whichiptables, int ipv6)
    {\r
     printf("(IPv4) ");\r
    }\r
-   \r
+/*   \r
    if(proxyflag)\r
    {\r
     printf("(proxy) ");\r
    }\r
-   else if(!downloadflag)\r
+   else\r
+*/   \r
+   if(!downloadflag)\r
    {\r
     printf("(up) ");\r
    }\r
@@ -145,6 +153,7 @@ void get_traffic_statistics(const char *whichiptables, int ipv6)
     printf("(down) ");\r
    }\r
    \r
+   traffic_detected = 1;\r
    printf("%s %Lu MB (%ld pkts)\n", ipaddr, traffic, pkts);\r
 \r
    if_exists(ip, ips, eqi(ip->addr,ipaddr)); \r
@@ -165,30 +174,33 @@ void get_traffic_statistics(const char *whichiptables, int ipv6)
    \r
    if(downloadflag)\r
    {\r
+/*\r
     if(proxyflag)\r
     {\r
      ip->proxy = traffic;\r
     }\r
     else\r
-    {\r
-     ip->traffic += traffic;\r
-    }\r
-    ip->direct = ip->traffic-ip->upload-ip->proxy;\r
-    ip->pktsdown = pkts;\r
+    {*/\r
+    ip->traffic += traffic;\r
+    ip->traffic_down += traffic;\r
+/*    } */\r
+    ip->direct += traffic; /*-ip->proxy;*/\r
+    ip->pktsdown += pkts;\r
    }\r
    else\r
    {\r
-    ip->upload = traffic;\r
-    ip->pktsup = pkts;\r
+    ip->upload += traffic;\r
+    ip->traffic_up += traffic;\r
+    ip->pktsup += pkts;\r
     if(include_upload)\r
     {\r
      ip->traffic += traffic;\r
     }\r
     else \r
     {\r
-     if(traffic > ip->traffic)\r
+     if(ip->upload > ip->traffic)\r
      {\r
-      ip->traffic = traffic;     \r
+      ip->traffic = ip->upload;\r
      }\r
     }\r
    }\r
This page took 0.113098 seconds and 4 git commands to generate.