summaryrefslogtreecommitdiffstats
path: root/sys/netinet
diff options
context:
space:
mode:
authorqingli <qingli@FreeBSD.org>2009-08-28 05:37:31 +0000
committerqingli <qingli@FreeBSD.org>2009-08-28 05:37:31 +0000
commiteb767da59e573130ba17bc5dfa19349d38c249a9 (patch)
treec2f26601ab53d35e9e9b6dd7e60ae19e711e7c0f /sys/netinet
parent6473998f11e5e4f47e9e3c20102502ea24a70fc7 (diff)
downloadFreeBSD-src-eb767da59e573130ba17bc5dfa19349d38c249a9.zip
FreeBSD-src-eb767da59e573130ba17bc5dfa19349d38c249a9.tar.gz
Do not try to free the rt_lle entry of the cached route in
ip_output() if the cached route was not initialized from the flow-table. The rt_lle entry is invalid unless it has been initialized through the flow-table. Reviewed by: kmacy, rwatson MFC after: immediately
Diffstat (limited to 'sys/netinet')
-rw-r--r--sys/netinet/ip_output.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/sys/netinet/ip_output.c b/sys/netinet/ip_output.c
index 2ce94b5..e222cda 100644
--- a/sys/netinet/ip_output.c
+++ b/sys/netinet/ip_output.c
@@ -202,10 +202,8 @@ again:
if (ro->ro_rt && ((ro->ro_rt->rt_flags & RTF_UP) == 0 ||
dst->sin_family != AF_INET ||
dst->sin_addr.s_addr != ip->ip_dst.s_addr)) {
- if (!nortfree) {
+ if (!nortfree)
RTFREE(ro->ro_rt);
- LLE_FREE(ro->ro_lle);
- }
ro->ro_rt = (struct rtentry *)NULL;
ro->ro_lle = (struct llentry *)NULL;
}
OpenPOWER on IntegriCloud