Shouldn't these warn's be debugs protected by guards? donald
On Tue, Nov 10, 2015 at 12:04 PM, Christian Franke < [email protected]> wrote: > New circuits should be initialized to match the is_type > of their area. Also add an additional check to make sure > that no IIHs are sent for levels which are not enabled. > > Signed-off-by: Christian Franke <[email protected]> > --- > isisd/isis_circuit.c | 12 ++++++------ > isisd/isis_pdu.c | 14 ++++++++++++++ > 2 files changed, 20 insertions(+), 6 deletions(-) > > diff --git a/isisd/isis_circuit.c b/isisd/isis_circuit.c > index 2ef43cc..6ecaca6 100644 > --- a/isisd/isis_circuit.c > +++ b/isisd/isis_circuit.c > @@ -122,13 +122,13 @@ isis_circuit_configure (struct isis_circuit > *circuit, struct isis_area *area) > circuit->area = area; > > /* > - * The level for the circuit is same as for the area, unless configured > - * otherwise. > + * Whenever the is-type of an area is changed, the is-type of each > circuit > + * in that area is updated to a non-empty subset of the area is-type. > + * Inversely, when configuring a new circuit, this property should be > + * ensured as well. > */ > - if (area->is_type != IS_LEVEL_1_AND_2 && area->is_type != > circuit->is_type) > - zlog_warn ("circut %s is_type %d mismatch with area %s is_type %d", > - circuit->interface->name, circuit->is_type, > - circuit->area->area_tag, area->is_type); > + if (area->is_type != IS_LEVEL_1_AND_2) > + circuit->is_type = area->is_type; > > /* > * Add the circuit into area > diff --git a/isisd/isis_pdu.c b/isisd/isis_pdu.c > index d63a8a6..26efe4d 100644 > --- a/isisd/isis_pdu.c > +++ b/isisd/isis_pdu.c > @@ -2446,6 +2446,13 @@ send_lan_l1_hello (struct thread *thread) > assert (circuit); > circuit->u.bc.t_send_lan_hello[0] = NULL; > > + if (!(circuit->area->is_type & IS_LEVEL_1)) > + { > + zlog_warn ("ISIS-Hello (%s): Trying to send L1 IIH in L2-only area", > + circuit->area->area_tag); > + return 1; > + } > + > if (circuit->u.bc.run_dr_elect[0]) > retval = isis_dr_elect (circuit, 1); > > @@ -2469,6 +2476,13 @@ send_lan_l2_hello (struct thread *thread) > assert (circuit); > circuit->u.bc.t_send_lan_hello[1] = NULL; > > + if (!(circuit->area->is_type & IS_LEVEL_2)) > + { > + zlog_warn ("ISIS-Hello (%s): Trying to send L2 IIH in L1 area", > + circuit->area->area_tag); > + return 1; > + } > + > if (circuit->u.bc.run_dr_elect[1]) > retval = isis_dr_elect (circuit, 2); > > -- > 2.6.1 > > > _______________________________________________ > 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
