In the course of investigating bug 68, I discovered a
number of pretty
serious bugs in how we handle various cases in tcp_tap_handler() and
tcp_data_from_tap(). This series fixes a number of them.
Note that while I'm pretty sure the bugs fixed here are real, I
haven't yet positively traced how they lead to the symptoms in bug 68
- I'm still waiting on the results from some special instrumentation
to track that down.
Link:
https://bugs.passt.top/show_bug.cgi?id=68
David Gibson (8):
tcp, tap: Correctly advance through packets in tcp_tap_handler()
udp, tap: Correctly advance through packets in udp_tap_handler()
tcp: Remove some redundant packet_get() operations
tcp: Never hash match closed connections
tcp: Return consumed packet count from tcp_data_from_tap()
tcp: Correctly handle RST followed rapidly by SYN
tcp: Consolidate paths where we initiate reset on tap interface
tcp: Correct handling of FIN,ACK followed by SYN
Series applied, thanks.
--
Stefano