summaryrefslogtreecommitdiffstats
path: root/freebsd/sys/netinet/in_fib.c
diff options
context:
space:
mode:
Diffstat (limited to 'freebsd/sys/netinet/in_fib.c')
-rw-r--r--freebsd/sys/netinet/in_fib.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/freebsd/sys/netinet/in_fib.c b/freebsd/sys/netinet/in_fib.c
index f61909ea..63141326 100644
--- a/freebsd/sys/netinet/in_fib.c
+++ b/freebsd/sys/netinet/in_fib.c
@@ -98,7 +98,6 @@ fib4_rte_to_nh_extended(struct rtentry *rte, struct in_addr dst,
uint32_t flags, struct nhop4_extended *pnh4)
{
struct sockaddr_in *gw;
- struct in_ifaddr *ia;
if ((flags & NHR_IFAIF) != 0)
pnh4->nh_ifp = rte->rt_ifa->ifa_ifp;
@@ -115,10 +114,8 @@ fib4_rte_to_nh_extended(struct rtentry *rte, struct in_addr dst,
gw = (struct sockaddr_in *)rt_key(rte);
if (gw->sin_addr.s_addr == 0)
pnh4->nh_flags |= NHF_DEFAULT;
- /* XXX: Set RTF_BROADCAST if GW address is broadcast */
-
- ia = ifatoia(rte->rt_ifa);
- pnh4->nh_src = IA_SIN(ia)->sin_addr;
+ pnh4->nh_ia = ifatoia(rte->rt_ifa);
+ pnh4->nh_src = IA_SIN(pnh4->nh_ia)->sin_addr;
}
/*