summaryrefslogtreecommitdiffstats
path: root/proto/ospf/ospf.c
diff options
context:
space:
mode:
Diffstat (limited to 'proto/ospf/ospf.c')
-rw-r--r--proto/ospf/ospf.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/proto/ospf/ospf.c b/proto/ospf/ospf.c
index 0ab99f9..a0ec48f 100644
--- a/proto/ospf/ospf.c
+++ b/proto/ospf/ospf.c
@@ -323,6 +323,13 @@ ospf_sh_neigh(struct proto *p, char *iff)
struct ospf_iface *ifa=NULL,*f;
struct ospf_neighbor *n;
struct proto_ospf *po=(struct proto_ospf *)p;
+
+ if(p->proto_state != PS_UP)
+ {
+ cli_msg(-1013,"%s: is not up", p->name);
+ cli_msg(0,"");
+ return;
+ }
if(iff!=NULL)
{
@@ -366,6 +373,13 @@ ospf_sh(struct proto *p)
int nno;
int adjno;
+ if(p->proto_state != PS_UP)
+ {
+ cli_msg(-1014,"%s: is not up", p->name);
+ cli_msg(0,"");
+ return;
+ }
+
cli_msg(-1014,"%s:", p->name);
cli_msg(-1014,"Number of areas: %u", po->areano);
@@ -404,6 +418,13 @@ ospf_sh_iface(struct proto *p, char *iff)
int nno;
int adjno;
+ if(p->proto_state != PS_UP)
+ {
+ cli_msg(-1015,"%s: is not up", p->name);
+ cli_msg(0,"");
+ return;
+ }
+
if(iff!=NULL)
{
WALK_LIST(f, po->iface_list)