Skip to content

Commit f56ed8b

Browse files
committed
tcp: Reject bytes outside the receive window
1 parent 8203207 commit f56ed8b

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/socket/tcp.rs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1677,7 +1677,11 @@ impl<'a> Socket<'a> {
16771677
}
16781678

16791679
let window_start = self.remote_seq_no + self.rx_buffer.len();
1680-
let window_end = self.remote_seq_no + self.rx_buffer.capacity();
1680+
let window_end = if let Some(last_ack) = self.remote_last_ack {
1681+
last_ack + ((self.remote_last_win as usize) << self.remote_win_shift)
1682+
} else {
1683+
window_start
1684+
};
16811685
let segment_start = repr.seq_number;
16821686
let segment_end = repr.seq_number + repr.payload.len();
16831687

0 commit comments

Comments
 (0)