diff options
author | gVisor bot <gvisor-bot@google.com> | 2020-09-14 21:40:29 +0000 |
---|---|---|
committer | gVisor bot <gvisor-bot@google.com> | 2020-09-14 21:40:29 +0000 |
commit | c8276a2759bd25703fcf2ee370d113783677f039 (patch) | |
tree | 7f7c9bcdc705ecc28fc3aae41b45b15ebf66f81e /pkg/tcpip | |
parent | e3f79dba6beb6b83b5db7e8bba9b59cdb4aa0890 (diff) | |
parent | 05d2ebee5e4ebc31cd71f6064ca433a58692be76 (diff) |
Merge release-20200907.0-41-g05d2ebee5 (automated)
Diffstat (limited to 'pkg/tcpip')
-rw-r--r-- | pkg/tcpip/link/tun/tun_endpoint_refs.go | 2 | ||||
-rw-r--r-- | pkg/tcpip/transport/tcp/rcv.go | 7 |
2 files changed, 8 insertions, 1 deletions
diff --git a/pkg/tcpip/link/tun/tun_endpoint_refs.go b/pkg/tcpip/link/tun/tun_endpoint_refs.go index 895a577ce..e0595429c 100644 --- a/pkg/tcpip/link/tun/tun_endpoint_refs.go +++ b/pkg/tcpip/link/tun/tun_endpoint_refs.go @@ -1,10 +1,10 @@ package tun import ( + "fmt" "runtime" "sync/atomic" - "fmt" "gvisor.dev/gvisor/pkg/log" refs_vfs1 "gvisor.dev/gvisor/pkg/refs" ) diff --git a/pkg/tcpip/transport/tcp/rcv.go b/pkg/tcpip/transport/tcp/rcv.go index bc920a03b..cfd43b5e3 100644 --- a/pkg/tcpip/transport/tcp/rcv.go +++ b/pkg/tcpip/transport/tcp/rcv.go @@ -436,6 +436,13 @@ func (r *receiver) handleTimeWaitSegment(s *segment) (resetTimeWait bool, newSyn // Just silently drop any RST packets in TIME_WAIT. We do not support // TIME_WAIT assasination as a result we confirm w/ fix 1 as described // in https://tools.ietf.org/html/rfc1337#section-3. + // + // This behavior overrides RFC793 page 70 where we transition to CLOSED + // on receiving RST, which is also default Linux behavior. + // On Linux the RST can be ignored by setting sysctl net.ipv4.tcp_rfc1337. + // + // As we do not yet support PAWS, we are being conservative in ignoring + // RSTs by default. if s.flagIsSet(header.TCPFlagRst) { return false, false } |