Changeset View
Changeset View
Standalone View
Standalone View
sys/netinet6/nd6_rtr.c
Show First 20 Lines • Show All 2,008 Lines • ▼ Show 20 Lines | |||||
nd6_prefix_onlink_rtrequest(struct nd_prefix *pr, struct ifaddr *ifa) | nd6_prefix_onlink_rtrequest(struct nd_prefix *pr, struct ifaddr *ifa) | ||||
{ | { | ||||
struct sockaddr_dl_short sdl; | struct sockaddr_dl_short sdl; | ||||
struct rtentry *rt; | struct rtentry *rt; | ||||
struct sockaddr_in6 mask6; | struct sockaddr_in6 mask6; | ||||
u_long rtflags; | u_long rtflags; | ||||
int error, a_failure, fibnum, maxfib; | int error, a_failure, fibnum, maxfib; | ||||
/* | |||||
* in6_ifinit() sets nd6_rtrequest to ifa_rtrequest for all ifaddrs. | |||||
* ifa->ifa_rtrequest = nd6_rtrequest; | |||||
*/ | |||||
bzero(&mask6, sizeof(mask6)); | bzero(&mask6, sizeof(mask6)); | ||||
mask6.sin6_len = sizeof(mask6); | mask6.sin6_len = sizeof(mask6); | ||||
mask6.sin6_addr = pr->ndpr_mask; | mask6.sin6_addr = pr->ndpr_mask; | ||||
rtflags = (ifa->ifa_flags & ~IFA_RTSELF) | RTF_UP; | rtflags = (ifa->ifa_flags & ~IFA_RTSELF) | RTF_UP; | ||||
bzero(&sdl, sizeof(struct sockaddr_dl_short)); | bzero(&sdl, sizeof(struct sockaddr_dl_short)); | ||||
sdl.sdl_len = sizeof(struct sockaddr_dl_short); | sdl.sdl_len = sizeof(struct sockaddr_dl_short); | ||||
sdl.sdl_family = AF_LINK; | sdl.sdl_family = AF_LINK; | ||||
▲ Show 20 Lines • Show All 573 Lines • Show Last 20 Lines |