Hi, 
 
> >> I have also found a significant problem with the mesh implementation in
> >> FreeBSD. It seems that after a few announcements, the FreeBSD babeld
> >> will start announcing routes it added to its routing from the mesh back
> >> to the mesh as native routes.
> >
> > What happens if you try to revert the following patch: 
> >
> >    "Kernel_socket: do not use the RTF_PROTO2 flag". 
> 
> It stops happening.

Good news.

> Why was that change done in the first place? It looked like a good
> idea. :)

The original introduction of the RTF_PROTO2 flag was to easily filter in the 
"kernel_routes" function the routes that were installed by babel. On linux, 
babel's route are installed in a distinct route table; hence filtering is easy 
and babel do not compare the routes returnes by "kernel_routes" with this own 
internal table.

The removal of this flag is due to a bug on MacOS X: when the flag is set, 
atomic route changes (a.k.a. ROUTE_MODIFY) fail miserabily.

Then, on a late night, I probably forgot to implement another filtering 
mechanism. I don't know yet what to do:

- revert the patch and don't use atomic route change on OS X (and probably old 
BSD)
- implement another filtering mechanism (by comparing each route to the babel 
internal routing table ? by accepting only routes with a static flag ?)

Any ideas ? Juliusz ?

Regards,
Grégoire

_______________________________________________
Babel-users mailing list
Babel-users@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/babel-users

Reply via email to