diff options
author | Alexander Aring <aahringo@redhat.com> | 2021-04-04 20:30:43 -0400 |
---|---|---|
committer | Stefan Schmidt <stefan@datenfreihafen.org> | 2021-04-06 22:03:16 +0200 |
commit | 08470c5453339369bd3d590c4cbb0b5961cdcbb6 (patch) | |
tree | aaf9d16fa57f5980ab250ca36eb09660b463d5d9 /net/ieee802154 | |
parent | fb3c5cdf88cd504ef11d59e8d656f4bc896c6922 (diff) | |
download | linux-08470c5453339369bd3d590c4cbb0b5961cdcbb6.tar.gz linux-08470c5453339369bd3d590c4cbb0b5961cdcbb6.tar.bz2 linux-08470c5453339369bd3d590c4cbb0b5961cdcbb6.zip |
net: ieee802154: forbid monitor for add llsec key
This patch forbids to add llsec key for monitor interfaces which we
don't support yet. Otherwise we will access llsec mib which isn't
initialized for monitors.
Signed-off-by: Alexander Aring <aahringo@redhat.com>
Link: https://lore.kernel.org/r/20210405003054.256017-5-aahringo@redhat.com
Signed-off-by: Stefan Schmidt <stefan@datenfreihafen.org>
Diffstat (limited to 'net/ieee802154')
-rw-r--r-- | net/ieee802154/nl802154.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/ieee802154/nl802154.c b/net/ieee802154/nl802154.c index 7815f253c8a3..42a246b6f9cb 100644 --- a/net/ieee802154/nl802154.c +++ b/net/ieee802154/nl802154.c @@ -1552,6 +1552,9 @@ static int nl802154_add_llsec_key(struct sk_buff *skb, struct genl_info *info) struct ieee802154_llsec_key_id id = { }; u32 commands[NL802154_CMD_FRAME_NR_IDS / 32] = { }; + if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) + return -EOPNOTSUPP; + if (!info->attrs[NL802154_ATTR_SEC_KEY] || nla_parse_nested_deprecated(attrs, NL802154_KEY_ATTR_MAX, info->attrs[NL802154_ATTR_SEC_KEY], nl802154_key_policy, info->extack)) return -EINVAL; |