nl802154: cleanup invalid argument handling
authorAlexander Aring <alex.aring@gmail.com>
Sun, 17 May 2015 19:44:37 +0000 (21:44 +0200)
committerMarcel Holtmann <marcel@holtmann.org>
Tue, 19 May 2015 09:44:41 +0000 (11:44 +0200)
This patch cleanups the -EINVAL cases by combining them in one
condition.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
net/ieee802154/nl802154.c

index f3c12f6..c01f4bb 100644 (file)
@@ -668,10 +668,8 @@ static int nl802154_set_pan_id(struct sk_buff *skb, struct genl_info *info)
                return -EBUSY;
 
        /* don't change address fields on monitor */
-       if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR)
-               return -EINVAL;
-
-       if (!info->attrs[NL802154_ATTR_PAN_ID])
+       if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR ||
+           !info->attrs[NL802154_ATTR_PAN_ID])
                return -EINVAL;
 
        pan_id = nla_get_le16(info->attrs[NL802154_ATTR_PAN_ID]);
@@ -691,10 +689,8 @@ static int nl802154_set_short_addr(struct sk_buff *skb, struct genl_info *info)
                return -EBUSY;
 
        /* don't change address fields on monitor */
-       if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR)
-               return -EINVAL;
-
-       if (!info->attrs[NL802154_ATTR_SHORT_ADDR])
+       if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR ||
+           !info->attrs[NL802154_ATTR_SHORT_ADDR])
                return -EINVAL;
 
        short_addr = nla_get_le16(info->attrs[NL802154_ATTR_SHORT_ADDR]);