diff options
| author | Mike Frysinger <vapier@gentoo.org> | 2009-01-27 16:53:39 -0500 | 
|---|---|---|
| committer | Ben Warren <biggerbadderben@gmail.com> | 2009-01-28 23:59:27 -0800 | 
| commit | 75edebe3011c963a7cd84be0f4a987477f2aaf89 (patch) | |
| tree | 4be18e8688583de34f9d5b868c7d960678ea33f1 /include/net.h | |
| parent | 268859338c0188eab1d0d3b867b7dad3c5cc734a (diff) | |
| download | olio-uboot-2014.01-75edebe3011c963a7cd84be0f4a987477f2aaf89.tar.xz olio-uboot-2014.01-75edebe3011c963a7cd84be0f4a987477f2aaf89.zip | |
Move is_valid_ether_addr() to include/net.h
Import the is_valid_ether_addr() function from the Linux kernel.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Diffstat (limited to 'include/net.h')
| -rw-r--r-- | include/net.h | 16 | 
1 files changed, 16 insertions, 0 deletions
| diff --git a/include/net.h b/include/net.h index d2d394f0d..bbe0d4b5a 100644 --- a/include/net.h +++ b/include/net.h @@ -474,6 +474,22 @@ static inline int is_multicast_ether_addr(const u8 *addr)  	return (0x01 & addr[0]);  } +/** + * 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. + * + * Return true if the address is valid. + */ +static inline int is_valid_ether_addr(const u8 * addr) +{ +	/* FF:FF:FF:FF:FF:FF is a multicast address so we don't need to +	 * explicitly check for it here. */ +	return !is_multicast_ether_addr(addr) && !is_zero_ether_addr(addr); +} +  /* Convert an IP address to a string */  extern void	ip_to_string (IPaddr_t x, char *s); |