Revision e14bd380 sysdep/unix/krt.c

View differences:

sysdep/unix/krt.c
575 575
    {
576 576
      net *n = (net *) f;
577 577
      rte *e = n->routes;
578
      if (e)
578
      if (e && (n->n.flags & KRF_INSTALLED))
579 579
	{
580
	  rta *a = e->attrs;
581
	  if ((n->n.flags & KRF_INSTALLED) &&
582
	      a->source != RTS_DEVICE && a->source != RTS_INHERIT)
583
	    {
584
	      /* FIXME: this does not work if gw is changed in export filter */
585
	      krt_replace_rte(p, e->net, NULL, e, NULL);
586
	      n->n.flags &= ~KRF_INSTALLED;
587
	    }
580
	  /* FIXME: this does not work if gw is changed in export filter */
581
	  krt_replace_rte(p, e->net, NULL, e, NULL);
582
	  n->n.flags &= ~KRF_INSTALLED;
588 583
	}
589 584
    }
590 585
  FIB_WALK_END;

Also available in: Unified diff