nl80211: report 4ADDR status with GET_INTERFACE
authorAntonio Quartulli <a@unstable.cc>
Thu, 14 Jun 2018 01:43:06 +0000 (09:43 +0800)
committerJohannes Berg <johannes@sipsolutions.net>
Fri, 15 Jun 2018 11:38:40 +0000 (13:38 +0200)
User space tools might be interested in knowing the current
status of the 4ADDR property of an interface (when supported).

Send the status along with the other attributes when replying
to a GET_INTERFACE netlink query.

Signed-off-by: Antonio Quartulli <a@unstable.cc>
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
net/wireless/nl80211.c

index d267725..7b21914 100644 (file)
@@ -2757,7 +2757,8 @@ static int nl80211_send_iface(struct sk_buff *msg, u32 portid, u32 seq, int flag
            nla_put(msg, NL80211_ATTR_MAC, ETH_ALEN, wdev_address(wdev)) ||
            nla_put_u32(msg, NL80211_ATTR_GENERATION,
                        rdev->devlist_generation ^
-                       (cfg80211_rdev_list_generation << 2)))
+                       (cfg80211_rdev_list_generation << 2)) ||
+           nla_put_u8(msg, NL80211_ATTR_4ADDR, wdev->use_4addr))
                goto nla_put_failure;
 
        if (rdev->ops->get_channel) {