diff options
| -rw-r--r-- | bgpd/bgp_evpn.c | 2 | ||||
| -rw-r--r-- | doc/developer/topotests.rst | 1 | ||||
| -rw-r--r-- | ospf6d/ospf6_flood.c | 12 | ||||
| -rw-r--r-- | tests/topotests/bgp_l3vpn_to_bgp_vrf/scripts/scale_up.py | 11 | ||||
| -rw-r--r-- | tests/topotests/lib/ltemplate.py | 1 | ||||
| -rwxr-xr-x | tests/topotests/lib/lutil.py | 8 |
6 files changed, 18 insertions, 17 deletions
diff --git a/bgpd/bgp_evpn.c b/bgpd/bgp_evpn.c index 79a8fae530..a93f81a8d8 100644 --- a/bgpd/bgp_evpn.c +++ b/bgpd/bgp_evpn.c @@ -2704,6 +2704,8 @@ static int install_evpn_route_entry_in_vrf(struct bgp *bgp_vrf, pi->attr = attr_new; pi->uptime = bgp_clock(); } + /* as it is an importation, change nexthop */ + bgp_path_info_set_flag(rn, pi, BGP_PATH_ANNC_NH_SELF); bgp_aggregate_increment(bgp_vrf, &rn->p, pi, afi, safi); diff --git a/doc/developer/topotests.rst b/doc/developer/topotests.rst index c2e72e2ec5..33ebe06d2f 100644 --- a/doc/developer/topotests.rst +++ b/doc/developer/topotests.rst @@ -79,6 +79,7 @@ If you prefer to manually build FRR, then use the following suggested config: --sysconfdir=/etc/frr \ --enable-vtysh \ --enable-pimd \ + --enable-sharpd \ --enable-multipath=64 \ --enable-user=frr \ --enable-group=frr \ diff --git a/ospf6d/ospf6_flood.c b/ospf6d/ospf6_flood.c index 0828c2beb6..15dbd0716a 100644 --- a/ospf6d/ospf6_flood.c +++ b/ospf6d/ospf6_flood.c @@ -842,18 +842,6 @@ void ospf6_receive_lsa(struct ospf6_neighbor *from, zlog_debug("Received is duplicated LSA"); SET_FLAG(new->flag, OSPF6_LSA_DUPLICATE); } - if (old->header->adv_router - == from->ospf6_if->area->ospf6->router_id - && OSPF6_LSA_IS_MAXAGE(new)) { - ospf6_acknowledge_lsa(new, ismore_recent, from); - ospf6_lsa_delete(new); - if (is_debug) - zlog_debug( - "%s: Received is self orig MAXAGE LSA %s, discard (ismore_recent %d)", - __PRETTY_FUNCTION__, old->name, - ismore_recent); - return; - } } /* if no database copy or received is more recent */ diff --git a/tests/topotests/bgp_l3vpn_to_bgp_vrf/scripts/scale_up.py b/tests/topotests/bgp_l3vpn_to_bgp_vrf/scripts/scale_up.py index 21543ab78e..4ecaa4c026 100644 --- a/tests/topotests/bgp_l3vpn_to_bgp_vrf/scripts/scale_up.py +++ b/tests/topotests/bgp_l3vpn_to_bgp_vrf/scripts/scale_up.py @@ -23,15 +23,16 @@ for rtr in rtrs: mem_z[rtr] = {'value': int(found.group(1)), 'units': found.group(2)} mem_b[rtr] = {'value': int(found.group(3)), 'units': found.group(4)} -luCommand('ce1', 'vtysh -c "sharp data nexthop"', 'sharpd is not running', 'none','check if sharpd running') -doSharp = True +luCommand('ce1', 'vtysh -c "show mem"', 'qmem sharpd', 'none','check if sharpd running') +doSharp = False found = luLast() if ret != False and found != None: if len(found.group()): - luCommand('ce1', 'vtysh -c "sharp data nexthop"', 'sharpd is not running', 'pass','sharpd NOT running, skipping test') - doSharp = False + doSharp = True -if doSharp == True: +if doSharp != True: + luCommand('ce1', 'vtysh -c "sharp data nexthop"', '.', 'pass','sharpd NOT running, skipping test') +else: luCommand('ce1', 'vtysh -c "sharp install routes 10.0.0.0 nexthop 99.0.0.1 {}"'.format(num),'','pass','Adding {} routes'.format(num)) luCommand('ce2', 'vtysh -c "sharp install routes 10.0.0.0 nexthop 99.0.0.2 {}"'.format(num),'','pass','Adding {} routes'.format(num)) rtrs = ['ce1', 'ce2', 'ce3'] diff --git a/tests/topotests/lib/ltemplate.py b/tests/topotests/lib/ltemplate.py index 1d12d11a26..a76d8e4b08 100644 --- a/tests/topotests/lib/ltemplate.py +++ b/tests/topotests/lib/ltemplate.py @@ -134,6 +134,7 @@ def teardown_module(mod): tgen = get_topogen() if _lt != None and _lt.scriptdir != None and _lt.prestarthooksuccess == True: + luShowResults(logger.info) print(luFinish()) # This function tears down the whole topology. diff --git a/tests/topotests/lib/lutil.py b/tests/topotests/lib/lutil.py index 7c89ada013..4ea97a3692 100755 --- a/tests/topotests/lib/lutil.py +++ b/tests/topotests/lib/lutil.py @@ -336,6 +336,14 @@ def luNumPass(): def luResult(target, success, str, logstr=None): return LUtil.result(target, success, str, logstr) +def luShowResults(prFunction): + printed = 0 + sf = open(LUtil.fsum_name, 'r') + for line in sf: + printed+=1 + prFunction(line.rstrip()) + sf.close() + def luShowFail(): printed = 0 sf = open(LUtil.fsum_name, 'r') |
