ospf6d: Add the missing ospf6 running check in show cmds

SYMPTOM:

If some of the ospfv3 commands like 'show ipv6 ospf6 route' are executed
with ospf6d daemon running but before having any ospfv3 configuration, then
ospf6d crash is seen.

ISSUE:

There are a few show commands, which are (unlike others) not checking if
ospf6 instance is initialized already.

FIX:

Add the missing checks, by using OSPF6_CMD_CHECK_RUNNING() in the commands
where its needed and not yet used.

Signed-off-by: Vipin Kumar <vipin@cumulusnetworks.com>
Reviewed-by: Pradosh Mohapatra <pmohapat@cumulusnetworks.com>
             Dinesh Dutt <ddutt@cumulusnetworks.com>
diff --git a/ospf6d/ospf6_area.c b/ospf6d/ospf6_area.c
index 0967482..1861fe7 100644
--- a/ospf6d/ospf6_area.c
+++ b/ospf6d/ospf6_area.c
@@ -666,6 +666,8 @@
   struct ospf6_route *route;
   struct prefix prefix;
 
+  OSPF6_CMD_CHECK_RUNNING ();
+
   ospf6_linkstate_prefix (ospf6->router_id, htonl (0), &prefix);
 
   for (ALL_LIST_ELEMENTS_RO (ospf6->area_list, node, oa))
@@ -701,6 +703,8 @@
   struct ospf6_route *route;
   struct prefix prefix;
 
+  OSPF6_CMD_CHECK_RUNNING ();
+
   ospf6_linkstate_prefix (ospf6->router_id, htonl (0), &prefix);
 
   if (inet_pton (AF_INET, argv[0], &area_id) != 1)
@@ -747,6 +751,8 @@
   struct ospf6_route_table *spf_table;
   unsigned char tmp_debug_ospf6_spf = 0;
 
+  OSPF6_CMD_CHECK_RUNNING ();
+
   inet_pton (AF_INET, argv[0], &router_id);
   ospf6_linkstate_prefix (router_id, htonl (0), &prefix);
 
diff --git a/ospf6d/ospf6_asbr.c b/ospf6d/ospf6_asbr.c
index 6db1ca9..265a178 100644
--- a/ospf6d/ospf6_asbr.c
+++ b/ospf6d/ospf6_asbr.c
@@ -1291,6 +1291,8 @@
 {
   struct ospf6_route *route;
 
+  OSPF6_CMD_CHECK_RUNNING ();
+
   ospf6_redistribute_show_config (vty);
 
   for (route = ospf6_route_head (ospf6->external_table); route;
diff --git a/ospf6d/ospf6_top.c b/ospf6d/ospf6_top.c
index 145a88e..7ec4309 100644
--- a/ospf6d/ospf6_top.c
+++ b/ospf6d/ospf6_top.c
@@ -1155,6 +1155,8 @@
        ROUTE_STR
        )
 {
+  OSPF6_CMD_CHECK_RUNNING ();
+
   ospf6_route_table_show (vty, argc, argv, ospf6->route_table);
   return CMD_SUCCESS;
 }
@@ -1186,6 +1188,8 @@
   const char *sargv[CMD_ARGC_MAX];
   int i, sargc;
 
+  OSPF6_CMD_CHECK_RUNNING ();
+
   /* copy argv to sargv and then append "match" */
   for (i = 0; i < argc; i++)
     sargv[i] = argv[i];
@@ -1220,6 +1224,8 @@
   sargv[sargc++] = "detail";
   sargv[sargc] = NULL;
 
+  OSPF6_CMD_CHECK_RUNNING ();
+
   ospf6_route_table_show (vty, sargc, sargv, ospf6->route_table);
   return CMD_SUCCESS;
 }
@@ -1284,6 +1290,8 @@
   sargv[sargc++] = "detail";
   sargv[sargc] = NULL;
 
+  OSPF6_CMD_CHECK_RUNNING ();
+
   ospf6_route_table_show (vty, sargc, sargv, ospf6->route_table);
   return CMD_SUCCESS;
 }
diff --git a/ospf6d/ospf6d.c b/ospf6d/ospf6d.c
index f9b0322..eae01af 100644
--- a/ospf6d/ospf6d.c
+++ b/ospf6d/ospf6d.c
@@ -1690,6 +1690,8 @@
   struct listnode *node;
   struct ospf6_area *oa;
 
+  OSPF6_CMD_CHECK_RUNNING ();
+
   for (ALL_LIST_ELEMENTS_RO (ospf6->area_list, node, oa))
     {
       vty_out (vty, "%s        SPF Result in Area %s%s%s",
@@ -1738,6 +1740,8 @@
   struct listnode *node;
   struct ospf6_area *oa;
 
+  OSPF6_CMD_CHECK_RUNNING ();
+
   /* copy argv to sargv and then append "detail" */
   for (i = 0; i < argc; i++)
     sargv[i] = argv[i];