diff options
author | bdrewery <bdrewery@FreeBSD.org> | 2016-08-24 01:44:53 +0000 |
---|---|---|
committer | bdrewery <bdrewery@FreeBSD.org> | 2016-08-24 01:44:53 +0000 |
commit | 8a830000ef070b6a353365f3739ada854a2c5d8e (patch) | |
tree | 4f9bce1d2a0ac310d8f5fa6a8200b55ce235e4e6 | |
parent | 0a8d7f80744d48cbe9bad12240962d6c8fe50a17 (diff) | |
download | FreeBSD-src-8a830000ef070b6a353365f3739ada854a2c5d8e.zip FreeBSD-src-8a830000ef070b6a353365f3739ada854a2c5d8e.tar.gz |
MFC r304322:
[net80211] correctly lock the ifp before accessing the lladdr.
-rw-r--r-- | sys/net80211/ieee80211_ioctl.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/net80211/ieee80211_ioctl.c b/sys/net80211/ieee80211_ioctl.c index b65f23a..5d323c0 100644 --- a/sys/net80211/ieee80211_ioctl.c +++ b/sys/net80211/ieee80211_ioctl.c @@ -3394,10 +3394,12 @@ ieee80211_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) * Check if the MAC address was changed * via SIOCSIFLLADDR ioctl. */ + if_addr_rlock(ifp); if ((ifp->if_flags & IFF_UP) == 0 && !IEEE80211_ADDR_EQ(vap->iv_myaddr, IF_LLADDR(ifp))) IEEE80211_ADDR_COPY(vap->iv_myaddr, IF_LLADDR(ifp)); + if_addr_runlock(ifp); } break; case SIOCADDMULTI: |