bugtracking mode, performance improvement by earlier caching of inode2pid data
This commit is contained in:
16
nethogs.cpp
16
nethogs.cpp
@@ -31,6 +31,7 @@ extern Process * unknownudp;
|
||||
|
||||
unsigned refreshdelay = 1;
|
||||
bool tracemode = false;
|
||||
bool bughuntmode = false;
|
||||
bool needrefresh = true;
|
||||
//packet_type packettype = packet_ethernet;
|
||||
//dp_link_type linktype = dp_link_ethernet;
|
||||
@@ -89,7 +90,7 @@ int process_tcp (u_char * userdata, const dp_header * header, const u_char * m_p
|
||||
|
||||
curtime = header->ts;
|
||||
|
||||
/* TODO get info from userdata, then call getPacket */
|
||||
/* get info from userdata, then call getPacket */
|
||||
Packet * packet;
|
||||
switch (args->sa_family)
|
||||
{
|
||||
@@ -101,9 +102,6 @@ int process_tcp (u_char * userdata, const dp_header * header, const u_char * m_p
|
||||
break;
|
||||
}
|
||||
|
||||
//if (DEBUG)
|
||||
// std::cout << "Got packet from " << packet->gethashstring() << std::endl;
|
||||
|
||||
Connection * connection = findConnection(packet);
|
||||
|
||||
if (connection != NULL)
|
||||
@@ -229,12 +227,13 @@ static void versiondisplay(void)
|
||||
|
||||
static void help(void)
|
||||
{
|
||||
//std::cerr << "usage: nethogs [-V] [-d seconds] [-t] [-p] [-f (eth|ppp))] [device [device [device ...]]]\n";
|
||||
std::cerr << "usage: nethogs [-V] [-d seconds] [-t] [-p] [device [device [device ...]]]\n";
|
||||
//std::cerr << "usage: nethogs [-V] [-b] [-d seconds] [-t] [-p] [-f (eth|ppp))] [device [device [device ...]]]\n";
|
||||
std::cerr << "usage: nethogs [-V] [-b] [-d seconds] [-t] [-p] [device [device [device ...]]]\n";
|
||||
std::cerr << " -V : prints version.\n";
|
||||
std::cerr << " -d : delay for update refresh rate in seconds. default is 1.\n";
|
||||
std::cerr << " -t : tracemode.\n";
|
||||
//std::cerr << " -f : format of packets on interface, default is eth.\n";
|
||||
std::cerr << " -b : bughunt mode - implies tracemode.\n";
|
||||
std::cerr << " -p : sniff in promiscious mode (not recommended).\n";
|
||||
std::cerr << " device : device(s) to monitor. default is eth0\n";
|
||||
std::cerr << std::endl;
|
||||
@@ -284,6 +283,9 @@ int main (int argc, char** argv)
|
||||
exit(0);
|
||||
case 'h': help();
|
||||
exit(0);
|
||||
case 'b': bughuntmode = true;
|
||||
tracemode = true;
|
||||
break;
|
||||
case 't': tracemode = true;
|
||||
break;
|
||||
case 'p': promisc = 1;
|
||||
@@ -324,7 +326,7 @@ int main (int argc, char** argv)
|
||||
}
|
||||
|
||||
if (NEEDROOT && (getuid() != 0))
|
||||
forceExit("You need to be root to run NetHogs !");
|
||||
forceExit("You need to be root to run NetHogs!");
|
||||
|
||||
char errbuf[PCAP_ERRBUF_SIZE];
|
||||
|
||||
|
||||
Reference in New Issue
Block a user