From: Quentin Young Date: Wed, 6 Feb 2019 16:38:38 +0000 (+0000) Subject: vrrpd: fix skew time calculation X-Git-Tag: base_7.2~330^2~102 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=2884f9bbe40a2dce56f910695c000de83bd361c1;p=mirror%2Ffrr.git vrrpd: fix skew time calculation Signed-off-by: Quentin Young --- diff --git a/vrrpd/vrrp.c b/vrrpd/vrrp.c index 76f8dfea5d..a03c675010 100644 --- a/vrrpd/vrrp.c +++ b/vrrpd/vrrp.c @@ -88,8 +88,8 @@ static void vrrp_mac_set(struct ethaddr *mac, bool v6, uint8_t vrid) */ static void vrrp_recalculate_timers(struct vrrp_router *r) { - uint16_t skmai = (r->vr->version - 2) * r->master_adver_interval; - r->skew_time = ((256 - r->vr->priority) * skmai) / 256; + uint16_t skm = (r->vr->version == 3) ? r->master_adver_interval : 1; + r->skew_time = ((256 - r->vr->priority) * skm) / 256; r->master_down_interval = (3 * r->master_adver_interval); r->master_down_interval += r->skew_time; }