From 13897491cf6e6e0e91057676fd87677fb658a01a Mon Sep 17 00:00:00 2001 From: rrs Date: Mon, 28 Jan 2008 10:25:43 +0000 Subject: - Fixes a comparison wrap issue with sack gap ack blocks that span the 32 bit roll over mark. --- sys/netinet/sctp_indata.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sys/netinet/sctp_indata.c') diff --git a/sys/netinet/sctp_indata.c b/sys/netinet/sctp_indata.c index a7f43da..1c9c385 100644 --- a/sys/netinet/sctp_indata.c +++ b/sys/netinet/sctp_indata.c @@ -2874,7 +2874,7 @@ sctp_handle_segments(struct mbuf *m, int *offset, struct sctp_tcb *stcb, struct } last_frag_high = frag_end + last_tsn; } - for (j = frag_strt + last_tsn; j <= frag_end + last_tsn; j++) { + for (j = frag_strt + last_tsn; (compare_with_wrap((frag_end + last_tsn), j, MAX_TSN)); j++) { while (tp1) { if (tp1->rec.data.doing_fast_retransmit) num_frs++; -- cgit v1.1