I have a situation where I am using pcap_sendpacket()
to put packets on the wire at the LLC layer at the same time as I am receiving packets using pcap_dispatch()
with an associated callback function. The sending and receiving is occuring in different threads of execution.
I have observed when the incoming packet rate is particularly high, I am not seeing my outgoing packets appear on the wire (using wireshark). However, I am also not seeing pcap_sendpacket()
failing (returning -1). Is it possible that the connection is not full duplex, i.e. if the bandwidth of the network connection is full then the outgoing packets could be blocking indefinitely somehow?