diff options
Diffstat (limited to 'sys/netinet')
| -rw-r--r-- | sys/netinet/ip_output.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/netinet/ip_output.c b/sys/netinet/ip_output.c index d9867d282ccd..ee361ce401c9 100644 --- a/sys/netinet/ip_output.c +++ b/sys/netinet/ip_output.c @@ -1227,7 +1227,7 @@ ip_ctloutput(so, sopt) #ifdef IPSEC case IP_IPSEC_POLICY: { - struct mbuf *m; + struct mbuf *m = NULL; caddr_t req = NULL; if (m != 0) @@ -1235,7 +1235,8 @@ ip_ctloutput(so, sopt) error = ipsec4_get_policy(sotoinpcb(so), req, &m); if (error == 0) error = soopt_mcopyout(sopt, m); /* XXX */ - m_freem(m); + if (error == 0) + m_freem(m); break; } #endif /*IPSEC*/ |
