MCPcopy Create free account
hub / github.com/F-Stack/f-stack / arp_ifinit

Function arp_ifinit

freebsd/netinet/if_ether.c:1432–1455  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1430}
1431
1432void
1433arp_ifinit(struct ifnet *ifp, struct ifaddr *ifa)
1434{
1435 struct epoch_tracker et;
1436 const struct sockaddr_in *dst_in;
1437 const struct sockaddr *dst;
1438
1439 if (ifa->ifa_carp != NULL)
1440 return;
1441
1442 dst = ifa->ifa_addr;
1443 dst_in = (const struct sockaddr_in *)dst;
1444
1445 if (ntohl(dst_in->sin_addr.s_addr) == INADDR_ANY)
1446 return;
1447 NET_EPOCH_ENTER(et);
1448 arp_announce_ifaddr(ifp, dst_in->sin_addr, IF_LLADDR(ifp));
1449 NET_EPOCH_EXIT(et);
1450 if (garp_rexmit_count > 0) {
1451 garp_timer_start(ifa);
1452 }
1453
1454 arp_add_ifa_lle(ifp, dst);
1455}
1456
1457void
1458arp_announce_ifaddr(struct ifnet *ifp, struct in_addr addr, u_char *enaddr)

Callers 8

ieee80211_ioctlFunction · 0.85
arp_handle_ifllchangeFunction · 0.85
octm_ioctlFunction · 0.85
octe_ioctlFunction · 0.85
iflib_if_ioctlFunction · 0.85
ether_ioctlFunction · 0.85
firewire_ioctlFunction · 0.85
vlan_ioctlFunction · 0.85

Calls 3

arp_announce_ifaddrFunction · 0.85
garp_timer_startFunction · 0.85
arp_add_ifa_lleFunction · 0.85

Tested by

no test coverage detected