diff --git a/httpdocs/img/logo.svg b/httpdocs/img/logo.svg new file mode 100644 index 0000000000..bab0a2124e --- /dev/null +++ b/httpdocs/img/logo.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/include/PacketDumperTuntap.h b/include/PacketDumperTuntap.h index 0de3e8e9ea..4c4bff0f63 100644 --- a/include/PacketDumperTuntap.h +++ b/include/PacketDumperTuntap.h @@ -24,15 +24,6 @@ #include "ntop_includes.h" -#define DUMP_IFNAMSIZ 16 - -#define DUMP_MAC_SIZE 6 -typedef uint8_t dump_mac_t[DUMP_MAC_SIZE]; - -#define MACSTR_SIZE 32 -typedef char macstr_t[MACSTR_SIZE]; - -#define DUMP_MTU 16384 class PacketDumperTuntap { private: @@ -44,7 +35,6 @@ class PacketDumperTuntap { bool init_ok; u_int32_t num_dumped_packets; - void readMac(char *ifname, dump_mac_t mac_addr); int getIPAddress(struct ifreq *ifr, char *if_name); int getNetmask(struct ifreq *ifr, char *if_name); int getHwAddress(struct ifreq *ifr, char *if_name); diff --git a/include/Utils.h b/include/Utils.h index 286a15ca9b..2398f11fe5 100755 --- a/include/Utils.h +++ b/include/Utils.h @@ -70,6 +70,7 @@ class Utils { static ticks getticks(); static char* getURL(char *url, char *buf, u_int buf_len); static bool discardOldFilesExceeding(const char *path, const unsigned long max_size); + static void readMac(char *ifname, dump_mac_t mac_addr); }; #endif /* _UTILS_H_ */ diff --git a/include/ntop_defines.h b/include/ntop_defines.h index 0ed8b74a6b..fdc4cfb8b0 100644 --- a/include/ntop_defines.h +++ b/include/ntop_defines.h @@ -400,4 +400,9 @@ #define NTOPNG_EMBEDDED_EDITION 1 #endif +#define DUMP_MAC_SIZE 6 +#define DUMP_IFNAMSIZ 16 +#define MACSTR_SIZE 32 +#define DUMP_MTU 16384 + #endif /* _NTOP_DEFINES_H_ */ diff --git a/include/ntop_includes.h b/include/ntop_includes.h index 52abd813fe..83219719eb 100644 --- a/include/ntop_includes.h +++ b/include/ntop_includes.h @@ -44,7 +44,6 @@ #include #if defined(__OpenBSD__) -#include #include #include #include diff --git a/include/ntop_typedefs.h b/include/ntop_typedefs.h index 1f51830008..8920abb065 100644 --- a/include/ntop_typedefs.h +++ b/include/ntop_typedefs.h @@ -119,4 +119,7 @@ struct zmq_msg_hdr { u_int32_t size; }; +typedef uint8_t dump_mac_t[DUMP_MAC_SIZE]; +typedef char macstr_t[MACSTR_SIZE]; + #endif /* _NTOP_TYPEDEFS_H_ */ diff --git a/src/PacketDumperTuntap.cpp b/src/PacketDumperTuntap.cpp index bf2fe87b4b..244982705b 100644 --- a/src/PacketDumperTuntap.cpp +++ b/src/PacketDumperTuntap.cpp @@ -51,42 +51,6 @@ PacketDumperTuntap::~PacketDumperTuntap() { /* ********************************************* */ -char* macaddr_str (const char *mac, char *buf) { - sprintf(buf, "%02X:%02X:%02X:%02X:%02X:%02X", - mac[0] & 0xFF, mac[1] & 0xFF, mac[2] & 0xFF, - mac[3] & 0xFF, mac[4] & 0xFF, mac[5] & 0xFF); - return(buf); -} - -#ifdef linux -void PacketDumperTuntap::readMac(char *ifname, dump_mac_t mac_addr) { - int _sock, res; - struct ifreq ifr; - macstr_t mac_addr_buf; - - memset (&ifr, 0, sizeof(struct ifreq)); - - /* Dummy socket, just to make ioctls with */ - _sock = socket(PF_INET, SOCK_DGRAM, 0); - strncpy(ifr.ifr_name, ifname, IFNAMSIZ-1); - res = ioctl(_sock, SIOCGIFHWADDR, &ifr); - if(res < 0) { - ntop->getTrace()->traceEvent(TRACE_ERROR, "Cannot get hw addr"); - } else - memcpy(mac_addr, ifr.ifr_ifru.ifru_hwaddr.sa_data, 6); - - ntop->getTrace()->traceEvent(TRACE_NORMAL, "Interface %s has MAC %s", - ifname, - macaddr_str((char *)mac_addr, mac_addr_buf)); - close(_sock); -} -#else -void PacketDumperTuntap::readMac(char *ifname, dump_mac_t mac_addr) { -} -#endif - -/* ********************************************* */ - #ifdef linux #define LINUX_SYSTEMCMD_SIZE 128 @@ -123,7 +87,7 @@ int PacketDumperTuntap::openTap(char *dev, /* user-definable interface name, eg. rc = system(buf); ntop->getTrace()->traceEvent(TRACE_INFO, "Bringing up: %s [%d]", buf,rc); - readMac(this->dev_name, this->mac_addr); + Utils::readMac(this->dev_name, this->mac_addr); free(tuntap_device); return(this->fd); } diff --git a/src/Utils.cpp b/src/Utils.cpp index da6552bd79..04ad5fea96 100755 --- a/src/Utils.cpp +++ b/src/Utils.cpp @@ -1132,3 +1132,42 @@ bool Utils::discardOldFilesExceeding(const char *path, const unsigned long max_s } /* **************************************** */ + +#ifdef linux + +static char* macaddr_str (const char *mac, char *buf) { + sprintf(buf, "%02X:%02X:%02X:%02X:%02X:%02X", + mac[0] & 0xFF, mac[1] & 0xFF, mac[2] & 0xFF, + mac[3] & 0xFF, mac[4] & 0xFF, mac[5] & 0xFF); + return(buf); +} + +/* **************************************** */ + +void Utils::readMac(char *ifname, dump_mac_t mac_addr) { + int _sock, res; + struct ifreq ifr; + macstr_t mac_addr_buf; + + memset (&ifr, 0, sizeof(struct ifreq)); + + /* Dummy socket, just to make ioctls with */ + _sock = socket(PF_INET, SOCK_DGRAM, 0); + strncpy(ifr.ifr_name, ifname, IFNAMSIZ-1); + res = ioctl(_sock, SIOCGIFHWADDR, &ifr); + if(res < 0) { + ntop->getTrace()->traceEvent(TRACE_ERROR, "Cannot get hw addr"); + } else + memcpy(mac_addr, ifr.ifr_ifru.ifru_hwaddr.sa_data, 6); + + ntop->getTrace()->traceEvent(TRACE_INFO, "Interface %s has MAC %s", + ifname, + macaddr_str((char *)mac_addr, mac_addr_buf)); + close(_sock); +} +#else +void Utils::readMac(char *ifname, dump_mac_t mac_addr) { + memset(mac_addr, 0, 6); +} +#endif +