On Wed, 2018-01-31 at 16:01 -0600, Denis Kenzior wrote:
> Hi Johannes,
> 
> > > + * @NL80211_CMD_CONTROL_PORT_FRAME: Control Port (e.g. PAE) frame TX 
> > > request
> > > + *       and RX notification.  This command is used both as a request to 
> > > transmit
> > > + *       a control port frame and as a notification that a control port 
> > > frame
> > > + *       has been received. %NL80211_ATTR_FRAME is used to specify the
> > > + *       frame contents.  The frame is the raw EAPoL data, without 
> > > ethernet or
> > > + *       802.11 headers.
> > 
> > Never mind, so it's without Ethernet header. Is that really desirable
> > though? I mean, it could be that the Ethernet address even matters (not
> > sure) and it'd probably be easier to handle in (existing) userspace
> > where Ethernet frames are expected now?
> 
> I also include the from address inside the NL80211 message as ATTR_MAC. 
> The protocol as well.  I wrote the docs first and never updated the 
> little details afterwards.  Will fix.

Good point, I could've seen that.

Still not sure it makes a big difference, but I guess it doesn't really
matter that much (though in a sense it'd be easier to take Ethernet
header apart than putting it back together - but even that can be done
in place in the message buffer)

> > > + nla_put_failure:
> > > + genlmsg_cancel(msg, hdr);
> > 
> > nit: there's no point in cancelling if you free it (immediately).
> 
> Just following some existing code, but will fix.

Yeah I just never got around to cleaning up that antipattern ... I'll
make an spatch.

johannes

Reply via email to