summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Sperling <stsp@cvs.openbsd.org>2011-02-21 20:00:13 +0000
committerStefan Sperling <stsp@cvs.openbsd.org>2011-02-21 20:00:13 +0000
commitd5c216467069a6184ddf3fa136d7167bec3e0a55 (patch)
treecdf66edb309400bbc854a532dd43a3907b1eedbd
parent087ba2806ea4eb99ed066970c9cff84e5be09f30 (diff)
When bridging multicast frames in hostap mode, make a deep copy of the mbuf
instead of a shallow copy to avoid problems if the mbuf is modified later (e.g. if the frame is encrypted). From FreeBSD. http://marc.info/?l=freebsd-current&m=114168135819304&w=2 http://svn.freebsd.org/viewvc/base?view=revision&revision=156367 ok damien; committing with miod's permission (src is soft-locked)
-rw-r--r--sys/net80211/ieee80211_input.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/net80211/ieee80211_input.c b/sys/net80211/ieee80211_input.c
index cb9b6302db4..8721ba587cd 100644
--- a/sys/net80211/ieee80211_input.c
+++ b/sys/net80211/ieee80211_input.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ieee80211_input.c,v 1.116 2010/06/07 16:51:22 damien Exp $ */
+/* $OpenBSD: ieee80211_input.c,v 1.117 2011/02/21 20:00:12 stsp Exp $ */
/*-
* Copyright (c) 2001 Atsushi Onoe
@@ -789,7 +789,7 @@ ieee80211_deliver_data(struct ieee80211com *ic, struct mbuf *m,
int error, len;
if (ETHER_IS_MULTICAST(eh->ether_dhost)) {
- m1 = m_copym(m, 0, M_COPYALL, M_DONTWAIT);
+ m1 = m_copym2(m, 0, M_COPYALL, M_DONTWAIT);
if (m1 == NULL)
ifp->if_oerrors++;
else