static void set_multicast_list(struct net_device *dev) { struct dev_mc_list *pmc; if ((dev->flags & IFF_PROMISC) == 0) { set_multicast_start(dev); for (pmc = dev->mc_list; pmc != NULL; pmc = pmc->next) set_multicast_one(dev, pmc->dmi_addr); set_multicast_finish(dev); } else set_promiscuous_mode(dev); }
static void set_multicast_list(struct net_device *dev) { struct netdev_hw_addr *ha; if ((dev->flags & IFF_PROMISC) == 0) { set_multicast_start(dev); netdev_for_each_mc_addr(ha, dev) set_multicast_one(dev, ha->addr); set_multicast_finish(dev); } else set_promiscuous_mode(dev); }