From aa00bc830f52a9c457eea965ba264010b6e6016a Mon Sep 17 00:00:00 2001 From: Ruslan Ermilov Date: Tue, 21 Feb 2006 13:04:39 +0000 Subject: [PATCH] Clear csum_flags after reading data from socket buffer. Otherwise, if ksocket is connected to an interface-type node somewhere later in the graph (e.g., ng_eiface or ng_iface), the csum_data may be applied to a wrong packet (if we encapsulate Ethernet or IP). MFC after: 3 days --- sys/netgraph/ng_ksocket.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/netgraph/ng_ksocket.c b/sys/netgraph/ng_ksocket.c index e2f466cdf3b..6f5f492d325 100644 --- a/sys/netgraph/ng_ksocket.c +++ b/sys/netgraph/ng_ksocket.c @@ -1120,6 +1120,7 @@ ng_ksocket_incoming2(node_p node, hook_p hook, void *arg1, int waitflag) * Also, do not trust that soreceive() will clear m_nextpkt * for us (e.g. kern/84952, kern/82413). */ + m->m_pkthdr.csum_flags = 0; for (n = m, m->m_pkthdr.len = 0; n != NULL; n = n->m_next) { m->m_pkthdr.len += n->m_len; n->m_nextpkt = NULL;