]> git.puffer.fish Git - matthieu/frr.git/commitdiff
isisd: remove unnecessary check for vrf
authoranlan_cs <anlan_cs@tom.com>
Sat, 4 May 2024 14:56:21 +0000 (22:56 +0800)
committeranlan_cs <anlan_cs@tom.com>
Sun, 5 May 2024 11:08:43 +0000 (19:08 +0800)
The `vrf_name` is always non-NULL in `isisd` code, so remove the
unnecesary check to make it clear.

Signed-off-by: anlan_cs <anlan_cs@tom.com>
isisd/isis_spf.c
isisd/isis_te.c
isisd/isisd.c

index 294c03def1db49aec5e2ffad868ab29fc7a993d5..ffc4841c41207d1290b20b819b492bf20a88f115 100644 (file)
@@ -2469,37 +2469,33 @@ DEFUN(show_isis_topology, show_isis_topology_cmd,
        }
        ISIS_FIND_VRF_ARGS(argv, argc, idx_vrf, vrf_name, all_vrf);
 
-       if (vrf_name) {
-               if (all_vrf) {
-                       for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis)) {
-                               if (all_algorithm) {
-                                       for (algorithm = SR_ALGORITHM_FLEX_MIN;
-                                            algorithm <= SR_ALGORITHM_FLEX_MAX;
-                                            algorithm++)
-                                               show_isis_topology_common(
-                                                       vty, levels, isis,
-                                                       (uint8_t)algorithm);
-                               } else {
+       if (all_vrf) {
+               for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis)) {
+                       if (all_algorithm) {
+                               for (algorithm = SR_ALGORITHM_FLEX_MIN;
+                                    algorithm <= SR_ALGORITHM_FLEX_MAX;
+                                    algorithm++)
                                        show_isis_topology_common(
                                                vty, levels, isis,
                                                (uint8_t)algorithm);
-                               }
-                       }
-                       return CMD_SUCCESS;
-               }
-               isis = isis_lookup_by_vrfname(vrf_name);
-               if (isis == NULL)
-                       return CMD_SUCCESS;
-               if (all_algorithm) {
-                       for (algorithm = SR_ALGORITHM_FLEX_MIN;
-                            algorithm <= SR_ALGORITHM_FLEX_MAX; algorithm++) {
+                       } else {
                                show_isis_topology_common(vty, levels, isis,
                                                          (uint8_t)algorithm);
                        }
-               } else
+               }
+               return CMD_SUCCESS;
+       }
+       isis = isis_lookup_by_vrfname(vrf_name);
+       if (isis == NULL)
+               return CMD_SUCCESS;
+       if (all_algorithm) {
+               for (algorithm = SR_ALGORITHM_FLEX_MIN;
+                    algorithm <= SR_ALGORITHM_FLEX_MAX; algorithm++) {
                        show_isis_topology_common(vty, levels, isis,
                                                  (uint8_t)algorithm);
-       }
+               }
+       } else
+               show_isis_topology_common(vty, levels, isis, (uint8_t)algorithm);
 
        return CMD_SUCCESS;
 }
@@ -2672,17 +2668,14 @@ DEFUN(show_isis_flex_algo, show_isis_flex_algo_cmd,
 
        ISIS_FIND_VRF_ARGS(argv, argc, idx_vrf, vrf_name, all_vrf);
 
-       if (vrf_name) {
-               if (all_vrf) {
-                       for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis))
-                               show_isis_flex_algo_common(vty, isis,
-                                                          flex_algo);
-                       return CMD_SUCCESS;
-               }
-               isis = isis_lookup_by_vrfname(vrf_name);
-               if (isis != NULL)
+       if (all_vrf) {
+               for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis))
                        show_isis_flex_algo_common(vty, isis, flex_algo);
+               return CMD_SUCCESS;
        }
+       isis = isis_lookup_by_vrfname(vrf_name);
+       if (isis != NULL)
+               show_isis_flex_algo_common(vty, isis, flex_algo);
 
        return CMD_SUCCESS;
 }
@@ -3140,34 +3133,8 @@ DEFUN(show_isis_route, show_isis_route_cmd,
        if (uj)
                json = json_object_new_array();
 
-       if (vrf_name) {
-               if (all_vrf) {
-                       for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis)) {
-                               if (all_algorithm)
-                                       show_isis_route_all_algos(vty, levels,
-                                                                 isis,
-                                                                 prefix_sid,
-                                                                 backup,
-                                                                 uj ? &json_vrf
-                                                                    : NULL);
-                               else
-                                       show_isis_route_common(vty, levels,
-                                                              isis, prefix_sid,
-                                                              backup, algorithm,
-                                                              uj ? &json_vrf
-                                                                 : NULL);
-                               if (uj) {
-                                       json_object_object_add(
-                                               json_vrf, "vrf_id",
-                                               json_object_new_int(
-                                                       isis->vrf_id));
-                                       json_object_array_add(json, json_vrf);
-                               }
-                       }
-                       goto out;
-               }
-               isis = isis_lookup_by_vrfname(vrf_name);
-               if (isis != NULL) {
+       if (all_vrf) {
+               for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis)) {
                        if (all_algorithm)
                                show_isis_route_all_algos(vty, levels, isis,
                                                          prefix_sid, backup,
@@ -3178,12 +3145,28 @@ DEFUN(show_isis_route, show_isis_route_cmd,
                                                       algorithm,
                                                       uj ? &json_vrf : NULL);
                        if (uj) {
-                               json_object_object_add(
-                                       json_vrf, "vrf_id",
-                                       json_object_new_int(isis->vrf_id));
+                               json_object_object_add(json_vrf, "vrf_id",
+                                                      json_object_new_int(
+                                                              isis->vrf_id));
                                json_object_array_add(json, json_vrf);
                        }
                }
+               goto out;
+       }
+       isis = isis_lookup_by_vrfname(vrf_name);
+       if (isis != NULL) {
+               if (all_algorithm)
+                       show_isis_route_all_algos(vty, levels, isis, prefix_sid,
+                                                 backup, uj ? &json_vrf : NULL);
+               else
+                       show_isis_route_common(vty, levels, isis, prefix_sid,
+                                              backup, algorithm,
+                                              uj ? &json_vrf : NULL);
+               if (uj) {
+                       json_object_object_add(json_vrf, "vrf_id",
+                                              json_object_new_int(isis->vrf_id));
+                       json_object_array_add(json, json_vrf);
+               }
        }
 
 out:
@@ -3395,16 +3378,14 @@ DEFUN(show_isis_frr_summary, show_isis_frr_summary_cmd,
        }
        ISIS_FIND_VRF_ARGS(argv, argc, idx, vrf_name, all_vrf);
 
-       if (vrf_name) {
-               if (all_vrf) {
-                       for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis))
-                               show_isis_frr_summary_common(vty, levels, isis);
-                       return CMD_SUCCESS;
-               }
-               isis = isis_lookup_by_vrfname(vrf_name);
-               if (isis != NULL)
+       if (all_vrf) {
+               for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis))
                        show_isis_frr_summary_common(vty, levels, isis);
+               return CMD_SUCCESS;
        }
+       isis = isis_lookup_by_vrfname(vrf_name);
+       if (isis != NULL)
+               show_isis_frr_summary_common(vty, levels, isis);
 
        return CMD_SUCCESS;
 }
index 61c3db7f053d2b9f8b12c77874208be9416cad4d..3683f74558216b8c21d5ffa320cb13ee883c01da 100644 (file)
@@ -1690,30 +1690,26 @@ DEFUN(show_isis_mpls_te_router,
                return CMD_SUCCESS;
        }
        ISIS_FIND_VRF_ARGS(argv, argc, idx_vrf, vrf_name, all_vrf);
-       if (vrf_name) {
-               if (all_vrf) {
-                       for (ALL_LIST_ELEMENTS_RO(im->isis, inode, isis)) {
-                               for (ALL_LIST_ELEMENTS_RO(isis->area_list,
-                                                         anode, area)) {
-                                       if (!IS_MPLS_TE(area->mta))
-                                               continue;
-
-                                       show_router_id(vty, area);
-                               }
-                       }
-                       return 0;
-               }
-               isis = isis_lookup_by_vrfname(vrf_name);
-               if (isis != NULL) {
-                       for (ALL_LIST_ELEMENTS_RO(isis->area_list, anode,
-                                                 area)) {
 
+       if (all_vrf) {
+               for (ALL_LIST_ELEMENTS_RO(im->isis, inode, isis)) {
+                       for (ALL_LIST_ELEMENTS_RO(isis->area_list, anode, area)) {
                                if (!IS_MPLS_TE(area->mta))
                                        continue;
 
                                show_router_id(vty, area);
                        }
                }
+               return 0;
+       }
+       isis = isis_lookup_by_vrfname(vrf_name);
+       if (isis != NULL) {
+               for (ALL_LIST_ELEMENTS_RO(isis->area_list, anode, area)) {
+                       if (!IS_MPLS_TE(area->mta))
+                               continue;
+
+                       show_router_id(vty, area);
+               }
        }
 
        return CMD_SUCCESS;
@@ -2162,19 +2158,18 @@ DEFUN(show_isis_mpls_te_db,
        int rc = CMD_WARNING;
 
        ISIS_FIND_VRF_ARGS(argv, argc, idx_vrf, vrf_name, all_vrf);
-       if (vrf_name) {
-               if (all_vrf) {
-                       for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis)) {
-                               rc = show_isis_ted(vty, argv, argc, isis);
-                               if (rc != CMD_SUCCESS)
-                                       return rc;
-                       }
-                       return CMD_SUCCESS;
-               }
-               isis = isis_lookup_by_vrfname(vrf_name);
-               if (isis)
+
+       if (all_vrf) {
+               for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis)) {
                        rc = show_isis_ted(vty, argv, argc, isis);
+                       if (rc != CMD_SUCCESS)
+                               return rc;
+               }
+               return CMD_SUCCESS;
        }
+       isis = isis_lookup_by_vrfname(vrf_name);
+       if (isis)
+               rc = show_isis_ted(vty, argv, argc, isis);
 
        return rc;
 }
index c1eda4822a439eb80a6558959373c39929a1cbca..e059ce1977ddd7445665111e664799bc772325c9 100644 (file)
@@ -988,63 +988,17 @@ int show_isis_interface_common_json(struct json_object *json,
                                       "no");
                return CMD_SUCCESS;
        }
-       if (vrf_name) {
-               if (all_vrf) {
-                       for (ALL_LIST_ELEMENTS_RO(im->isis, inode, isis)) {
-                               areas_json = json_object_new_array();
-                               json_object_object_add(json, "areas",
-                                                      areas_json);
-                               for (ALL_LIST_ELEMENTS_RO(isis->area_list,
-                                                         anode, area)) {
-                                       area_json = json_object_new_object();
-                                       json_object_string_add(
-                                               area_json, "area",
-                                               area->area_tag ? area->area_tag
-                                                              : "null");
-                                       circuits_json = json_object_new_array();
-                                       json_object_object_add(area_json,
-                                                              "circuits",
-                                                              circuits_json);
-                                       for (ALL_LIST_ELEMENTS_RO(
-                                                    area->circuit_list, cnode,
-                                                    circuit)) {
-                                               circuit_json =
-                                                       json_object_new_object();
-                                               json_object_int_add(
-                                                       circuit_json, "circuit",
-                                                       circuit->circuit_id);
-                                               if (!ifname)
-                                                       isis_circuit_print_json(
-                                                               circuit,
-                                                               circuit_json,
-                                                               detail);
-                                               else if (strcmp(circuit->interface->name, ifname) == 0)
-                                                       isis_circuit_print_json(
-                                                               circuit,
-                                                               circuit_json,
-                                                               detail);
-                                               json_object_array_add(
-                                                       circuits_json,
-                                                       circuit_json);
-                                       }
-                                       json_object_array_add(areas_json,
-                                                             area_json);
-                               }
-                       }
-                       return CMD_SUCCESS;
-               }
-               isis = isis_lookup_by_vrfname(vrf_name);
-               if (isis != NULL) {
+
+       if (all_vrf) {
+               for (ALL_LIST_ELEMENTS_RO(im->isis, inode, isis)) {
                        areas_json = json_object_new_array();
                        json_object_object_add(json, "areas", areas_json);
-                       for (ALL_LIST_ELEMENTS_RO(isis->area_list, anode,
-                                                 area)) {
+                       for (ALL_LIST_ELEMENTS_RO(isis->area_list, anode, area)) {
                                area_json = json_object_new_object();
                                json_object_string_add(area_json, "area",
                                                       area->area_tag
                                                               ? area->area_tag
                                                               : "null");
-
                                circuits_json = json_object_new_array();
                                json_object_object_add(area_json, "circuits",
                                                       circuits_json);
@@ -1055,22 +1009,56 @@ int show_isis_interface_common_json(struct json_object *json,
                                                circuit_json, "circuit",
                                                circuit->circuit_id);
                                        if (!ifname)
-                                               isis_circuit_print_json(
-                                                       circuit, circuit_json,
-                                                       detail);
-                                       else if (
-                                               strcmp(circuit->interface->name,
-                                                      ifname) == 0)
-                                               isis_circuit_print_json(
-                                                       circuit, circuit_json,
-                                                       detail);
+                                               isis_circuit_print_json(circuit,
+                                                                       circuit_json,
+                                                                       detail);
+                                       else if (strcmp(circuit->interface->name,
+                                                       ifname) == 0)
+                                               isis_circuit_print_json(circuit,
+                                                                       circuit_json,
+                                                                       detail);
                                        json_object_array_add(circuits_json,
                                                              circuit_json);
                                }
                                json_object_array_add(areas_json, area_json);
                        }
                }
+               return CMD_SUCCESS;
        }
+       isis = isis_lookup_by_vrfname(vrf_name);
+       if (isis != NULL) {
+               areas_json = json_object_new_array();
+               json_object_object_add(json, "areas", areas_json);
+               for (ALL_LIST_ELEMENTS_RO(isis->area_list, anode, area)) {
+                       area_json = json_object_new_object();
+                       json_object_string_add(area_json, "area",
+                                              area->area_tag ? area->area_tag
+                                                             : "null");
+
+                       circuits_json = json_object_new_array();
+                       json_object_object_add(area_json, "circuits",
+                                              circuits_json);
+                       for (ALL_LIST_ELEMENTS_RO(area->circuit_list, cnode,
+                                                 circuit)) {
+                               circuit_json = json_object_new_object();
+                               json_object_int_add(circuit_json, "circuit",
+                                                   circuit->circuit_id);
+                               if (!ifname)
+                                       isis_circuit_print_json(circuit,
+                                                               circuit_json,
+                                                               detail);
+                               else if (strcmp(circuit->interface->name,
+                                               ifname) == 0)
+                                       isis_circuit_print_json(circuit,
+                                                               circuit_json,
+                                                               detail);
+                               json_object_array_add(circuits_json,
+                                                     circuit_json);
+                       }
+                       json_object_array_add(areas_json, area_json);
+               }
+       }
+
        return CMD_SUCCESS;
 }
 
@@ -1087,37 +1075,10 @@ int show_isis_interface_common_vty(struct vty *vty, const char *ifname,
                vty_out(vty, "IS-IS Routing Process not enabled\n");
                return CMD_SUCCESS;
        }
-       if (vrf_name) {
-               if (all_vrf) {
-                       for (ALL_LIST_ELEMENTS_RO(im->isis, inode, isis)) {
-                               for (ALL_LIST_ELEMENTS_RO(isis->area_list,
-                                                         anode, area)) {
-                                       vty_out(vty, "Area %s:\n",
-                                               area->area_tag);
 
-                                       if (detail == ISIS_UI_LEVEL_BRIEF)
-                                               vty_out(vty,
-                                                       "  Interface   CircId   State    Type     Level\n");
-
-                                       for (ALL_LIST_ELEMENTS_RO(
-                                                    area->circuit_list, cnode,
-                                                    circuit))
-                                               if (!ifname)
-                                                       isis_circuit_print_vty(
-                                                               circuit, vty,
-                                                               detail);
-                                               else if (strcmp(circuit->interface->name, ifname) == 0)
-                                                       isis_circuit_print_vty(
-                                                               circuit, vty,
-                                                               detail);
-                               }
-                       }
-                       return CMD_SUCCESS;
-               }
-               isis = isis_lookup_by_vrfname(vrf_name);
-               if (isis != NULL) {
-                       for (ALL_LIST_ELEMENTS_RO(isis->area_list, anode,
-                                                 area)) {
+       if (all_vrf) {
+               for (ALL_LIST_ELEMENTS_RO(im->isis, inode, isis)) {
+                       for (ALL_LIST_ELEMENTS_RO(isis->area_list, anode, area)) {
                                vty_out(vty, "Area %s:\n", area->area_tag);
 
                                if (detail == ISIS_UI_LEVEL_BRIEF)
@@ -1127,15 +1088,37 @@ int show_isis_interface_common_vty(struct vty *vty, const char *ifname,
                                for (ALL_LIST_ELEMENTS_RO(area->circuit_list,
                                                          cnode, circuit))
                                        if (!ifname)
-                                               isis_circuit_print_vty(
-                                                       circuit, vty, detail);
-                                       else if (
-                                               strcmp(circuit->interface->name,
-                                                      ifname) == 0)
-                                               isis_circuit_print_vty(
-                                                       circuit, vty, detail);
+                                               isis_circuit_print_vty(circuit,
+                                                                      vty,
+                                                                      detail);
+                                       else if (strcmp(circuit->interface->name,
+                                                       ifname) == 0)
+                                               isis_circuit_print_vty(circuit,
+                                                                      vty,
+                                                                      detail);
                        }
                }
+               return CMD_SUCCESS;
+       }
+       isis = isis_lookup_by_vrfname(vrf_name);
+       if (isis != NULL) {
+               for (ALL_LIST_ELEMENTS_RO(isis->area_list, anode, area)) {
+                       vty_out(vty, "Area %s:\n", area->area_tag);
+
+                       if (detail == ISIS_UI_LEVEL_BRIEF)
+                               vty_out(vty,
+                                       "  Interface   CircId   State    Type     Level\n");
+
+                       for (ALL_LIST_ELEMENTS_RO(area->circuit_list, cnode,
+                                                 circuit))
+                               if (!ifname)
+                                       isis_circuit_print_vty(circuit, vty,
+                                                              detail);
+                               else if (strcmp(circuit->interface->name,
+                                               ifname) == 0)
+                                       isis_circuit_print_vty(circuit, vty,
+                                                              detail);
+               }
        }
 
        return CMD_SUCCESS;
@@ -1376,28 +1359,23 @@ int show_isis_neighbor_common(struct vty *vty, struct json_object *json,
                return CMD_SUCCESS;
        }
 
-       if (vrf_name) {
-               if (all_vrf) {
-                       for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis)) {
-                               if (id_to_sysid(isis, id, sysid)) {
-                                       vty_out(vty, "Invalid system id %s\n",
-                                               id);
-                                       return CMD_SUCCESS;
-                               }
-                               isis_neighbor_common(vty, json, id, detail,
-                                                    isis, sysid);
-                       }
-                       return CMD_SUCCESS;
-               }
-               isis = isis_lookup_by_vrfname(vrf_name);
-               if (isis != NULL) {
+       if (all_vrf) {
+               for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis)) {
                        if (id_to_sysid(isis, id, sysid)) {
                                vty_out(vty, "Invalid system id %s\n", id);
                                return CMD_SUCCESS;
                        }
-                       isis_neighbor_common(vty, json, id, detail, isis,
-                                            sysid);
+                       isis_neighbor_common(vty, json, id, detail, isis, sysid);
+               }
+               return CMD_SUCCESS;
+       }
+       isis = isis_lookup_by_vrfname(vrf_name);
+       if (isis != NULL) {
+               if (id_to_sysid(isis, id, sysid)) {
+                       vty_out(vty, "Invalid system id %s\n", id);
+                       return CMD_SUCCESS;
                }
+               isis_neighbor_common(vty, json, id, detail, isis, sysid);
        }
 
        return CMD_SUCCESS;
@@ -1461,27 +1439,23 @@ int clear_isis_neighbor_common(struct vty *vty, const char *id, const char *vrf_
                return CMD_SUCCESS;
        }
 
-       if (vrf_name) {
-               if (all_vrf) {
-                       for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis)) {
-                               if (id_to_sysid(isis, id, sysid)) {
-                                       vty_out(vty, "Invalid system id %s\n",
-                                               id);
-                                       return CMD_SUCCESS;
-                               }
-                               isis_neighbor_common_clear(vty, id, sysid,
-                                                          isis);
-                       }
-                       return CMD_SUCCESS;
-               }
-               isis = isis_lookup_by_vrfname(vrf_name);
-               if (isis != NULL) {
+       if (all_vrf) {
+               for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis)) {
                        if (id_to_sysid(isis, id, sysid)) {
                                vty_out(vty, "Invalid system id %s\n", id);
                                return CMD_SUCCESS;
                        }
                        isis_neighbor_common_clear(vty, id, sysid, isis);
                }
+               return CMD_SUCCESS;
+       }
+       isis = isis_lookup_by_vrfname(vrf_name);
+       if (isis != NULL) {
+               if (id_to_sysid(isis, id, sysid)) {
+                       vty_out(vty, "Invalid system id %s\n", id);
+                       return CMD_SUCCESS;
+               }
+               isis_neighbor_common_clear(vty, id, sysid, isis);
        }
 
        return CMD_SUCCESS;
@@ -2234,17 +2208,16 @@ DEFUN (show_hostname,
        struct isis *isis;
 
        ISIS_FIND_VRF_ARGS(argv, argc, idx_vrf, vrf_name, all_vrf);
-       if (vrf_name) {
-               if (all_vrf) {
-                       for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis))
-                               dynhn_print_all(vty, isis);
 
-                       return CMD_SUCCESS;
-               }
-               isis = isis_lookup_by_vrfname(vrf_name);
-               if (isis != NULL)
+       if (all_vrf) {
+               for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis))
                        dynhn_print_all(vty, isis);
+
+               return CMD_SUCCESS;
        }
+       isis = isis_lookup_by_vrfname(vrf_name);
+       if (isis != NULL)
+               dynhn_print_all(vty, isis);
 
        return CMD_SUCCESS;
 }
@@ -2307,17 +2280,15 @@ DEFUN(show_isis_spf_ietf, show_isis_spf_ietf_cmd,
                return CMD_SUCCESS;
        }
 
-       if (vrf_name) {
-               if (all_vrf) {
-                       for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis))
-                               isis_spf_ietf_common(vty, isis);
-
-                       return CMD_SUCCESS;
-               }
-               isis = isis_lookup_by_vrfname(vrf_name);
-               if (isis != NULL)
+       if (all_vrf) {
+               for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis))
                        isis_spf_ietf_common(vty, isis);
+
+               return CMD_SUCCESS;
        }
+       isis = isis_lookup_by_vrfname(vrf_name);
+       if (isis != NULL)
+               isis_spf_ietf_common(vty, isis);
 
        return CMD_SUCCESS;
 }
@@ -2596,17 +2567,16 @@ DEFUN(show_isis_summary, show_isis_summary_cmd,
        }
        if (uj)
                json = json_object_new_object();
-       if (vrf_name) {
-               if (all_vrf) {
-                       for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis))
-                               common_isis_summary(vty, json, isis);
 
-                       return CMD_SUCCESS;
-               }
-               isis = isis_lookup_by_vrfname(vrf_name);
-               if (isis != NULL)
+       if (all_vrf) {
+               for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis))
                        common_isis_summary(vty, json, isis);
+
+               return CMD_SUCCESS;
        }
+       isis = isis_lookup_by_vrfname(vrf_name);
+       if (isis != NULL)
+               common_isis_summary(vty, json, isis);
 
        if (uj)
                vty_json(vty, json);
@@ -2828,19 +2798,16 @@ static int show_isis_database(struct vty *vty, struct json_object *json, const c
        struct listnode *node;
        struct isis *isis;
 
-       if (vrf_name) {
-               if (all_vrf) {
-                       for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis))
-                               show_isis_database_common(vty, json, sysid_str,
-                                                         ui_level, isis);
-
-                       return CMD_SUCCESS;
-               }
-               isis = isis_lookup_by_vrfname(vrf_name);
-               if (isis)
+       if (all_vrf) {
+               for (ALL_LIST_ELEMENTS_RO(im->isis, node, isis))
                        show_isis_database_common(vty, json, sysid_str,
                                                  ui_level, isis);
+
+               return CMD_SUCCESS;
        }
+       isis = isis_lookup_by_vrfname(vrf_name);
+       if (isis)
+               show_isis_database_common(vty, json, sysid_str, ui_level, isis);
 
        return CMD_SUCCESS;
 }