diff options
| author | Seigo Tanimura <tanimura@FreeBSD.org> | 2006-05-23 00:32:22 +0000 |
|---|---|---|
| committer | Seigo Tanimura <tanimura@FreeBSD.org> | 2006-05-23 00:32:22 +0000 |
| commit | f8366b033414af59db3e8e452397bc4ccbeb414f (patch) | |
| tree | 1cfb91e149b27e203a800b02e548a410b561fca9 /sys/netinet6 | |
| parent | 9c8c02e7a0c120c8b25323b7024d152793325ffc (diff) | |
Notes
Diffstat (limited to 'sys/netinet6')
| -rw-r--r-- | sys/netinet6/in6_src.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/netinet6/in6_src.c b/sys/netinet6/in6_src.c index bedb3a4cb88f..be3e0f8b75b0 100644 --- a/sys/netinet6/in6_src.c +++ b/sys/netinet6/in6_src.c @@ -650,7 +650,7 @@ in6_selectif(dstsock, opts, mopts, ro, retifp) if ((error = selectroute(dstsock, opts, mopts, ro, retifp, &rt, 0, 1)) != 0) { - if (rt && rt == sro.ro_rt) + if (ro == &sro && rt && rt == sro.ro_rt) RTFREE(rt); return (error); } @@ -675,7 +675,7 @@ in6_selectif(dstsock, opts, mopts, ro, retifp) if (rt && (rt->rt_flags & (RTF_REJECT | RTF_BLACKHOLE))) { int flags = (rt->rt_flags & RTF_HOST ? EHOSTUNREACH : ENETUNREACH); - if (rt && rt == sro.ro_rt) + if (ro == &sro && rt && rt == sro.ro_rt) RTFREE(rt); return (flags); } @@ -690,7 +690,7 @@ in6_selectif(dstsock, opts, mopts, ro, retifp) if (rt && rt->rt_ifa && rt->rt_ifa->ifa_ifp) *retifp = rt->rt_ifa->ifa_ifp; - if (rt && rt == sro.ro_rt) + if (ro == &sro && rt && rt == sro.ro_rt) RTFREE(rt); return (0); } |
