Two fixes:

* drop mesh frames appearing to be from ourselves
  * check another netlink attribute for existence
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEH1e1rEeCd0AIMq6MB8qZga/fl8QFAlpOQFgACgkQB8qZga/f
 l8Te+A//Q/urGK1b/oS8oLuvf1sba4kkuQ4rDe46Tz/pgeG0HMygF5Okf60UtFLI
 4y30OLGtgQ5LkqtB1mj+CoKkksvAb7lIeNTMajhZymn+L2urj64VYAGLGzWuVXkz
 /ZgOIC/odFkjyPFtHPHk3arlevtJW62JGB/SHfFbSzEr7WmQTo9NNBZi7rwa2S51
 ydYpbH5gtwTYposQrE4qVSHNpPPj6DY5QqNNFF8ORt7DYqXUHLj1DH9wQG9ruHaC
 84LCF3+eja9SPoSWoP/PxTx6JnfIdreCcV+MjQtbUBnCud8Q3UIve7+6csQsAvqG
 NDNr+m46ru3/HAyJ1GmAUx954BcLso4YZkQmvRi3CfpsdcFTwSmv/HAlS45I1B2y
 tPFT+PQeIUmSomuT4IyE3btakFhN5dCHZUHFsUaUByKa5XptaMSyZJXF5Arq+irH
 3FelIYfe/xb9NMh1s3v0ugYAeiZCHnZ12xdGk5UWfO97AbuA4udi1IrYU+Az9T9o
 9opvnCJFFznauD4RRQsCrW5IaV1ZfexES6QWw6H1mn0fUZYDBK5zkCpzmq6R1JjV
 LnDsIm1xzWT/Ad7tYRkWjUYmT2lXaZK2aHIoazw31BnWQ+/IsICb9DJLRFwua8hm
 RuKY9jCL7wJpZCVdZ9IMDpIOeqMHr7JQZLS+DdRsaBb4imUy370=
 =R4ew
 -----END PGP SIGNATURE-----

Merge tag 'mac80211-for-davem-2018-01-04' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211

Johannes Berg says:

====================
Two fixes:
 * drop mesh frames appearing to be from ourselves
 * check another netlink attribute for existence
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
David S. Miller 2018-01-04 10:47:34 -05:00
commit af8530cb47
2 changed files with 4 additions and 1 deletions

View File

@ -3632,6 +3632,8 @@ static bool ieee80211_accept_frame(struct ieee80211_rx_data *rx)
} }
return true; return true;
case NL80211_IFTYPE_MESH_POINT: case NL80211_IFTYPE_MESH_POINT:
if (ether_addr_equal(sdata->vif.addr, hdr->addr2))
return false;
if (multicast) if (multicast)
return true; return true;
return ether_addr_equal(sdata->vif.addr, hdr->addr1); return ether_addr_equal(sdata->vif.addr, hdr->addr1);

View File

@ -11361,7 +11361,8 @@ static int nl80211_nan_add_func(struct sk_buff *skb,
break; break;
case NL80211_NAN_FUNC_FOLLOW_UP: case NL80211_NAN_FUNC_FOLLOW_UP:
if (!tb[NL80211_NAN_FUNC_FOLLOW_UP_ID] || if (!tb[NL80211_NAN_FUNC_FOLLOW_UP_ID] ||
!tb[NL80211_NAN_FUNC_FOLLOW_UP_REQ_ID]) { !tb[NL80211_NAN_FUNC_FOLLOW_UP_REQ_ID] ||
!tb[NL80211_NAN_FUNC_FOLLOW_UP_DEST]) {
err = -EINVAL; err = -EINVAL;
goto out; goto out;
} }