Re: how to set multicast MAC ligitemately?

From: Stephen Hemminger
Date: Fri Sep 26 2003 - 14:04:29 EST


On Fri, 26 Sep 2003 21:53:26 +0300
"Alexey V. Yurchenko" <ayurchen@xxxxxxxxxxxxxxxxxxxxx> wrote:

>
> Hi, everybody
>
> In view of include/linux/etherdevice.h:
>
> ...
> /**
> * is_valid_ether_addr - Determine if the given Ethernet address is valid
> * @addr: Pointer to a six-byte array containing the Ethernet address
> *
> * Check that the Ethernet address (MAC) is not 00:00:00:00:00:00, is not
> * a multicast address, and is not FF:FF:FF:FF:FF:FF. The multicast
> * and FF:FF:... tests are combined into the single test "!(addr[0]&1)".
> *
> * Return true if the address is valid.
> */
> static inline int is_valid_ether_addr( u8 *addr )
> {
> const char zaddr[6] = {0,};
>
> return !(addr[0]&1) && memcmp( addr, zaddr, 6);
> }
> ...
>
> how it is possible to set up multicast MAC address legitemately if NIC driver resorts to use of this function. Why are multicast addresses forbidden and who is the right person to ask?
>
> (I really do need to set a multicast MAC address, and if multicast MAC addresses exist, why are they forbidden?)
>
> Regards,
> Alex

Not interface should have a multicast MAC address. A multicast address
should only exist as a destination address, never a source.
-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html