Author: np
Date: Sat Mar  3 00:22:32 2018
New Revision: 330302
URL: https://svnweb.freebsd.org/changeset/base/330302

Log:
  MFC r328314:
  
  Do not generate illegal mbuf chains during IP fragment reassembly.  Only
  the first mbuf of the reassembled datagram should have a pkthdr.

Modified:
  stable/11/sys/netinet/ip_reass.c
  stable/11/sys/netinet6/frag6.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/netinet/ip_reass.c
==============================================================================
--- stable/11/sys/netinet/ip_reass.c    Sat Mar  3 00:10:37 2018        
(r330301)
+++ stable/11/sys/netinet/ip_reass.c    Sat Mar  3 00:22:32 2018        
(r330302)
@@ -377,6 +377,7 @@ ip_reass(struct mbuf *m)
                q->m_nextpkt = NULL;
                m->m_pkthdr.csum_flags &= q->m_pkthdr.csum_flags;
                m->m_pkthdr.csum_data += q->m_pkthdr.csum_data;
+               m_demote_pkthdr(q);
                m_cat(m, q);
        }
        /*

Modified: stable/11/sys/netinet6/frag6.c
==============================================================================
--- stable/11/sys/netinet6/frag6.c      Sat Mar  3 00:10:37 2018        
(r330301)
+++ stable/11/sys/netinet6/frag6.c      Sat Mar  3 00:22:32 2018        
(r330302)
@@ -539,6 +539,7 @@ insert:
                while (t->m_next)
                        t = t->m_next;
                m_adj(IP6_REASS_MBUF(af6), af6->ip6af_offset);
+               m_demote_pkthdr(IP6_REASS_MBUF(af6));
                m_cat(t, IP6_REASS_MBUF(af6));
                free(af6, M_FTABLE);
                af6 = af6dwn;
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to