The TCP driver should discard(ignore) the incoming TCP segment when there's no TCB found to handle it, because that TCP segment may be subjected to be received by other running Managed Network instance with it's own network stack to handle it. Force sending reset segment in this case would just discrupt any TCP connection except the one established by EFI TCP protocol, which is not make sense imho.
Thanks. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Chang <[email protected]> --- NetworkPkg/TcpDxe/TcpInput.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/NetworkPkg/TcpDxe/TcpInput.c b/NetworkPkg/TcpDxe/TcpInput.c index 745ee4c..7aa6f7e 100644 --- a/NetworkPkg/TcpDxe/TcpInput.c +++ b/NetworkPkg/TcpDxe/TcpInput.c @@ -794,10 +794,10 @@ TcpInput ( ); if ((Tcb == NULL) || (Tcb->State == TCP_CLOSED)) { - DEBUG ((EFI_D_INFO, "TcpInput: send reset because no TCB found\n")); + DEBUG ((EFI_D_INFO, "TcpInput: discard a segment because no TCB found\n")); Tcb = NULL; - goto SEND_RESET; + goto DISCARD; } Seg = TcpFormatNetbuf (Tcb, Nbuf); -- 2.6.6 _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

