]> git.sur5r.net Git - u-boot/blobdiff - net/net.c
Merge branch 'master' of git://git.denx.de/u-boot-mpc83xx
[u-boot] / net / net.c
index cda731986b721c27b917f6fb31d451e4b5fe8785..33fcd90cd429ad066da1ca5ed50efef510b85663 100644 (file)
--- a/net/net.c
+++ b/net/net.c
@@ -1201,7 +1201,8 @@ static IP_t *__NetDefragment(IP_t *ip, int *lenp)
                h = payload + h->next_hole;
        }
 
-       if (offset8 + (len / 8) <= h - payload) {
+       /* last fragment may be 1..7 bytes, the "+7" forces acceptance */
+       if (offset8 + ((len + 7) / 8) <= h - payload) {
                /* no overlap with holes (dup fragment?) */
                return NULL;
        }