diff --git a/src/peers.c b/src/peers.c index e4ac52b22..40fc0e53c 100644 --- a/src/peers.c +++ b/src/peers.c @@ -1740,6 +1740,9 @@ static int peer_treat_updatemsg(struct appctx *appctx, struct peer *p, int updt, memcpy(&expire, *msg_cur, expire_sz); *msg_cur += expire_sz; expire = ntohl(expire); + /* Protocol contains expire in MS, check if value is less than table config */ + if (expire > table->expire) + expire = table->expire; /* the rest of the code considers expire as ticks and not MS */ expire = MS_TO_TICKS(expire); }