diff --git a/target/linux/ar71xx/files/arch/mips/ath79/dev-eth.c b/target/linux/ar71xx/files/arch/mips/ath79/dev-eth.c index d2d0ee87f0..4487958bc7 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/dev-eth.c +++ b/target/linux/ar71xx/files/arch/mips/ath79/dev-eth.c @@ -992,7 +992,10 @@ void __init ath79_init_mac(unsigned char *dst, const unsigned char *src, { int t; - if (!is_valid_ether_addr(src)) { + if (!dst) + return; + + if (!src || !is_valid_ether_addr(src)) { memset(dst, '\0', ETH_ALEN); return; } @@ -1012,7 +1015,10 @@ void __init ath79_init_local_mac(unsigned char *dst, const unsigned char *src) { int i; - if (!is_valid_ether_addr(src)) { + if (!dst) + return; + + if (!src || !is_valid_ether_addr(src)) { memset(dst, '\0', ETH_ALEN); return; }