Search Linux Wireless

Re: [RFC v2 1/3] nl80211: Add nl80211_notify_iface

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Arend,

>>> This function emits NL80211_CMD_NEW_INTERFACE or
>>> NL80211_CMD_DEL_INTERFACE events.  This is meant to be used by the core
>>> to notify userspace applications such as wpa_supplicant when a netdev
>>> related to a wireless device has been added or removed.
>>> 
>>> Signed-off-by: Denis Kenzior <denkenz@xxxxxxxxx>
>>> ---
>>> net/wireless/nl80211.c | 28 ++++++++++++++++++++++++++++
>>> net/wireless/nl80211.h |  3 +++
>>> 2 files changed, 31 insertions(+)
>>> 
>>> diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c
>>> index f39fd4d..da03e17 100644
>>> --- a/net/wireless/nl80211.c
>>> +++ b/net/wireless/nl80211.c
>>> @@ -11855,6 +11855,34 @@ void nl80211_notify_wiphy(struct cfg80211_registered_device *rdev,
>>> 				NL80211_MCGRP_CONFIG, GFP_KERNEL);
>>> }
>>> 
>>> +void nl80211_notify_iface(struct cfg80211_registered_device *rdev,
>>> +				struct wireless_dev *wdev,
>>> +				enum nl80211_commands cmd)
>>> +{
>>> +	struct sk_buff *msg;
>>> +	bool removal;
>>> +
>>> +	WARN_ON(cmd != NL80211_CMD_NEW_INTERFACE &&
>>> +		cmd != NL80211_CMD_DEL_INTERFACE);
>> 
>> I would assume that BUILD_BUG_ON does a way job better here.
> 
> Why? I don't see why the condition would be compile-time constant as it
> can be called from outside nl80211.c.

what has that to do with it. No matter who calls it, the point is to ensure that it is called for new/del interface. And if a caller uses it for something else, then it should fail and it should fail loudly.

Regards

Marcel

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux