tree 2ee5a4bbf85191ac0a2a5ce2af3cacf8b68789fb
parent 81b81822da6e90f9f04645d63f70ac0a5a924ff4
author paul <paul> 1081410225 +0000
committer paul <paul> 1081410225 +0000

2004-04-08 Paul Jakma <paul@dishone.st>

        * ospf_spf.h: Add backlink field to struct vertex
        * ospf_spf.h: (ospf_vertex_new) initialise backlink
          (ospf_lsa_has_link) return index of link back to
          vertex V from candidate vertex W, or -1 if no link exists.
          (ospf_spf_next) save backlink index for candidate vertex
        * ospf_interface.c: (ospf_vl_set_params) Use the backlink index
          to determine correct address for virtual-link peers. Fall back
          to older "pick first link" method if no backlink index exists.
