Hi Johannes,

On Tue, 2019-10-01 at 11:14 +0200, Johannes Berg wrote:
> Hi,
> 
> > > > Because userspace needs to know if this is supported?
> > > > IFF_LIVE_ADDR_CHANGE is a private flag... AFAIK userspace has
> > > > no
> > > > way of
> > > > obtaining this.
> > > 
> > > Oh, annoying.
> > > 
> > > But that doesn't really mean that nl80211 is an appropriate place
> > > to
> > > advertise it, IMHO?
> > 
> > The intention of the flag was not soley related to
> > CMD_CONNECT/CMD_AUTHENTICATE. Its an indication that the
> > hardware/driver supports a live address change. If you don't want
> > it
> > here could you suggest a better location for it?
> 
> I guess RTNL would be the right place? This can hardly be specific to
> wireless, the flag comes from elsewhere.

I do see where your coming from, and maybe the answer is both RTNL and
NL80211?

In this context a NL80211 flag would mean something different than only
putting a flag into RTNL.

The NL80211 flag means this device supports changing the MAC while
running and not offchannel/scanning. Which is what -EBUSY would mean in
this context. Managing the offchannel/scanning work is only possible
with a NL80211 application.

An RTNL only application has no idea about scanning/offchannel work, so
it has no way of knowing what -EBUSY means in the wireless device
context, or a way to prevent this from happening (stopping scanning or
offchannel before changing the MAC).

Now, another example would be an RTNL application that only cares about
non-wireless devices (like ethernet), and in this case it could benefit
from some type of RTNL specific flag and not care about a NL80211 flag.

Since there is no such application that cares about this RTNL flag
(since it doesn't exist) I would say that adding NL80211 flag is the
way to go. If someone wants to add an RTNL flag I would say that is
appropriate too. But in terms of this feature, a NL80211 flag is really
what fits best since the changes are wireless specific.

Thanks,
James

> 
> johannes
> 

Reply via email to