Move iflladdr_event eventhandler invocation to if_setlladdr.

Suggested by:	glebius
This commit is contained in:
Alexander V. Chernikov 2015-11-14 13:34:03 +00:00
parent f894f17244
commit 8ad43f2d0a
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=290819
5 changed files with 4 additions and 17 deletions

View File

@ -2512,8 +2512,6 @@ ifhwioctl(u_long cmd, struct ifnet *ifp, caddr_t data, struct thread *td)
return (error);
error = if_setlladdr(ifp,
ifr->ifr_addr.sa_data, ifr->ifr_addr.sa_len);
if (error == 0)
EVENTHANDLER_INVOKE(iflladdr_event, ifp);
break;
case SIOCAIFGROUP:
@ -3377,6 +3375,7 @@ if_setlladdr(struct ifnet *ifp, const u_char *lladdr, int len)
(*ifp->if_ioctl)(ifp, SIOCSIFFLAGS, (caddr_t)&ifr);
}
}
EVENTHANDLER_INVOKE(iflladdr_event, ifp);
return (0);
}

View File

@ -690,7 +690,6 @@ lagg_port_setlladdr(void *arg, int pending)
struct lagg_softc *sc = (struct lagg_softc *)arg;
struct lagg_llq *llq, *head;
struct ifnet *ifp;
int error;
/* Grab a local reference of the queue and remove it from the softc */
LAGG_WLOCK(sc);
@ -706,7 +705,6 @@ lagg_port_setlladdr(void *arg, int pending)
ifp = llq->llq_ifp;
CURVNET_SET(ifp->if_vnet);
error = 0;
/*
* Set the link layer address on the laggport interface.
@ -714,11 +712,8 @@ lagg_port_setlladdr(void *arg, int pending)
* may result in arp transmission / lltable updates.
*/
if (llq->llq_type == LAGG_LLQTYPE_PHYS)
error = if_setlladdr(ifp, llq->llq_lladdr,
if_setlladdr(ifp, llq->llq_lladdr,
ETHER_ADDR_LEN);
if (error)
printf("%s: setlladdr failed on %s\n", __func__,
ifp->if_xname);
else
EVENTHANDLER_INVOKE(iflladdr_event, ifp);
CURVNET_RESTORE();

View File

@ -523,7 +523,7 @@ vlan_iflladdr(void *arg __unused, struct ifnet *ifp)
#ifndef VLAN_ARRAY
struct ifvlan *next;
#endif
int error, i;
int i;
/*
* Check if it's a trunk interface first of all
@ -544,11 +544,8 @@ vlan_iflladdr(void *arg __unused, struct ifnet *ifp)
LIST_FOREACH_SAFE(ifv, &ifp->if_vlantrunk->hash[i], ifv_list, next) {
#endif /* VLAN_ARRAY */
VLAN_UNLOCK();
error = if_setlladdr(ifv->ifv_ifp, IF_LLADDR(ifp),
if_setlladdr(ifv->ifv_ifp, IF_LLADDR(ifp),
ifp->if_addrlen);
if (error == 0)
EVENTHANDLER_INVOKE(iflladdr_event,
ifv->ifv_ifp);
VLAN_LOCK();
}
VLAN_UNLOCK();

View File

@ -489,8 +489,6 @@ ng_eiface_rcvmsg(node_p node, item_p item, hook_p lasthook)
}
error = if_setlladdr(priv->ifp,
(u_char *)msg->data, ETHER_ADDR_LEN);
if (error == 0)
EVENTHANDLER_INVOKE(iflladdr_event, priv->ifp);
break;
}

View File

@ -534,8 +534,6 @@ ng_ether_rcvmsg(node_p node, item_p item, hook_p lasthook)
}
error = if_setlladdr(priv->ifp,
(u_char *)msg->data, ETHER_ADDR_LEN);
if (error == 0)
EVENTHANDLER_INVOKE(iflladdr_event, priv->ifp);
break;
}
case NGM_ETHER_GET_PROMISC: