Why is this also not a bug for both calls into isis_adj_state_change(), proceeded by calls to isis_new_adj()? It sure seems like to me that it would be better to set adj->circuit_t inside of isis_new_adj().
donald On Thu, Jul 2, 2015 at 6:42 PM, Amritha Nambiar <[email protected]> wrote: > isis_pdu.c : > New adjacency did not always get added to LSP neighbor list. > > The adjacencies that were created once minimum time allowed before LSP > retransmission had surpassed, instantly got their LSP regenerated, but > the adjacency circuit type was not set to IIH PDU circuit type before > the LSP was regenerated , hence didn't pass the check for adjacency > circuit type in lsp_build(), and the adjacency was not added to neighbor > list. > > When a new adjacency is up, to build LSP with neighbor entry corresponding > to the adjacency, set adjacency circuit type to circuit type from hello PDU > header before new LSP is regenerated/built. This will result in the new > adjacency entry getting added to the LSP neighbor list TLV. > > Signed-off-by: Amritha Nambiar <[email protected]> > --- > isisd/isis_pdu.c | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > > diff --git a/isisd/isis_pdu.c b/isisd/isis_pdu.c > index 7c04f44..c50b53f 100644 > --- a/isisd/isis_pdu.c > +++ b/isisd/isis_pdu.c > @@ -601,6 +601,13 @@ process_p2p_hello (struct isis_circuit *circuit) > adj->level = hdr->circuit_t; > } > circuit->u.p2p.neighbor = adj; > + /* Build lsp with the new neighbor entry when a new > + * adjacency is formed. Set adjacency circuit type to > + * IIH PDU header circuit type before lsp is regenerated > + * when an adjacency is up. This will result in the new > + * adjacency entry getting added to the lsp tlv neighbor list. > + */ > + adj->circuit_t = hdr->circuit_t; > isis_adj_state_change (adj, ISIS_ADJ_INITIALIZING, NULL); > adj->sys_type = ISIS_SYSTYPE_UNKNOWN; > } > @@ -886,7 +893,6 @@ process_p2p_hello (struct isis_circuit *circuit) > break; > } > > - adj->circuit_t = hdr->circuit_t; > > if (isis->debugs & DEBUG_ADJ_PACKETS) > { > > > _______________________________________________ > Quagga-dev mailing list > [email protected] > https://lists.quagga.net/mailman/listinfo/quagga-dev >
_______________________________________________ Quagga-dev mailing list [email protected] https://lists.quagga.net/mailman/listinfo/quagga-dev
