Date: Tue, 1 Sep 2009 08:24:50 +0200 From: Claudio Jeker <cjeker@diehard.n-r-g.com> To: freebsd-net@freebsd.org Subject: Re: [patch] Unbreak setfib + routing daemons Message-ID: <20090901062449.GC25711@diehard.n-r-g.com> References: <4A9C137C.7020303@elischer.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Aug 31, 2009 at 07:48:32PM +0000, Stef Walter wrote: > Julian Elischer wrote: > > there are two ways to go with this one being what you have done teh > > other to add fib info to the messages, Apparently > > OpenBSD has implemented the second by re-using a disused field. > > (I'm ve only been told this second hand) > > It seems like they've taken apart the rtm_flags field (int), and > repurposed it as rtm_tableid (u_short), rtm_priority (u_char) and padding. > This is not 100% correct. rtm_flags is still there. We changed the structure of the routing messages some time ago and added the necessary additional fields while doing that. This included a bump in rtm_version and a simple recompile of third party routing daemons like quagga was enough. > Obviously such a change would require patches to the various routing > daemons as well. But if you think this is the only way forward (ie: > filtering the messages in userland), I'd be happy to contribute. > I plan to extend our routing socket filters to include the tableid making it possible to limit the messages to only that part needed. Getting all messages from all routing domains into all PF_ROUTE listeners results in unneeded overhead. -- :wq Claudio
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090901062449.GC25711>