]> git.proxmox.com Git - mirror_frr.git/commitdiff
Merge pull request #3638 from pguibert6WIND/crash_manual_config_l3vpn
authorRuss White <russ@riw.us>
Tue, 22 Jan 2019 00:20:53 +0000 (19:20 -0500)
committerGitHub <noreply@github.com>
Tue, 22 Jan 2019 00:20:53 +0000 (19:20 -0500)
bgpd: do not crash when removing ip vpn entries

bgpd/bgp_route.c

index 6bce7261aebe364d7fa747bc5696211b3f9df6f9..07077dfe1f035c3986227e26c5815834115ebd77 100644 (file)
@@ -5081,6 +5081,9 @@ void bgp_static_delete(struct bgp *bgp)
                                        bgp_static =
                                                bgp_node_get_bgp_static_info(
                                                        rm);
+                                       if (!bgp_static)
+                                               continue;
+
                                        bgp_static_withdraw_safi(
                                                bgp, &rm->p, AFI_IP, safi,
                                                (struct prefix_rd *)&rn->p);
@@ -5257,8 +5260,6 @@ int bgp_static_set_safi(afi_t afi, safi_t safi, struct vty *vty,
        if (!bgp_node_has_bgp_path_info_data(prn))
                bgp_node_set_bgp_table_info(prn,
                                            bgp_table_init(bgp, afi, safi));
-       else
-               bgp_unlock_node(prn);
        table = bgp_node_get_bgp_table_info(prn);
 
        rn = bgp_node_get(table, &p);