From: Sowmini Varadhan <[email protected]> Date: Thu, 5 Jan 2017 11:06:22 -0800
> Packets from any/all interfaces may be queued up on the PF_PACKET socket > before it is bound to the loopback interface by psock_tpacket, and > when these are passed up by the kernel, they could interfere > with the Rx tests. > > Avoid interference from spurious packet by blocking Rx until the > socket filter has been set up, and the packet has been bound to the > desired (lo) interface. The effective sequence is > socket(PF_PACKET, SOCK_RAW, 0); > set up ring > Invoke SO_ATTACH_FILTER > bind to sll_protocol set to ETH_P_ALL, sll_ifindex for lo > After this sequence, the only packets that will be passed up are > those received on loopback that pass the attached filter. > > Signed-off-by: Sowmini Varadhan <[email protected]> Applied, thanks.
