From c5c6da86e3c44759cef645369969cf10834450b4 Mon Sep 17 00:00:00 2001 From: cperciva Date: Tue, 13 Jul 2010 02:45:17 +0000 Subject: [PATCH] Correctly copy the M_RDONLY flag when duplicating a reference to an mbuf external buffer. Approved by: so (cperciva) Approved by: re (kensmith) Security: FreeBSD-SA-10:07.mbuf git-svn-id: svn://svn.freebsd.org/base/releng/8.1@209964 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f --- UPDATING | 4 ++++ sys/kern/uipc_mbuf.c | 1 + 2 files changed, 5 insertions(+) diff --git a/UPDATING b/UPDATING index c673ac45..4911a6a3 100644 --- a/UPDATING +++ b/UPDATING @@ -15,6 +15,10 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 8.x IS SLOW ON IA64 OR SUN4V: debugging tools present in HEAD were left in place because sun4v support still needs work to become production ready. +20100713: FreeBSD-SA-10:07.mbuf + Correctly copy the M_RDONLY flag when duplicating a reference + to an mbuf external buffer. + 20100502: The config(8) command has been updated to maintain compatibility with config files from 8.0-RELEASE. You will need a new version diff --git a/sys/kern/uipc_mbuf.c b/sys/kern/uipc_mbuf.c index 85e0e395..71ee398c 100644 --- a/sys/kern/uipc_mbuf.c +++ b/sys/kern/uipc_mbuf.c @@ -302,6 +302,7 @@ mb_dupcl(struct mbuf *n, struct mbuf *m) n->m_ext.ref_cnt = m->m_ext.ref_cnt; n->m_ext.ext_type = m->m_ext.ext_type; n->m_flags |= M_EXT; + n->m_flags |= m->m_flags & M_RDONLY; } /* -- 2.42.0