net: disallow to specify multicast MAC address

[Assigning a multicast MAC address to a NIC leads to confusing behavior.
Reject multicast MAC addresses so users are alerted to their error
straight away.

The "net/eth.h" in6_addr rename prevents a name collision with
<netinet/in.h> on Linux.
-- Stefan]

Signed-off-by: Dmitry V. Krivenok <krivenok.dmitry@gmail.com>
Reviewed-by: Amos Kong <kongjianjun@gmail.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
Dmitry Krivenok 2013-10-21 12:08:44 +04:00 committed by Stefan Hajnoczi
parent 964668b03d
commit d60b20cf2a
2 changed files with 9 additions and 3 deletions

View file

@ -84,7 +84,7 @@ typedef struct ip_pseudo_header {
} ip_pseudo_header;
/* IPv6 address */
struct in6_addr {
struct in6_address {
union {
uint8_t __u6_addr8[16];
} __in6_u;
@ -105,8 +105,8 @@ struct ip6_header {
uint8_t ip6_un3_ecn; /* 2 bits ECN, top 6 bits payload length */
} ip6_un3;
} ip6_ctlun;
struct in6_addr ip6_src; /* source address */
struct in6_addr ip6_dst; /* destination address */
struct in6_address ip6_src; /* source address */
struct in6_address ip6_dst; /* destination address */
};
struct ip6_ext_hdr {