FreeBSD Bugzilla – Attachment 94635 Details for
Bug 132832
[netinet] [patch] tcp_output() might generate invalid TSO frames when len > TCP_MAXWIN - hdrlen - optlen
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
file.diff
file.diff (text/plain), 980 bytes, created by
Renaud Lienhart
on 2009-03-20 01:50:01 UTC
(
hide
)
Description:
file.diff
Filename:
MIME Type:
Creator:
Renaud Lienhart
Created:
2009-03-20 01:50:01 UTC
Size:
980 bytes
patch
obsolete
>Index: netinet/tcp_output.c >=================================================================== >--- netinet/tcp_output.c (revision 190117) >+++ netinet/tcp_output.c (working copy) >@@ -140,7 +140,7 @@ > int idle, sendalot; > int sack_rxmit, sack_bytes_rxmt; > struct sackhole *p; >- int tso = 0; >+ int tso; > struct tcpopt to; > #if 0 > int maxburst = TCP_MAXBURST; >@@ -198,6 +198,7 @@ > SEQ_LT(tp->snd_nxt, tp->snd_max)) > tcp_sack_adjust(tp); > sendalot = 0; >+ tso = 0; > off = tp->snd_nxt - tp->snd_una; > sendwin = min(tp->snd_wnd, tp->snd_cwnd); > sendwin = min(sendwin, tp->snd_bwnd); >@@ -477,7 +478,6 @@ > } else { > len = tp->t_maxseg; > sendalot = 1; >- tso = 0; > } > } > if (sack_rxmit) { >@@ -996,6 +996,8 @@ > * XXX: Fixme: This is currently not the case for IPv6. > */ > if (tso) { >+ KASSERT(len > tp->t_maxopd - optlen, >+ ("%s: len <= tso_segsz", __func__)); > m->m_pkthdr.csum_flags = CSUM_TSO; > m->m_pkthdr.tso_segsz = tp->t_maxopd - optlen; > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 132832
: 94635