#define ETHER_ADDR_LEN 6 using namespace std; // typedef struct int main(int argc, char *argv[]) { string file = "...\\eth-7.pcap"; char errbuff[PCAP_ERRBUF_SIZE]; pcap_t *pcap = pcap_open_offline(file.c_str(), errbuff); struct pcap_pkthdr *header; const u_char *data; u_int packetCount = 0; u_char ether_dhost[ETHER_ADDR_LEN]; u_char ether_shost[ETHER_ADDR_LEN]; while (int returnValue = pcap_next_ex(pcap, &header, &data) >= 0) { printf("Packet # %i\n", ++packetCount); printf("Packet size: %d bytes\n", header->len); for (u_int i = 0; (i < header->caplen); i++) { if (i <= 5) { // tu potrebujem postupne ukladat bajty do ether_dhost } if ((i % 16) == 0) { printf("\n"); } printf("%.2x ", data[i]); } printf("\n\n"); } }