diff options
author | Alexander V. Chernikov <melifaro@FreeBSD.org> | 2014-04-27 09:49:35 +0000 |
---|---|---|
committer | Alexander V. Chernikov <melifaro@FreeBSD.org> | 2014-04-27 09:49:35 +0000 |
commit | 2277c5e5e228579e1951ee71ec60bbefe8842c36 (patch) | |
tree | d43130fa65a28897e848e49319da03522f2764d0 /sys/net/rtsock.c | |
parent | dc74dde71eccbb6fafa6351038c6b5b1048abdc1 (diff) | |
download | src-2277c5e5e228579e1951ee71ec60bbefe8842c36.tar.gz src-2277c5e5e228579e1951ee71ec60bbefe8842c36.zip |
Do not delay freeing rtm. Bandaid added in r227061 is not needed since r227061,
MFC after: 1 month
Notes
Notes:
svn path=/head/; revision=265009
Diffstat (limited to 'sys/net/rtsock.c')
-rw-r--r-- | sys/net/rtsock.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/sys/net/rtsock.c b/sys/net/rtsock.c index 626dc8fbab10..45ba6fd52a9a 100644 --- a/sys/net/rtsock.c +++ b/sys/net/rtsock.c @@ -842,7 +842,7 @@ flush: /* There is another listener, so construct message */ rp = sotorawcb(so); } - if (rtm) { + if (rtm != NULL) { #ifdef INET6 if (rti_need_deembed) { /* sin6_scope_id is recovered before sending rtm. */ @@ -865,6 +865,7 @@ flush: m = NULL; } else if (m->m_pkthdr.len > rtm->rtm_msglen) m_adj(m, rtm->rtm_msglen - m->m_pkthdr.len); + Free(rtm); } if (m) { M_SETFIB(m, fibnum); @@ -881,9 +882,6 @@ flush: } else rt_dispatch(m, saf); } - /* info.rti_info[RTAX_DST] (used above) can point inside of rtm */ - if (rtm) - Free(rtm); } return (error); } |