]> git.stg.codes - stg.git/commitdiff
Better logging for ipq_cap.
authorMaxim Mamontov <faust.madf@gmail.com>
Sun, 11 Nov 2012 19:08:48 +0000 (21:08 +0200)
committerMaxim Mamontov <faust.madf@gmail.com>
Sun, 11 Nov 2012 19:08:48 +0000 (21:08 +0200)
projects/stargazer/plugins/capture/ipq_linux/ipq_cap.cpp
projects/stargazer/plugins/capture/ipq_linux/libipq.c
projects/stargazer/plugins/capture/ipq_linux/libipq.h

index 2dcded079a70316cbbdaa546e4f3ec7453128f1b..9818378af382020faf221d4ef4eaaee32b6d3ffe 100644 (file)
@@ -23,6 +23,7 @@
 
 #include <csignal>
 #include <cerrno>
 
 #include <csignal>
 #include <cerrno>
+#include <cstring>
 
 #include "stg/raw_ip_packet.h"
 #include "stg/traffcounter.h"
 
 #include "stg/raw_ip_packet.h"
 #include "stg/traffcounter.h"
@@ -160,7 +161,7 @@ ipq_h = ipq_create_handle(0, PF_INET);
 if (ipq_h == NULL)
     {
     ipq_destroy_handle(ipq_h);
 if (ipq_h == NULL)
     {
     ipq_destroy_handle(ipq_h);
-    logger("Cannot create IPQ handle.");
+    logger("Cannot create IPQ handle. Error: '%s', '%s'", ipq_errstr(), strerror(errno));
     errorStr = "Cannot create ipq handle!";
     return -1;
     }
     errorStr = "Cannot create ipq handle!";
     return -1;
     }
index 798faebbdc3d53c343ae76813eaa063f175b714a..a7ed5745d6c8de07adef83c9a43e739127295b3f 100644 (file)
@@ -61,7 +61,7 @@ enum
     };
 #define IPQ_MAXERR IPQ_ERR_PROTOCOL
 
     };
 #define IPQ_MAXERR IPQ_ERR_PROTOCOL
 
-/*struct ipq_errmap_t
+struct ipq_errmap_t
     {
     int errcode;
     char *message;
     {
     int errcode;
     char *message;
@@ -83,7 +83,7 @@ enum
     { IPQ_ERR_RECVBUF, "Receive buffer size invalid"},
     { IPQ_ERR_TIMEOUT, "Timeout"},
     { IPQ_ERR_PROTOCOL, "Invalid protocol specified"}
     { IPQ_ERR_RECVBUF, "Receive buffer size invalid"},
     { IPQ_ERR_TIMEOUT, "Timeout"},
     { IPQ_ERR_PROTOCOL, "Invalid protocol specified"}
-};*/
+};
 
 static int ipq_errno = IPQ_ERR_NONE;
 
 
 static int ipq_errno = IPQ_ERR_NONE;
 
@@ -205,12 +205,12 @@ static ssize_t ipq_netlink_recvfrom(const struct ipq_handle *h,
     return status;
 }
 //-----------------------------------------------------------------------------
     return status;
 }
 //-----------------------------------------------------------------------------
-/*static char *ipq_strerror(int errcode)
+static char *ipq_strerror(int errcode)
 {
     if (errcode < 0 || errcode > IPQ_MAXERR)
         errcode = IPQ_ERR_IMPL;
     return ipq_errmap[errcode].message;
 {
     if (errcode < 0 || errcode > IPQ_MAXERR)
         errcode = IPQ_ERR_IMPL;
     return ipq_errmap[errcode].message;
-}*/
+}
 
 /****************************************************************************
  *
 
 /****************************************************************************
  *
@@ -386,10 +386,10 @@ int ipq_ctl(const struct ipq_handle __attribute__((unused)) * handle, int __attr
     return 1;
 }
 //-----------------------------------------------------------------------------
     return 1;
 }
 //-----------------------------------------------------------------------------
-/*char *ipq_errstr(void)
+char *ipq_errstr(void)
 {
     return ipq_strerror(ipq_errno);
 {
     return ipq_strerror(ipq_errno);
-}*/
+}
 //-----------------------------------------------------------------------------
 /*void ipq_perror(const char *s)
 {
 //-----------------------------------------------------------------------------
 /*void ipq_perror(const char *s)
 {
index 5f06057ac791a7cfa808152a885583eb29ee88e0..c55a4e52f1446de598802fedb7de884aecf7ffdc 100644 (file)
 #include "ip_queue_64.h"
 typedef u_int64_t ipq_id_t;
 #else
 #include "ip_queue_64.h"
 typedef u_int64_t ipq_id_t;
 #else
-#ifdef HAS_IP_QUEUE_H
 #include <linux/netfilter_ipv4/ip_queue.h>
 #include <linux/netfilter_ipv4/ip_queue.h>
-#else
-#include "ip_queue.h"
 #endif
 typedef unsigned long ipq_id_t;
 #endif
 #endif
 typedef unsigned long ipq_id_t;
 #endif
@@ -86,8 +83,8 @@ int ipq_set_verdict(const struct ipq_handle *h,
 
 int ipq_ctl(const struct ipq_handle *h, int request, ...);
 
 
 int ipq_ctl(const struct ipq_handle *h, int request, ...);
 
-/*char *ipq_errstr(void);
-void ipq_perror(const char *s);*/
+char *ipq_errstr(void);
+//void ipq_perror(const char *s);
 
 #endif /* _LIBIPQ_H */
 
 
 #endif /* _LIBIPQ_H */