diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c index b2f34c1b806..f8b07072ad0 100644 --- a/sys/netinet/tcp_subr.c +++ b/sys/netinet/tcp_subr.c @@ -1170,10 +1170,11 @@ tcp_ctlinput(cmd, sa, vip) /* * If no alternative MTU was * proposed, try the next smaller - * one. + * one. ip->ip_len has already + * been swapped in icmp_input(). */ if (!mtu) - mtu = ip_next_mtu(ntohs(ip->ip_len), + mtu = ip_next_mtu(ip->ip_len, 1); if (mtu < max(296, (tcp_minmss) + sizeof(struct tcpiphdr))) diff --git a/sys/netinet/tcp_timewait.c b/sys/netinet/tcp_timewait.c index b2f34c1b806..f8b07072ad0 100644 --- a/sys/netinet/tcp_timewait.c +++ b/sys/netinet/tcp_timewait.c @@ -1170,10 +1170,11 @@ tcp_ctlinput(cmd, sa, vip) /* * If no alternative MTU was * proposed, try the next smaller - * one. + * one. ip->ip_len has already + * been swapped in icmp_input(). */ if (!mtu) - mtu = ip_next_mtu(ntohs(ip->ip_len), + mtu = ip_next_mtu(ip->ip_len, 1); if (mtu < max(296, (tcp_minmss) + sizeof(struct tcpiphdr)))