[PATCH V2 21/23] nl80211: verify P2P-GO/CLIENT address with all interface addresses

Jouni Malinen j
Tue Jul 2 09:47:35 PDT 2013


On Tue, Jul 02, 2013 at 03:46:28PM +0200, Arend van Spriel wrote:
> The address scheme that we used with the dummy netdev aka p2p0 was:
> p2p-dev-mac = non-p2p-mac with local administered bit set.
> p2p-ifc-mac = p2p-dev-mac with byte 3 (or 4) modified.

I know this is used, but I've just never understood why, i.e., it looks
like wasting an extra MAC address without any real benefit and with the
added drawback of increased likelihood of hitting duplicated addresses.

> >An earlier thread  seemed to already imply that some people may believe
> >that this new dedicated P2P_DEVICE is needed for some concurrent P2P
> >operations which is simply not the case; it just adds another option for
> >internal driver/firmware/hardware design which should not add or remove
> >any functionality and the only externally observable difference should
> >be in MAC addresses potentially being different (but even those could be
> >assigned using the same style between P2P_DEVICE and p2p-mgmt-netdev).
> 
> The last sentence is confusing to me. To me the P2P_DEVICE is a
> replacing solution to the p2p-mgmt-netdev, right?

It is a cleaner replacement for the _dedicated_ p2p-mgmt-netdev case,
but not for the case where Android uses p2p0 for both p2p-mgmt and group
operations (both of these two alternatives show up in deployed devices).
In other words, I see this more as a mechanism to allow that IMHO odd
three address design to be used in a way that is more acceptable for
upstream Linux. I'd assume there are existing firmware designs that only
support a case where P2P Device Address is not used for anything else
than P2P Device operations, so there is justification for supporting
this, but I hope this is not taken as an encouragement for such MAC
address assignment scheme for new designs.

-- 
Jouni Malinen                                            PGP id EFC895FA



More information about the Hostap mailing list