diff options
Diffstat (limited to 'zebra')
-rw-r--r-- | zebra/zebra_pw.c | 1 | ||||
-rw-r--r-- | zebra/zebra_router.c | 4 | ||||
-rw-r--r-- | zebra/zserv.c | 6 |
3 files changed, 4 insertions, 7 deletions
diff --git a/zebra/zebra_pw.c b/zebra/zebra_pw.c index 006c1da02..09edbc9a6 100644 --- a/zebra/zebra_pw.c +++ b/zebra/zebra_pw.c @@ -153,6 +153,7 @@ void zebra_pw_update(struct zebra_pw *pw) { if (zebra_pw_check_reachability(pw) < 0) { zebra_pw_uninstall(pw); + zebra_pw_install_failure(pw); /* wait for NHT and try again later */ } else { /* diff --git a/zebra/zebra_router.c b/zebra/zebra_router.c index 9e09cbca3..a81752d20 100644 --- a/zebra/zebra_router.c +++ b/zebra/zebra_router.c @@ -202,10 +202,8 @@ void zebra_router_terminate(void) { struct zebra_router_table *zrt, *tmp; - RB_FOREACH_SAFE (zrt, zebra_router_table_head, &zrouter.tables, tmp) { - RB_REMOVE(zebra_router_table_head, &zrouter.tables, zrt); + RB_FOREACH_SAFE (zrt, zebra_router_table_head, &zrouter.tables, tmp) zebra_router_free_table(zrt); - } work_queue_free_and_null(&zrouter.ribq); meta_queue_free(zrouter.mq); diff --git a/zebra/zserv.c b/zebra/zserv.c index f5bb3aabb..80fdbefcd 100644 --- a/zebra/zserv.c +++ b/zebra/zserv.c @@ -816,10 +816,8 @@ void zserv_start(char *path) unlink(suna->sun_path); } - frr_elevate_privs(&zserv_privs) { - setsockopt_so_recvbuf(zsock, 1048576); - setsockopt_so_sendbuf(zsock, 1048576); - } + setsockopt_so_recvbuf(zsock, 1048576); + setsockopt_so_sendbuf(zsock, 1048576); frr_elevate_privs((sa.ss_family != AF_UNIX) ? &zserv_privs : NULL) { ret = bind(zsock, (struct sockaddr *)&sa, sa_len); |