summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2015-10-22 11:35:18 +0300
committervivek <vivek@cumulusnetworks.com>2016-06-06 10:41:00 -0700
commite9a0c65615282fe14a00af70207d620fbc19f98f (patch)
tree0401752a867ff30845991b7ce4043242e29f0023
parent0cd0d97907b09efaadd9e91ff57cb4391a45fc2b (diff)
bgpd: update rtt on soft clear
rtt is calculated dynamically by the kernel. Refresh it on soft clear. Fixes: ef757700d0 "bgpd: allow using rtt in route-map's set metric" Signed-off-by: Timo Teräs <timo.teras@iki.fi> (cherry picked from commit 5a2a1ec18c89daec5de6690a9b0f47c0d11a0f2d) Conflicts: bgpd/bgpd.c
-rw-r--r--bgpd/bgpd.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c
index 1e61b0fa2c..fca6e5bb1b 100644
--- a/bgpd/bgpd.c
+++ b/bgpd/bgpd.c
@@ -27,6 +27,7 @@ Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
#include "stream.h"
#include "command.h"
#include "sockunion.h"
+#include "sockopt.h"
#include "network.h"
#include "memory.h"
#include "filter.h"
@@ -5982,6 +5983,8 @@ peer_clear_soft (struct peer *peer, afi_t afi, safi_t safi,
if (! peer->afc[afi][safi])
return BGP_ERR_AF_UNCONFIGURED;
+ peer->rtt = sockopt_tcp_rtt (peer->fd);
+
if (stype == BGP_CLEAR_SOFT_OUT || stype == BGP_CLEAR_SOFT_BOTH)
{
/* Clear the "neighbor x.x.x.x default-originate" flag */