From: Kazuki Yamaguchi Date: Wed, 3 Jun 2020 13:05:35 +0000 (+0200) Subject: RPKI: Fix unnecessary reconnection on reconfiguration X-Git-Tag: v2.0.8~63 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=19f8f173202d6f5cbf97ca2a9f66fcea6b9bb44f;p=thirdparty%2Fbird.git RPKI: Fix unnecessary reconnection on reconfiguration Compare the new timing parameters with the old configuration, not with the temporary state of the current connection. The timing values in struct rpki_cache is updated by a version 1 End Of Data PDU, unless this behavior is suppressed by the configuration explicitly by the "keep" keyword. Consequently, every reconfiguration of BIRD triggers a reconnection even if it is not necessary. --- diff --git a/proto/rpki/rpki.c b/proto/rpki/rpki.c index aa07f7d9d..3e46b6d19 100644 --- a/proto/rpki/rpki.c +++ b/proto/rpki/rpki.c @@ -701,7 +701,7 @@ rpki_reconfigure_cache(struct rpki_proto *p UNUSED, struct rpki_cache *cache, st #endif #define TEST_INTERVAL(name, Name) \ - if (cache->name##_interval != new->name##_interval || \ + if (old->name##_interval != new->name##_interval || \ old->keep_##name##_interval != new->keep_##name##_interval) \ { \ cache->name##_interval = new->name##_interval; \