[olsr-dev] Why are 1-hop routes with destination==gateway added

Erik Tromp (spam-protected)
Mon Jul 24 13:04:31 CEST 2006


Bill,

Thanks, so I was right that this is blocking interworking with Quagga, and it is ok to have these routes not copied into the routing
table.

Could you point me to the URL of the mail thread you refer to?

Erik


----- Original Message ----- 
From: "Acinonyx" <(spam-protected)>
To: "OLSR development" <(spam-protected)>
Sent: Friday, July 21, 2006 11:58 PM
Subject: Re: [olsr-dev] Why are 1-hop routes with destination==gateway added


> Hello Erik,
>
> this issue has been discussed before in this list.
>
> The problem originates from quagga (zebra daemon) which doesn't accept
> as valid, routes with destination equal to gateway if they are not
> assigned to a p-t-p interface.
>
> Either case, destintation ==gateway routes in olsr seems practically
> useless so I removed this part of code to work with quagga.
>
> Regards,
> Bill
>
> P.S. A patch for 0.4.10 follows.
>
> diff -Naur olsrd-0.4.10/src/linux/kernel_routes.c
> olsrd-0.4.10-patched/src/linux/kernel_routes.c
> --- olsrd-0.4.10/src/linux/kernel_routes.c      2005-02-27
> 20:39:43.000000000 +0200
> +++ olsrd-0.4.10-patched/src/linux/kernel_routes.c      2006-05-02
> 03:37:21.000000000 +0300
> @@ -87,7 +87,6 @@
>   if(destination->rt_dst.v4 != destination->rt_router.v4)
>     {
>       ((struct sockaddr_in
> *)&kernel_route.rt_gateway)->sin_addr.s_addr=destination->rt_router.v4;
> -    }
>
>   kernel_route.rt_flags = destination->rt_flags;
>
> @@ -130,6 +129,7 @@
>
>   tmp = ioctl(ioctl_s,SIOCADDRT,&kernel_route);
>   /*  kernel_route.rt_dev=*/
> +    } else tmp = 0;
>
>   /*
>    *Send IPC route update message
> @@ -256,6 +256,7 @@
>
>   ((struct sockaddr_in *)&kernel_route.rt_dst)->sin_addr.s_addr =
> destination->rt_dst.v4;
>   if(destination->rt_dst.v4 != destination->rt_router.v4)
> +    {
>     ((struct sockaddr_in *)&kernel_route.rt_gateway)->sin_addr.s_addr =
> destination->rt_router.v4;
>   ((struct sockaddr_in *)&kernel_route.rt_genmask)->sin_addr.s_addr =
> destination->rt_mask.v4;
>
> @@ -275,6 +276,7 @@
>   */
>
>   tmp = ioctl(ioctl_s, SIOCDELRT, &kernel_route);
> +    } else tmp = 0;
>
>
>     /*
>
>
>
> _______________________________________________
> olsr-dev mailing list
> (spam-protected)
> https://www.olsr.org/mailman/listinfo/olsr-dev
>




More information about the Olsr-dev mailing list