Changeset View
Changeset View
Standalone View
Standalone View
head/sys/net/if_ethersubr.c
Show First 20 Lines • Show All 910 Lines • ▼ Show 20 Lines | #endif | ||||
ifa = ifp->if_addr; | ifa = ifp->if_addr; | ||||
KASSERT(ifa != NULL, ("%s: no lladdr!\n", __func__)); | KASSERT(ifa != NULL, ("%s: no lladdr!\n", __func__)); | ||||
sdl = (struct sockaddr_dl *)ifa->ifa_addr; | sdl = (struct sockaddr_dl *)ifa->ifa_addr; | ||||
sdl->sdl_type = IFT_ETHER; | sdl->sdl_type = IFT_ETHER; | ||||
sdl->sdl_alen = ifp->if_addrlen; | sdl->sdl_alen = ifp->if_addrlen; | ||||
bcopy(lla, LLADDR(sdl), ifp->if_addrlen); | bcopy(lla, LLADDR(sdl), ifp->if_addrlen); | ||||
if (ifp->if_hw_addr != NULL) | |||||
bcopy(lla, ifp->if_hw_addr, ifp->if_addrlen); | bcopy(lla, ifp->if_hw_addr, ifp->if_addrlen); | ||||
bpfattach(ifp, DLT_EN10MB, ETHER_HDR_LEN); | bpfattach(ifp, DLT_EN10MB, ETHER_HDR_LEN); | ||||
if (ng_ether_attach_p != NULL) | if (ng_ether_attach_p != NULL) | ||||
(*ng_ether_attach_p)(ifp); | (*ng_ether_attach_p)(ifp); | ||||
/* Announce Ethernet MAC address if non-zero. */ | /* Announce Ethernet MAC address if non-zero. */ | ||||
for (i = 0; i < ifp->if_addrlen; i++) | for (i = 0; i < ifp->if_addrlen; i++) | ||||
if (lla[i] != 0) | if (lla[i] != 0) | ||||
▲ Show 20 Lines • Show All 318 Lines • Show Last 20 Lines |