+Version 3.0alpha2 (2023-05-11)
+ o Fixed memory leaks and use-after free bugs
+ o Simple thread work balancing
+ o MRT switched off
+ o Slow kernel route synchronization to be fixed later
+
+Version 3.0alpha1 (2023-04-18)
+ o Worker threads for BGP, Pipe, RPKI and BFD
+ o Configurable number of threads
+ o Asynchronous route export
+ o Flat attribute structure
+ o Inline import tables
+ o Export tables merged with BGP prefix / attribute buckets
+ o Fixed ROA check locking inversion in route table dumps
+ o MRT switched off
+
+Version 3.0-alpha0 (2022-02-07)
+ o Removal of fixed protocol-specific route attributes
+ o Asynchronous route export
+ o Explicit table import / export hooks
+ o Partially lockless route attribute cache
+ o Thread-safe resource management
+ o Thread-safe interface notifications
+ o Thread-safe protocol API
+ o Adoption of BFD IO loop for general use
+ o Parallel Pipe protocol
+ o Parallel RPKI protocol
+ o Parallel BGP protocol
+ o Lots of refactoring
+ o Bugfixes and improvements as they came along
+
+
+ Version 2.15.1 (2024-03-22)
+ o OSPF: Fix regression in handling PtP links
+ o RPKI: Handle connection resets properly
+ o Static: Reject invalid combination of options
+ o Fix builds with limited set of protocols
+
Version 2.15 (2024-03-10)
o BGP: Send hold timer
o BGP: New options to specify required BGP capabilities
tm_stop(cache->expire_timer);
}
+static void
+rpki_stop_all_timers(struct rpki_cache *cache)
+{
+ rpki_stop_refresh_timer_event(cache);
+ rpki_stop_retry_timer_event(cache);
+ rpki_stop_expire_timer_event(cache);
+}
+
static int
- rpki_do_we_recv_prefix_pdu_in_last_seconds(struct rpki_cache *cache)
+ rpki_sync_is_stuck(struct rpki_cache *cache)
{
- if (!cache->last_rx_prefix)
- return 0;
-
- return ((current_time() - cache->last_rx_prefix) <= 2 S);
+ return !sk_rx_ready(cache->tr_sock->sk) && (
+ !cache->last_rx_prefix || (current_time() - cache->last_rx_prefix > 10 S)
+ );
}
/**