Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-9]: src/sys/arch/xen/xen Pull up the following revisions(s) (requ...



details:   https://anonhg.NetBSD.org/src/rev/2ca803c4a6f5
branches:  netbsd-9
changeset: 843968:2ca803c4a6f5
user:      sborrill <sborrill%NetBSD.org@localhost>
date:      Mon Mar 16 11:11:13 2020 +0000

description:
Pull up the following revisions(s) (requested by jdolecek in ticket #781):
        sys/arch/xen/xen/xennet_checksum.c:     revision 1.4

Make the packet length check less strict, allow the physical packet longer
than IP payload. This fixes problem where checksum was not recomputed for
short packets coming from Windows domU on same physical host as it seems
Windows does some padding.

diffstat:

 sys/arch/xen/xen/xennet_checksum.c |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (27 lines):

diff -r c6c98ace2b75 -r 2ca803c4a6f5 sys/arch/xen/xen/xennet_checksum.c
--- a/sys/arch/xen/xen/xennet_checksum.c        Fri Mar 13 08:34:25 2020 +0000
+++ b/sys/arch/xen/xen/xennet_checksum.c        Mon Mar 16 11:11:13 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: xennet_checksum.c,v 1.3 2007/11/22 16:17:10 bouyer Exp $       */
+/*     $NetBSD: xennet_checksum.c,v 1.3.110.1 2020/03/16 11:11:13 sborrill Exp $       */
 
 /*-
  * Copyright (c)2006 YAMAMOTO Takashi,
@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xennet_checksum.c,v 1.3 2007/11/22 16:17:10 bouyer Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xennet_checksum.c,v 1.3.110.1 2020/03/16 11:11:13 sborrill Exp $");
 
 #include <sys/types.h>
 #include <sys/param.h>
@@ -124,7 +124,7 @@
        nxt = iph->ip_p;
        iphlen = iph->ip_hl * 4;
        iplen = ntohs(iph->ip_len);
-       if (ehlen + iplen != m->m_pkthdr.len) {
+       if (ehlen + iplen > m->m_pkthdr.len) {
                return EINVAL;
        }
        if (nxt == IPPROTO_UDP) {



Home | Main Index | Thread Index | Old Index