diff options
| author | Andre Oppermann <andre@FreeBSD.org> | 2004-01-08 11:17:11 +0000 |
|---|---|---|
| committer | Andre Oppermann <andre@FreeBSD.org> | 2004-01-08 11:17:11 +0000 |
| commit | bf87c82ebb8b786dbc33eca932efefc47ffd55dd (patch) | |
| tree | f34b6055d8c4aec2a13b86b6e14165a697b65cea /sys/netinet/tcp_timewait.c | |
| parent | e0f630ea7af0e72ce4907c5eebff7c745a9b8950 (diff) | |
Notes
Diffstat (limited to 'sys/netinet/tcp_timewait.c')
| -rw-r--r-- | sys/netinet/tcp_timewait.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/netinet/tcp_timewait.c b/sys/netinet/tcp_timewait.c index df941d534606..60709fe51647 100644 --- a/sys/netinet/tcp_timewait.c +++ b/sys/netinet/tcp_timewait.c @@ -459,6 +459,8 @@ tcp_respond(tp, ipgen, th, m, ack, seq, flags) tlen += sizeof (struct tcpiphdr); ip->ip_len = tlen; ip->ip_ttl = ip_defttl; + if (path_mtu_discovery) + ip->ip_off |= IP_DF; } m->m_len = tlen; m->m_pkthdr.len = tlen; @@ -1733,6 +1735,8 @@ tcp_twrespond(struct tcptw *tw, struct socket *so, struct mbuf *msrc, m->m_pkthdr.csum_flags = CSUM_TCP; m->m_pkthdr.csum_data = offsetof(struct tcphdr, th_sum); ip->ip_len = m->m_pkthdr.len; + if (path_mtu_discovery) + ip->ip_off |= IP_DF; error = ip_output(m, inp->inp_options, NULL, (tw->tw_so_options & SO_DONTROUTE), NULL, inp); } |
