Date: Mon, 15 May 2006 16:00:46 -0700 From: Pavlin Radoslavov <pavlin@icir.org> To: Bruce M Simpson <bms@spc.org>, Bruce M Simpson <bms@FreeBSD.org>, src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org, pavlin@icir.org, atanu@icir.org, rwatson@FreeBSD.org Subject: Re: cvs commit: src/sys/netinet in.h ip_output.c ip_var.h Message-ID: <200605152300.k4FN0k2N086754@possum.icir.org> In-Reply-To: Message from Bruce M Simpson <bms@spc.org> of "Mon, 15 May 2006 09:55:07 BST." <20060515085507.GH46921@spc.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Bruce M Simpson <bms@spc.org> wrote:
> Something like this:
In general, you may want to appropriately initialize ip_moptions
everywhere it is allocated. E.g., a quick search for "ip_moptions"
reveals that igmp_sendpkt() inside netinet/igmp.c also may have to
be modified. Another suspect (among others) is field "sc_imo" inside
struct pfsync_softc (file sys/contrib/pf/net/if_pfsync.h).
Pavlin
> %%%
> --- ip_mroute.c.orig Mon May 15 09:52:41 2006
> +++ ip_mroute.c Mon May 15 09:54:01 2006
> @@ -2115,6 +2115,7 @@
> ip_output(m, NULL, &vifp->v_route, IP_FORWARDING, NULL, NULL);
> else {
> struct ip_moptions imo;
> + struct in_multi *imm[2];
> int error;
> static struct route ro; /* XXX check this */
>
> @@ -2122,6 +2123,9 @@
> imo.imo_multicast_ttl = mtod(m, struct ip *)->ip_ttl - 1;
> imo.imo_multicast_loop = 1;
> imo.imo_multicast_vif = -1;
> + imo.imo_num_memberships = 0;
> + imo.imo_max_memberships = 2;
> + imo.imo_membership = &imm[0];
>
> /*
> * Re-entrancy should not be a problem here, because
> Exit 1
> %%%
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200605152300.k4FN0k2N086754>
