isis_circuit_if_bind(circuit, ifp);
if (if_is_broadcast(ifp)) {
- if (circuit->circ_type_config == CIRCUIT_T_P2P)
+ if (fabricd || circuit->circ_type_config == CIRCUIT_T_P2P)
circuit->circ_type = CIRCUIT_T_P2P;
else
circuit->circ_type = CIRCUIT_T_BROADCAST;
}
/* ISIS - circuit type */
- if (circuit->is_type == IS_LEVEL_1) {
- vty_out(vty, " " PROTO_NAME " circuit-type level-1\n");
- write++;
- } else {
- if (circuit->is_type == IS_LEVEL_2) {
- vty_out(vty,
- " " PROTO_NAME " circuit-type level-2-only\n");
+ if (!fabricd) {
+ if (circuit->is_type == IS_LEVEL_1) {
+ vty_out(vty, " " PROTO_NAME " circuit-type level-1\n");
write++;
+ } else {
+ if (circuit->is_type == IS_LEVEL_2) {
+ vty_out(vty,
+ " " PROTO_NAME " circuit-type level-2-only\n");
+ write++;
+ }
}
}
area = XCALLOC(MTYPE_ISIS_AREA, sizeof(struct isis_area));
/*
- * The first instance is level-1-2 rest are level-1, unless otherwise
- * configured
+ * Fabricd runs only as level-2.
+ * For IS-IS, the first instance is level-1-2 rest are level-1,
+ * unless otherwise configured
*/
- if (listcount(isis->area_list) > 0)
+ if (fabricd) {
+ area->is_type = IS_LEVEL_2;
+ } else if (listcount(isis->area_list) > 0)
area->is_type = IS_LEVEL_1;
else
area->is_type = IS_LEVEL_1_AND_2;
write++;
}
/* ISIS - Metric-Style - when true displays wide */
- if (area->newmetric) {
- if (!area->oldmetric)
- vty_out(vty, " metric-style wide\n");
- else
- vty_out(vty,
- " metric-style transition\n");
- write++;
- } else {
- vty_out(vty, " metric-style narrow\n");
- write++;
+ if (!fabricd) {
+ if (area->newmetric) {
+ if (!area->oldmetric)
+ vty_out(vty, " metric-style wide\n");
+ else
+ vty_out(vty,
+ " metric-style transition\n");
+ write++;
+ } else {
+ vty_out(vty, " metric-style narrow\n");
+ write++;
+ }
}
/* ISIS - overload-bit */
if (area->overload_bit) {
write++;
}
/* ISIS - Area is-type (level-1-2 is default) */
- if (area->is_type == IS_LEVEL_1) {
- vty_out(vty, " is-type level-1\n");
- write++;
- } else if (area->is_type == IS_LEVEL_2) {
- vty_out(vty, " is-type level-2-only\n");
- write++;
+ if (!fabricd) {
+ if (area->is_type == IS_LEVEL_1) {
+ vty_out(vty, " is-type level-1\n");
+ write++;
+ } else if (area->is_type == IS_LEVEL_2) {
+ vty_out(vty, " is-type level-2-only\n");
+ write++;
+ }
}
write += isis_redist_config_write(vty, area, AF_INET);
write += isis_redist_config_write(vty, area, AF_INET6);