Fixed bugs #51606 and #51535: IPv4 reassembly could be finished although there are holes

This commit is contained in:
goldsimon
2017-08-02 21:11:53 +02:00
parent 2781d7abd7
commit 5ea7f507c3
6 changed files with 173 additions and 0 deletions

View File

@@ -391,6 +391,11 @@ ip_reass_chain_frag_into_datagram_and_validate(struct ip_reassdata *ipr, struct
}
#endif /* IP_REASS_CHECK_OVERLAP */
iprh_prev->next_pbuf = new_p;
if (iprh_prev->end != iprh->start) {
/* There is a fragment missing between the current
* and the previous fragment */
valid = 0;
}
} else {
#if IP_REASS_CHECK_OVERLAP
if (iprh->end > iprh_tmp->start) {