summaryrefslogtreecommitdiff
path: root/ospfd/ospf_opaque.c
diff options
context:
space:
mode:
Diffstat (limited to 'ospfd/ospf_opaque.c')
-rw-r--r--ospfd/ospf_opaque.c25
1 files changed, 16 insertions, 9 deletions
diff --git a/ospfd/ospf_opaque.c b/ospfd/ospf_opaque.c
index 5ba61b3184..3939b5479f 100644
--- a/ospfd/ospf_opaque.c
+++ b/ospfd/ospf_opaque.c
@@ -126,6 +126,8 @@ void ospf_opaque_term(void)
void ospf_opaque_finish(void)
{
+ ospf_mpls_te_finish();
+
ospf_router_info_finish();
ospf_ext_finish();
@@ -1159,7 +1161,8 @@ void ospf_opaque_config_write_debug(struct vty *vty)
return;
}
-void show_opaque_info_detail(struct vty *vty, struct ospf_lsa *lsa)
+void show_opaque_info_detail(struct vty *vty, struct ospf_lsa *lsa,
+ json_object *json)
{
struct lsa_header *lsah = lsa->data;
uint32_t lsid = ntohl(lsah->id.s_addr);
@@ -1169,13 +1172,17 @@ void show_opaque_info_detail(struct vty *vty, struct ospf_lsa *lsa)
/* Switch output functionality by vty address. */
if (vty != NULL) {
- vty_out(vty, " Opaque-Type %u (%s)\n", opaque_type,
- ospf_opaque_type_name(opaque_type));
- vty_out(vty, " Opaque-ID 0x%x\n", opaque_id);
-
- vty_out(vty, " Opaque-Info: %u octets of data%s\n",
- ntohs(lsah->length) - OSPF_LSA_HEADER_SIZE,
- VALID_OPAQUE_INFO_LEN(lsah) ? "" : "(Invalid length?)");
+ if (!json) {
+ vty_out(vty, " Opaque-Type %u (%s)\n", opaque_type,
+ ospf_opaque_type_name(opaque_type));
+ vty_out(vty, " Opaque-ID 0x%x\n", opaque_id);
+
+ vty_out(vty, " Opaque-Info: %u octets of data%s\n",
+ ntohs(lsah->length) - OSPF_LSA_HEADER_SIZE,
+ VALID_OPAQUE_INFO_LEN(lsah)
+ ? ""
+ : "(Invalid length?)");
+ }
} else {
zlog_debug(" Opaque-Type %u (%s)", opaque_type,
ospf_opaque_type_name(opaque_type));
@@ -1200,7 +1207,7 @@ void ospf_opaque_lsa_dump(struct stream *s, uint16_t length)
struct ospf_lsa lsa;
lsa.data = (struct lsa_header *)stream_pnt(s);
- show_opaque_info_detail(NULL, &lsa);
+ show_opaque_info_detail(NULL, &lsa, NULL);
return;
}