[patch] kernel protocol learn on FreeBSD 7

Ondrej Zajicek santiago at crfreenet.org
Fri Feb 26 14:36:00 CET 2010


On Tue, Nov 10, 2009 at 03:40:53PM +0200, Eugene Perevyazko wrote:
> On Tue, Nov 10, 2009 at 01:34:18PM +0200, Eugene Perevyazko wrote:
> > On Mon, Nov 09, 2009 at 07:10:17PM +0100, Ondrej Zajicek wrote:
> > > On Mon, Nov 09, 2009 at 07:57:01PM +0200, Eugene Perevyazko wrote:
> > > > Now I see that async alien routes are added, but not deleted.
> > > > They are deleted only on rescan.
> > > > Is sysdep/bsd/krt.c missing something related to async deleting of alien routes
> > > > or is the patch faulty in some way?
> > > 
> > > Hmm, i don't know. It is possible that async deletion event handling is not
> > > implemented in BSD code.
> > > 
> > I've traced the problem down to this condition in krt_read_rt() in sysdep/bsd/krt-sock.c:
> >   if (!(flags & RTF_UP))
> >   {
> >     DBG("Down.\n");
> >     return;
> >   }
> > Shouldn't it be !(flags & RTF_DONE) ?
> > Or maybe even check rtm.errno first?
> 
> Well, I'm getting deeper understanding how this stuff works :)
> This is my current version of the patch, that looks like works in both 
> async learn and scan modes.

Hello

Thank you for the patch. I finally dared to rewrite parts of BSD kernel
syncing code to make it more featureful and implement proper importing
of alien routes. I used slightly different approach (checking RTF_PROTO1
flag instead of PID, because of we want to have a proper cleanup of our
routes even when BIRD crashed and is restarted.), so i used just a half
of our patch (RTF_UP/RTF_DONE flag handling).

Are you using BIRD with PPP access-server on FreeBSD, as you wrote
in the original e-mail? What flags have the routes added by the PPP
daemon?

-- 
Elen sila lumenn' omentielvo

Ondrej 'SanTiago' Zajicek (email: santiago at crfreenet.org)
OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net)
"To err is human -- to blame it on a computer is even more so."
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20100226/5bd3eae0/attachment.asc>


More information about the Bird-users mailing list