diff options
| -rw-r--r-- | bgpd/bgp_evpn.c | 1 | ||||
| -rw-r--r-- | bgpd/bgp_main.c | 3 | ||||
| -rw-r--r-- | bgpd/bgpd.c | 1 | ||||
| -rw-r--r-- | bgpd/rfp-example/librfp/rfp_example.c | 4 | ||||
| -rw-r--r-- | staticd/static_vty.c | 8 | ||||
| -rw-r--r-- | tests/topotests/Dockerfile | 1 | ||||
| -rwxr-xr-x | tests/topotests/docker/frr-topotests.sh | 3 | ||||
| -rwxr-xr-x | tests/topotests/docker/inner/entrypoint.sh | 3 |
8 files changed, 14 insertions, 10 deletions
diff --git a/bgpd/bgp_evpn.c b/bgpd/bgp_evpn.c index 7be7937786..ac5880938f 100644 --- a/bgpd/bgp_evpn.c +++ b/bgpd/bgp_evpn.c @@ -2498,6 +2498,7 @@ static int install_evpn_route_entry_in_vrf(struct bgp *bgp_vrf, &attr_new->mp_nexthop_global))) SET_FLAG(pi->flags, BGP_PATH_IGP_CHANGED); + bgp_path_info_set_flag(rn, pi, BGP_PATH_ATTR_CHANGED); /* Unintern existing, set to new. */ bgp_attr_unintern(&pi->attr); pi->attr = attr_new; diff --git a/bgpd/bgp_main.c b/bgpd/bgp_main.c index f8ff4f2f07..47e7c1686f 100644 --- a/bgpd/bgp_main.c +++ b/bgpd/bgp_main.c @@ -235,6 +235,9 @@ static __attribute__((__noreturn__)) void bgp_exit(int status) bf_free(bm->rd_idspace); list_delete(&bm->bgp); + + bgp_lp_finish(); + memset(bm, 0, sizeof(*bm)); frr_fini(); diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c index 94cb285a03..d6be3228fe 100644 --- a/bgpd/bgpd.c +++ b/bgpd/bgpd.c @@ -7963,5 +7963,4 @@ void bgp_terminate(void) if (bm->t_rmap_update) BGP_TIMER_OFF(bm->t_rmap_update); - bgp_lp_finish(); } diff --git a/bgpd/rfp-example/librfp/rfp_example.c b/bgpd/rfp-example/librfp/rfp_example.c index af3092232c..e8f670cf12 100644 --- a/bgpd/rfp-example/librfp/rfp_example.c +++ b/bgpd/rfp-example/librfp/rfp_example.c @@ -255,8 +255,8 @@ static int rfp_cfg_write_cb(struct vty *vty, void *rfp_start_val) rfi->rfapi_config.holddown_factor); write++; } - if (rfi->rfapi_config.download_type != RFAPI_RFP_DOWNLOAD_FULL) { - vty_out(vty, " rfp full-table-download off\n"); + if (rfi->rfapi_config.download_type == RFAPI_RFP_DOWNLOAD_FULL) { + vty_out(vty, " rfp full-table-download on\n"); write++; } return write; diff --git a/staticd/static_vty.c b/staticd/static_vty.c index 59d4ae924b..ae0026cc97 100644 --- a/staticd/static_vty.c +++ b/staticd/static_vty.c @@ -1211,7 +1211,7 @@ DEFPY(ipv6_route_address_interface, { struct static_vrf *svrf; struct static_vrf *nh_svrf; - const char *flag; + const char *flag = NULL; if (table_str && vrf && !vrf_is_mapped_on_netns(vrf_lookup_by_name(vrf))) { vty_out(vty, @@ -1280,7 +1280,7 @@ DEFPY(ipv6_route_address_interface_vrf, VTY_DECLVAR_CONTEXT(vrf, vrf); struct static_vrf *svrf = vrf->info; struct static_vrf *nh_svrf; - const char *flag; + const char *flag = NULL; if (table_str && !vrf_is_mapped_on_netns(vrf)) { vty_out(vty, @@ -1341,7 +1341,7 @@ DEFPY(ipv6_route, { struct static_vrf *svrf; struct static_vrf *nh_svrf; - const char *flag; + const char *flag = NULL; if (table_str && vrf && !vrf_is_mapped_on_netns(vrf_lookup_by_name(vrf))) { vty_out(vty, @@ -1407,7 +1407,7 @@ DEFPY(ipv6_route_vrf, VTY_DECLVAR_CONTEXT(vrf, vrf); struct static_vrf *svrf = vrf->info; struct static_vrf *nh_svrf; - const char *flag; + const char *flag = NULL; if (table_str && !vrf_is_mapped_on_netns(vrf)) { vty_out(vty, diff --git a/tests/topotests/Dockerfile b/tests/topotests/Dockerfile index 72a876ed83..ea6fa4b9e0 100644 --- a/tests/topotests/Dockerfile +++ b/tests/topotests/Dockerfile @@ -72,7 +72,6 @@ RUN echo "" >> /etc/security/limits.conf; \ # Copy run scripts to facilitate users wanting to run the tests COPY docker/inner /opt/topotests -WORKDIR /root/topotests ENV PATH "$PATH:/opt/topotests" RUN echo "cat /opt/topotests/motd.txt" >> /root/.profile && \ diff --git a/tests/topotests/docker/frr-topotests.sh b/tests/topotests/docker/frr-topotests.sh index 673354f5da..8e93ed31ff 100755 --- a/tests/topotests/docker/frr-topotests.sh +++ b/tests/topotests/docker/frr-topotests.sh @@ -80,6 +80,8 @@ fi # them from the host however, they can be used just fine. # +export PATH="$PATH:/sbin:/usr/sbin:/usr/local/sbin" + for module in mpls-router mpls-iptunnel; do if modprobe -n $module 2> /dev/null; then : @@ -133,7 +135,6 @@ fi set -- --rm -i \ -v "$TOPOTEST_LOGS:/tmp" \ -v "$TOPOTEST_FRR:/root/host-frr:ro" \ - -v "$TOPOTEST_FRR/tests/topotests:/root/topotests:ro" \ -v "$TOPOTEST_BUILDCACHE:/root/persist" \ -e "TOPOTEST_CLEAN=$TOPOTEST_CLEAN" \ -e "TOPOTEST_VERBOSE=$TOPOTEST_VERBOSE" \ diff --git a/tests/topotests/docker/inner/entrypoint.sh b/tests/topotests/docker/inner/entrypoint.sh index 3050ec86d0..451d0a27d9 100755 --- a/tests/topotests/docker/inner/entrypoint.sh +++ b/tests/topotests/docker/inner/entrypoint.sh @@ -34,6 +34,8 @@ set -e "${CDIR}/compile_frr.sh" "${CDIR}/openvswitch.sh" +cd "${FRR_BUILD_DIR}/tests/topotests" + log_info "Setting permissions on /tmp so we can generate logs" chmod 1777 /tmp @@ -42,7 +44,6 @@ if [ $# -eq 0 ] || ([[ "$1" != /* ]] && [[ "$1" != ./* ]]); then export TOPOTESTS_CHECK_STDERR=Yes set -- pytest \ --junitxml /tmp/topotests.xml \ - -o cache_dir=/tmp \ "$@" fi |
