BSD 4_3_Reno release
[unix-history] / usr / src / sys / kern / uipc_mbuf.c
index 5a1011a..ba17d3f 100644 (file)
@@ -1,9 +1,23 @@
 /*
 /*
+ * Copyright (c) 1982, 1986, 1988 Regents of the University of California.
  * All rights reserved.
  *
  * All rights reserved.
  *
- * %sccs.include.redist.c%
+ * Redistribution is only permitted until one year after the first shipment
+ * of 4.4BSD by the Regents.  Otherwise, redistribution and use in source and
+ * binary forms are permitted provided that: (1) source distributions retain
+ * this entire copyright notice and comment, and (2) distributions including
+ * binaries display the following acknowledgement:  This product includes
+ * software developed by the University of California, Berkeley and its
+ * contributors'' in the documentation or other materials provided with the
+ * distribution and in all advertising materials mentioning features or use
+ * of this software.  Neither the name of the University nor the names of
+ * its contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * THIS SOFTWARE IS PROVIDED AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  *
- *     @(#)uipc_mbuf.c 7.16 (Berkeley) %G%
+ *     @(#)uipc_mbuf.c 7.17 (Berkeley) 7/25/90
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -462,8 +476,10 @@ m_pullup(n, len)
                if (m == 0)
                        goto bad;
                m->m_len = 0;
                if (m == 0)
                        goto bad;
                m->m_len = 0;
-               if (n->m_flags & M_PKTHDR)
+               if (n->m_flags & M_PKTHDR) {
                        M_COPY_PKTHDR(m, n);
                        M_COPY_PKTHDR(m, n);
+                       n->m_flags &= ~M_PKTHDR;
+               }
        }
        space = &m->m_dat[MLEN] - (m->m_data + m->m_len);
        do {
        }
        space = &m->m_dat[MLEN] - (m->m_data + m->m_len);
        do {