Commit 6861304 ("[tcp] Handle out-of-order received packets") introduced a regression in which ts_recent would not be updated until the first packet is received in the ESTABLISHED state, i.e. the timestamp from the SYN+ACK packet would be ignored. This causes the connection to be dropped by strictly-conforming TCP peers, such as FreeBSD. Fix by delaying the timestamp window check until after processing the received SYN flag. Reported-by: winders@sonnet.com Signed-off-by: Michael Brown <mcb30@ipxe.org>tags/v1.20.1
|
|
||
1060 |
|
1060 |
|
1061 |
|
1061 |
|
1062 |
|
1062 |
|
|
1063 |
|
|
1063 |
|
1064 |
|
1064 |
|
1065 |
|
1065 |
|
1066 |
|
|
|
||
1099 |
|
1100 |
|
1100 |
|
1101 |
|
1101 |
|
1102 |
|
1102 |
|
|
|
|
1103 |
|
|
1103 |
|
1104 |
|
1104 |
|
1105 |
|
1105 |
|
1106 |
|
|
|
||
1125 |
|
1126 |
|
1126 |
|
1127 |
|
1127 |
|
1128 |
|
1128 |
|
|
|
1129 |
|
|
|
1130 |
|
|
|
1131 |
|
|
|
1132 |
|
1129 |
|
1133 |
|
1130 |
|
1134 |
|
1131 |
|
|
|
||
1155 |
|
1152 |
|
1156 |
|
1153 |
|
1157 |
|
1154 |
|
|
1155 |
|
|
|
1156 |
|
|
|
1157 |
|
|
|
1158 |
|
|
|
1159 |
|
|
|
1160 |
|
|
1158 |
|
1161 |
|
1159 |
|
1162 |
|
1160 |
|
1163 |
|