pcap_fileno.3pcap man page
pcap_fileno — get the file descriptor for a live capture
#include <pcap/pcap.h> int pcap_fileno(pcap_t *p);
If p refers to a network device that was opened for a live capture using a combination of pcap_create() and pcap_activate(), or using pcap_open_live(), pcap_fileno() returns the file descriptor from which captured packets are read.
If p refers to a “savefile” that was opened using functions such as pcap_open_offline() or pcap_fopen_offline(), a “dead” pcap_t opened using pcap_open_dead(), or a pcap_t that was created with pcap_create() but that has not yet been activated with pcap_activate(), it returns -1.
pcap(3PCAP), pcap_create(3PCAP), pcap_activate(3PCAP), pcap_open_live(3PCAP), pcap_open_offline(3PCAP), pcap_fopen_offline(3PCAP), pcap_open_dead(3PCAP)