#define IP_SET_PROTO_UNDEF
 #include "ip_set_hash_gen.h"
 
-/* Zero valued element is not supported */
-static const unsigned char invalid_ether[ETH_ALEN] = { 0 };
-
 static int
 hash_mac4_kadt(struct ip_set *set, const struct sk_buff *skb,
               const struct xt_action_param *par,
                return -EINVAL;
 
        ether_addr_copy(e.ether, eth_hdr(skb)->h_source);
-       if (memcmp(e.ether, invalid_ether, ETH_ALEN) == 0)
+       if (is_zero_ether_addr(e.ether))
                return -EINVAL;
        return adtfn(set, &e, &ext, &opt->ext, opt->cmdflags);
 }
        if (ret)
                return ret;
        ether_addr_copy(e.ether, nla_data(tb[IPSET_ATTR_ETHER]));
-       if (memcmp(e.ether, invalid_ether, ETH_ALEN) == 0)
+       if (is_zero_ether_addr(e.ether))
                return -IPSET_ERR_HASH_ELEM;
 
        return adtfn(set, &e, &ext, &ext, flags);