mac80211: mesh: handle failed alloc for rmc cache
authorBob Copeland <me@bobcopeland.com>
Sat, 19 Mar 2016 02:11:28 +0000 (22:11 -0400)
committerJohannes Berg <johannes.berg@intel.com>
Tue, 5 Apr 2016 19:34:50 +0000 (21:34 +0200)
commit0aa7fabbd5d9da1f8a8fdc3e2837c532bcfa5664
treebb69412b2a94fe667a655be8ef40f974cb5fab9a
parent749329594b5e0fb612b2de642a692323ddf661dd
mac80211: mesh: handle failed alloc for rmc cache

In the unlikely case that mesh_rmc_init() fails with -ENOMEM,
the rmc pointer will be left as NULL but the interface is still
operational because ieee80211_mesh_init_sdata() is not allowed
to fail.

If this happens, we would blindly dereference rmc when checking
whether a multicast frame is in the cache.  Instead just drop the
frames in the forwarding path.

Signed-off-by: Bob Copeland <me@bobcopeland.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/mesh.c