Message ID | 1330099282-4588-10-git-send-email-danny.kukawka@bisect.de |
---|---|
State | Changes Requested, archived |
Delegated to: | David Miller |
Headers | show |
diff --git a/drivers/net/wan/lapbether.c b/drivers/net/wan/lapbether.c index 7beeb9b..b6d4cbc 100644 --- a/drivers/net/wan/lapbether.c +++ b/drivers/net/wan/lapbether.c @@ -45,6 +45,7 @@ #include <linux/module.h> #include <linux/lapb.h> #include <linux/init.h> +#include <linux/etherdevice.h> #include <net/x25device.h> @@ -254,6 +255,10 @@ static void lapbeth_disconnected(struct net_device *dev, int reason) static int lapbeth_set_mac_address(struct net_device *dev, void *addr) { struct sockaddr *sa = addr; + + if (!is_valid_ether_addr(sa->sa_data)) + return -EADDRNOTAVAIL; + memcpy(dev->dev_addr, sa->sa_data, dev->addr_len); return 0; }
Check if given address is valid in .ndo_set_mac_address/ lapbeth_set_mac_address(), if invalid return -EADDRNOTAVAIL as eth_mac_addr() already does if is_valid_ether_addr() fails. Signed-off-by: Danny Kukawka <danny.kukawka@bisect.de> --- drivers/net/wan/lapbether.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-)