ip4_reass: fixed bug #51596 (Insufficient overlap check)

This commit is contained in:
goldsimon 2017-07-28 10:11:45 +02:00
parent 3dedfa3d1f
commit 500598658d

View File

@ -392,6 +392,12 @@ ip_reass_chain_frag_into_datagram_and_validate(struct ip_reassdata *ipr, struct
#endif /* IP_REASS_CHECK_OVERLAP */
iprh_prev->next_pbuf = new_p;
} else {
#if IP_REASS_CHECK_OVERLAP
if (iprh->end > iprh_tmp->start) {
/* fragment overlaps with following, throw away */
goto freepbuf;
}
#endif /* IP_REASS_CHECK_OVERLAP */
/* fragment with the lowest offset */
ipr->p = new_p;
}