summaryrefslogtreecommitdiff
path: root/net/ieee802154/nl802154.c
diff options
context:
space:
mode:
authorAlexander Aring <aahringo@redhat.com>2021-04-05 03:30:53 +0300
committerStefan Schmidt <stefan@datenfreihafen.org>2021-04-06 23:32:52 +0300
commit9dde130937e95b72adfae64ab21d6e7e707e2dac (patch)
tree1e7272c69231eb3bd1d70bc1fb42ee611a810bbb /net/ieee802154/nl802154.c
parent9ec87e322428d4734ac647d1a8e507434086993d (diff)
downloadlinux-9dde130937e95b72adfae64ab21d6e7e707e2dac.tar.xz
net: ieee802154: forbid monitor for del llsec seclevel
This patch forbids to del llsec seclevel for monitor interfaces which we don't support yet. Otherwise we will access llsec mib which isn't initialized for monitors. Reported-by: syzbot+fbf4fc11a819824e027b@syzkaller.appspotmail.com Signed-off-by: Alexander Aring <aahringo@redhat.com> Link: https://lore.kernel.org/r/20210405003054.256017-15-aahringo@redhat.com Signed-off-by: Stefan Schmidt <stefan@datenfreihafen.org>
Diffstat (limited to 'net/ieee802154/nl802154.c')
-rw-r--r--net/ieee802154/nl802154.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/ieee802154/nl802154.c b/net/ieee802154/nl802154.c
index 28427ce52a9b..effc4c1a4780 100644
--- a/net/ieee802154/nl802154.c
+++ b/net/ieee802154/nl802154.c
@@ -2133,6 +2133,9 @@ static int nl802154_del_llsec_seclevel(struct sk_buff *skb,
struct wpan_dev *wpan_dev = dev->ieee802154_ptr;
struct ieee802154_llsec_seclevel sl;
+ if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR)
+ return -EOPNOTSUPP;
+
if (!info->attrs[NL802154_ATTR_SEC_LEVEL] ||
llsec_parse_seclevel(info->attrs[NL802154_ATTR_SEC_LEVEL],
&sl) < 0)