summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorJun-ichiro itojun Hagino <itojun@cvs.openbsd.org>2006-12-08 21:32:13 +0000
committerJun-ichiro itojun Hagino <itojun@cvs.openbsd.org>2006-12-08 21:32:13 +0000
commit1ec1e83228518ff64c17d41a9a411791b74259c6 (patch)
treeed8302b6c2fa8f12f14258a37f4b8c2a1ef5e8dc /sys
parentc481be686c817f0d5f4a2ccd88d331fd01571c67 (diff)
leftover from interface-local multicast change.
Diffstat (limited to 'sys')
-rw-r--r--sys/netinet6/ip6_output.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/sys/netinet6/ip6_output.c b/sys/netinet6/ip6_output.c
index 84f62a56b84..bc3be5163fb 100644
--- a/sys/netinet6/ip6_output.c
+++ b/sys/netinet6/ip6_output.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ip6_output.c,v 1.94 2006/11/17 01:11:23 itojun Exp $ */
+/* $OpenBSD: ip6_output.c,v 1.95 2006/12/08 21:32:12 itojun Exp $ */
/* $KAME: ip6_output.c,v 1.172 2001/03/25 09:55:56 itojun Exp $ */
/*
@@ -1974,9 +1974,9 @@ ip6_setmoptions(optname, im6op, m)
}
/*
* Put interface index into the multicast address,
- * if the address has link-local scope.
+ * if the address has link/interface-local scope.
*/
- if (IN6_IS_ADDR_MC_LINKLOCAL(&mreq->ipv6mr_multiaddr)) {
+ if (IN6_IS_SCOPE_EMBED(&mreq->ipv6mr_multiaddr)) {
mreq->ipv6mr_multiaddr.s6_addr16[1] =
htons(ifp->if_index);
}
@@ -2074,7 +2074,8 @@ ip6_setmoptions(optname, im6op, m)
}
/*
- * If all options have default values, no need to keep the mbuf.
+ * If all options have default values, no need to keep the option
+ * structure.
*/
if (im6o->im6o_multicast_ifp == NULL &&
im6o->im6o_multicast_hlim == ip6_defmcasthlim &&
@@ -2342,6 +2343,9 @@ ip6_mloopback(ifp, m, dst)
struct mbuf *copym;
struct ip6_hdr *ip6;
+ /*
+ * Duplicate the packet.
+ */
copym = m_copy(m, 0, M_COPYALL);
if (copym == NULL)
return;