cvs commit: src/sys/netinet in.h ip_output.c ip_var.h

Pavlin Radoslavov pavlin at icir.org
Mon May 15 16:00:56 PDT 2006


Bruce M Simpson <bms at 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
> %%%


More information about the cvs-src mailing list