mirror of
https://github.com/opnsense/src.git
synced 2026-06-09 08:43:19 -04:00
net: add ETHER_IS_IPV6_MULTICAST
This can be used to detect if an ethernet address is specifically an IPv6 multicast address, defined in accordance to RFC 2464. ETHER_IS_MULTICAST is still preferred in the general case. Reviewed by: ae Sponsored by: NetApp, Inc. Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D26611
This commit is contained in:
parent
4bfebc8d2c
commit
ced0f52457
1 changed files with 2 additions and 0 deletions
|
|
@ -71,6 +71,8 @@ struct ether_addr {
|
|||
} __packed;
|
||||
|
||||
#define ETHER_IS_MULTICAST(addr) (*(addr) & 0x01) /* is address mcast/bcast? */
|
||||
#define ETHER_IS_IPV6_MULTICAST(addr) \
|
||||
(((addr)[0] == 0x33) && ((addr)[1] == 0x33))
|
||||
#define ETHER_IS_BROADCAST(addr) \
|
||||
(((addr)[0] & (addr)[1] & (addr)[2] & \
|
||||
(addr)[3] & (addr)[4] & (addr)[5]) == 0xff)
|
||||
|
|
|
|||
Loading…
Reference in a new issue