]> git.puffer.fish Git - matthieu/frr.git/commitdiff
bgpd: fix crash in displaying json orf prefix-list
authorLouis Scalbert <louis.scalbert@6wind.com>
Thu, 9 Jan 2025 17:28:53 +0000 (18:28 +0100)
committerLouis Scalbert <louis.scalbert@6wind.com>
Thu, 9 Jan 2025 17:35:18 +0000 (18:35 +0100)
bgpd crashes when there is several entries in the prefix-list. No
backtrace is provided because the issue was catched from a code review.

Fixes: 856ca177c4 ("Added json formating support to show-...-neighbors-... bgp commands.")
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
lib/plist.c

index cd9a0f299b5c2cd53143169ad30780822b89959c..713eee25ed70652c14f939fd89d5b6fa059101e2 100644 (file)
@@ -1536,7 +1536,6 @@ int prefix_bgp_show_prefix_list(struct vty *vty, afi_t afi, char *name,
        if (use_json) {
                json = json_object_new_object();
                json_prefix = json_object_new_object();
-               json_list = json_object_new_object();
 
                json_object_int_add(json_prefix, "prefixListCounter",
                                    plist->count);
@@ -1544,6 +1543,8 @@ int prefix_bgp_show_prefix_list(struct vty *vty, afi_t afi, char *name,
                                       plist->name);
 
                for (pentry = plist->head; pentry; pentry = pentry->next) {
+                       json_list = json_object_new_object();
+
                        json_object_int_add(json_list, "seq", pentry->seq);
                        json_object_string_add(json_list, "seqPrefixListType",
                                               prefix_list_type_str(pentry));