Further restrict the MAC addresses that we use for UUID generation

to those that are universally administered. While it is possible to
add locally administered MAC addresses, it's unclear whether those
are (expected) to be more unique than random multicast MAC addresses
or not.

With many U-Boot configurations assigning fixed and non-official MAC
addresses to ethernet ports and without setting the 'X' flag, this
change may have very little value in the embedded (development)
space. Uniqueness of the universally administered addresses is non-
existent on the (H/W) bench and questionable under the (S/W) desk.
In short: this change is aimed at production environments...
This commit is contained in:
Marcel Moolenaar 2013-07-24 18:13:43 +00:00
parent 4234b97720
commit ba7f4cdc97
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=253617

View File

@ -203,10 +203,10 @@ uuid_ether_add(const uint8_t *addr)
int i, sum;
/*
* Validate input. No multicast addresses and no addresses that
* are all zeroes.
* Validate input. No multicast (flag 0x1), no locally administered
* (flag 0x2) and no 'all-zeroes' addresses.
*/
if (addr[0] & 0x01)
if (addr[0] & 0x03)
return (EINVAL);
sum = 0;
for (i = 0; i < UUID_NODE_LEN; i++)