Jumpstart | Winpcap

And you need a jumpstart.

Here’s a short, punchy piece on Jumpstart WinPcap — part tutorial teaser, part conceptual intro. jumpstart winpcap

pcap_t *handle = pcap_open_live("\\Device\\NPF_{GUID}", 65536, 1, 1000, errbuf); pcap_compile(handle, &fp, "tcp", 0, PCAP_NETMASK_UNKNOWN); pcap_setfilter(handle, &fp); pcap_loop(handle, 10, packet_handler, NULL); Your packet_handler will see raw Ethernet, IP, and TCP headers. And you need a jumpstart

#include <pcap.h> int main() { pcap_if_t *alldevs; char errbuf[PCAP_ERRBUF_SIZE]; Your packet_handler will see raw Ethernet

if (pcap_findalldevs(&alldevs, errbuf) == -1) { fprintf(stderr, "Error: %s\n", errbuf); return 1; } for (pcap_if_t *d = alldevs; d; d = d->next) printf("%s\n", d->description ? d->description : d->name); pcap_freealldevs(alldevs); return 0; }