diff options
author | gVisor bot <gvisor-bot@google.com> | 2020-10-22 05:15:02 +0000 |
---|---|---|
committer | gVisor bot <gvisor-bot@google.com> | 2020-10-22 05:15:02 +0000 |
commit | 4aeb88453ff28369e76eefcd4957ad23bd216559 (patch) | |
tree | 078844d25f69fafd9c3cba00939c473aa053eb6f /pkg/tcpip/network/ipv4/icmp.go | |
parent | 5e18bb6c3270315dda1ccbd2c3530f05c353120f (diff) | |
parent | 58a3c2d44f9596c22ef6b226cb6f2fa61617ba88 (diff) |
Merge release-20201019.0-29-g58a3c2d44 (automated)
Diffstat (limited to 'pkg/tcpip/network/ipv4/icmp.go')
-rw-r--r-- | pkg/tcpip/network/ipv4/icmp.go | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/pkg/tcpip/network/ipv4/icmp.go b/pkg/tcpip/network/ipv4/icmp.go index 3407755ed..ac66403fa 100644 --- a/pkg/tcpip/network/ipv4/icmp.go +++ b/pkg/tcpip/network/ipv4/icmp.go @@ -182,8 +182,11 @@ func (e *endpoint) handleICMP(r *stack.Route, pkt *stack.PacketBuffer) { e.handleControl(stack.ControlPortUnreachable, 0, pkt) case header.ICMPv4FragmentationNeeded: - mtu := uint32(h.MTU()) - e.handleControl(stack.ControlPacketTooBig, calculateMTU(mtu), pkt) + networkMTU, err := calculateNetworkMTU(uint32(h.MTU()), header.IPv4MinimumSize) + if err != nil { + networkMTU = 0 + } + e.handleControl(stack.ControlPacketTooBig, networkMTU, pkt) } case header.ICMPv4SrcQuench: |