diff options
Diffstat (limited to 'ospfd/ospf_spf.h')
| -rw-r--r-- | ospfd/ospf_spf.h | 17 | 
1 files changed, 11 insertions, 6 deletions
diff --git a/ospfd/ospf_spf.h b/ospfd/ospf_spf.h index 1aa871aeda..50e590d6ca 100644 --- a/ospfd/ospf_spf.h +++ b/ospfd/ospf_spf.h @@ -36,11 +36,10 @@ struct vertex    u_char type;		/* copied from LSA header */    struct in_addr id;	/* copied from LSA header */    struct lsa_header *lsa; /* Router or Network LSA */ -  int * stat;		/* Link to LSA status. */ -  u_int32_t distance;	/* from root to this vertex */ -  int backlink;        /* link index of back-link */ -  struct list *child;		/* list of vertex: children in SPF tree*/ -  struct list *nexthop;		/* list of vertex_nexthop from root to this vertex */ +  int *stat;		/* Link to LSA status. */ +  u_int32_t distance;	/* from root to this vertex */   +  struct list *parents;		/* list of parents in SPF tree */ +  struct list *children;	/* list of children in SPF tree*/  };  /* A nexthop taken on the root node to get to this (parent) vertex */ @@ -48,7 +47,13 @@ struct vertex_nexthop  {    struct ospf_interface *oi;	/* output intf on root node */    struct in_addr router;	/* router address to send to */ -  struct vertex *parent;	/* parent in SPF tree */ +}; + +struct vertex_parent +{ +  struct vertex_nexthop *nexthop; /* link to nexthop info for this parent */ +  struct vertex *parent;	/* parent vertex */ +  int backlink;			/* index back to parent for router-lsa's */  };  extern void ospf_spf_calculate_schedule (struct ospf *);  | 
