  			zlog_debug("netlink_route_multipath() (single hop): "
  				   "nexthop via if %u", nexthop->ifindex);
 diff --git a/zebra/zebra_rib.c b/zebra/zebra_rib.c
-index 154e8d5..0090c39 100644
+index 154e8d5..4d613fd 100644
 --- a/zebra/zebra_rib.c
 +++ b/zebra/zebra_rib.c
 @@ -67,6 +67,9 @@ static const struct

+		  }
+	      return 0;
+	    }
 	  else if (CHECK_FLAG (rib->flags, ZEBRA_FLAG_INTERNAL))
 	    {
 	      for (newhop = match->nexthop; newhop; newhop = newhop->next)
@@ -483,6 +498,18 @@ nexthop_active_ipv6 (struct rib *rib, struct nexthop *nexthop, int set,
 	      
 	      return 1;
 	    }
+	  else if (match->type == ZEBRA_ROUTE_OLSR)
+	    {

   [ZEBRA_ROUTE_BABEL]   = {ZEBRA_ROUTE_BABEL,    95},
   /* no entry/default: 150 */
 };
@@ -403,6 +406,18 @@ nexthop_active_ipv4 (struct rib *rib, struct nexthop *nexthop, int set,
 		  }
 	      return 0;
 	    }
+	  else if (match->type == ZEBRA_ROUTE_OLSR)
+	    {
