diff options
author | 2009-10-30 16:14:52 +0000 | |
---|---|---|
committer | 2009-10-30 16:14:52 +0000 | |
commit | e3689e2543acd22873781923bf4f0e8cf96edc9c (patch) | |
tree | af9a28abb2e06d64c7f0fb906b982f3781ddaef1 | |
parent | Routers with "transparent-as yes" set should behave more like iBGP ones. (diff) | |
download | wireguard-openbsd-e3689e2543acd22873781923bf4f0e8cf96edc9c.tar.xz wireguard-openbsd-e3689e2543acd22873781923bf4f0e8cf96edc9c.zip |
Don't do a double free, sys_getsockopt() will take care of freeing the
mbuf allocated by the subroutines. OK kettenis@
-rw-r--r-- | sys/netinet6/ip6_mroute.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/sys/netinet6/ip6_mroute.c b/sys/netinet6/ip6_mroute.c index 91a8a6d1418..15e5810ccd3 100644 --- a/sys/netinet6/ip6_mroute.c +++ b/sys/netinet6/ip6_mroute.c @@ -298,17 +298,14 @@ ip6_mrouter_set(int cmd, struct socket *so, struct mbuf *m) int ip6_mrouter_get(int cmd, struct socket *so, struct mbuf **m) { - struct mbuf *mb; - if (so != ip6_mrouter) return EACCES; - *m = mb = m_get(M_WAIT, MT_SOOPTS); + *m = m_get(M_WAIT, MT_SOOPTS); switch (cmd) { case MRT6_PIM: - return get_pim6(mb); + return get_pim6(*m); default: - m_free(mb); return EOPNOTSUPP; } } |