]> git.puffer.fish Git - matthieu/frr.git/commitdiff
bgpd: fix crash while configuring rt
authorMitesh Kanjariya <mitesh@marvel-07.cumulusnetworks.com>
Thu, 29 Jun 2017 21:16:49 +0000 (14:16 -0700)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Tue, 8 Aug 2017 14:28:51 +0000 (10:28 -0400)
Ticket: CM-16410
Review: CCR-6409
Unit-test: Manual

Signed-off-by: Mitesh Kanjariya <mitesh@cumulusnetworks.com>
bgpd/bgp_evpn_vty.c

index be88fcd2733adde58f119e7ef522887adfbe1aae..886d2a02c61ed4c389ee44abfe6616a34145f0e1 100644 (file)
@@ -2563,11 +2563,11 @@ DEFUN (bgp_evpn_vni_rt,
        if (rt_type == RT_TYPE_BOTH || rt_type == RT_TYPE_IMPORT) {
                ecomadd = ecommunity_str2com(argv[2]->arg,
                                             ECOMMUNITY_ROUTE_TARGET, 0);
-               ecommunity_str(ecomadd);
                if (!ecomadd) {
                        vty_out(vty, "%% Malformed Route Target list\n");
                        return CMD_WARNING;
                }
+               ecommunity_str(ecomadd);
 
                /* Do nothing if we already have this import route-target */
                if (!bgp_evpn_rt_matches_existing(vpn->import_rtl, ecomadd))
@@ -2578,11 +2578,11 @@ DEFUN (bgp_evpn_vni_rt,
        if (rt_type == RT_TYPE_BOTH || rt_type == RT_TYPE_EXPORT) {
                ecomadd = ecommunity_str2com(argv[2]->arg,
                                             ECOMMUNITY_ROUTE_TARGET, 0);
-               ecommunity_str(ecomadd);
                if (!ecomadd) {
                        vty_out(vty, "%% Malformed Route Target list\n");
                        return CMD_WARNING;
                }
+               ecommunity_str(ecomadd);
 
                /* Do nothing if we already have this export route-target */
                if (!bgp_evpn_rt_matches_existing(vpn->export_rtl, ecomadd))
@@ -2645,11 +2645,11 @@ DEFUN (no_bgp_evpn_vni_rt,
        }
 
        ecomdel = ecommunity_str2com(argv[3]->arg, ECOMMUNITY_ROUTE_TARGET, 0);
-       ecommunity_str(ecomdel);
        if (!ecomdel) {
                vty_out(vty, "%% Malformed Route Target list\n");
                return CMD_WARNING;
        }
+       ecommunity_str(ecomdel);
 
        if (rt_type == RT_TYPE_IMPORT) {
                if (!bgp_evpn_rt_matches_existing(vpn->import_rtl, ecomdel)) {