File: decpcap_test.cpp

package info (click to toggle)
nethogs 0.6.0%2Bcvs20070620-2
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 184 kB
  • ctags: 300
  • sloc: cpp: 1,821; ansic: 267; makefile: 43
file content (28 lines) | stat: -rw-r--r-- 637 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>

extern "C" {
	#include "decpcap.h"
}

int process_tcp (u_char * userdata, const dp_header * header, const u_char * m_packet) {
	std::cout << "Callback for processing TCP packet called" << std::endl;
	return 0;
}

int main (int argc, char ** argv)
{
	if (argc < 2)
	{
		std::cout << "Please, enter a filename" << std::endl;
	}

	char* errbuf = new char[DP_ERRBUF_SIZE];

	dp_handle * newhandle = dp_open_offline(argv[1], errbuf); 
	dp_addcb (newhandle, dp_packet_tcp, process_tcp);
	int ret = dp_dispatch (newhandle, -1, NULL, 0);
	if (ret == -1)
	{
		std::cout << "Error dispatching: " << dp_geterr(newhandle);
	}
}