Date: Tue, 2 Jan 1996 17:20:02 -0800 (PST) From: Bill Fenner <fenner@parc.xerox.com> To: freebsd-bugs Subject: Re: kern/923: Multicast problems on point-to-point interfaces Message-ID: <199601030120.RAA25985@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/923; it has been noted by GNATS.
From: Bill Fenner <fenner@parc.xerox.com>
To: wollman@lcs.mit.edu
Cc: marquard@austin.ibm.com, FreeBSD-gnats-submit@freebsd.org,
Bill Fenner <fenner@parc.xerox.com>
Subject: Re: kern/923: Multicast problems on point-to-point interfaces
Date: Tue, 2 Jan 1996 17:14:56 PST
In message <9601011916.AA11388@halloran-eldar.lcs.mit.edu> Garrett said:
>We are unlikely to
>get the multicast people to change their software, because they are
>just following the rules.
Actually, I have been doing some thinking on this topic. There are two
things that can be done:
1) Make mrouted work in the case of non-''half-router'' situations. This
one is easy; check the point-to-point destination addresses first, then
if you have no match check the source. Note that you can't just check
them both on the first pass, since non-point-to-point interfaces should
be chosen over point-to-point interfaces. An experimental patch follows
(I have thought about this but haven't tested it)
*** in_var.h.old Tue Nov 14 14:52:43 1995
--- in_var.h Tue Jan 2 17:11:10 1996
***************
*** 106,111 ****
--- 106,117 ----
IA_DSTSIN(ia):IA_SIN(ia))->sin_addr.s_addr != (addr).s_addr; \
ia = ia->ia_next) \
continue; \
+ if (ia == NULL) \
+ for (ia = in_ifaddr; \
+ ia != NULL && ia->ia_ifp->if_flags & IFF_POINTOPOINT && \
+ IA_SIN(ia)->sin_addr.s_addr != (addr).s_addr; \
+ ia = ia->ia_next) \
+ continue; \
(ifp) = (ia == NULL) ? NULL : ia->ia_ifp; \
}
2) Make mrouted work on a ''half-router''. I'm not sure this is simple
but I am percolating a couple of ideas.
Bill
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199601030120.RAA25985>
