summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--proto/ospf/topology.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/proto/ospf/topology.c b/proto/ospf/topology.c
index c368d91..027ef8f 100644
--- a/proto/ospf/topology.c
+++ b/proto/ospf/topology.c
@@ -94,7 +94,10 @@ originate_rt_lsa_body(struct ospf_area *oa, u16 * length)
ln->data = 0xffffffff;
}
else
+ {
+ ln--;
i--; /* No link added */
+ }
}
break;
case OSPF_IT_BCAST:
@@ -146,10 +149,19 @@ originate_rt_lsa_body(struct ospf_area *oa, u16 * length)
rt->veb.bit.v = 1;
}
else
+ {
+ ln--;
i--; /* No link added */
+ }
+ break;
+ default:
+ ln--;
+ i--; /* No link added */
+ log("Unknown interface type");
break;
}
}
+ ln++;
}
rt->links = i;
*length = i * sizeof(struct ospf_lsa_rt_link) + sizeof(struct ospf_lsa_rt) +