Hash was already performed on cache/vrp data
this performs it for slurm as well,
preventing uneeded refreshes when neither
file have changed.
Partial fix for https://github.com/bgp/stayrtr/issues/114.
Returns false and aborts the data addition if there is no change in the delta.
Use this to shortcut applyUpdateFromNewState() which prevents sending out
notifications for empty deltas.
The AFI was removed from the ASPA profile so don't expect it anymore.
Now RTR is still using an old idea of ASPA profile so there just
duplicate the object once for IPv4 and once for IPv6. At some points
SIDROPS may finally fix this but for now this allows to export ASPA
objects that follow the rpki-client JSON (which no longer has the
AFI in the ASPA table).
This fixes https://github.com/bgp/stayrtr/issues/44, otherwise
default settings means that OctoRPKI does not load correctly with
StayRTR.
Me and Job figure that its not worth supporting FORT files since
they have their own RTR-er.
It is not pretty, I didnt really want to overhaul the whole tool
since I also use this tool to test my own releases of stayrtr.
So instead bgpsec router keys are injected as "special" VRPs.
Since RTRMon is not complying to a standard, I feel we can be more
flexible here.
Tag: https://github.com/bgp/stayrtr/issues/57
This imports and exports BGPsec router key data, and exports router
key data out over RTR to supporting clients (any version higher than 1)
Since it's obvious that at some point there will be clients that will
have issues seeing a RouterKey PDU for the first time ever, I've
included a -disable.bgpsec flag to prevent them from being sent.
That way if someone is caught off guard during an upgrade, they can
disable it and keep upgrading.
Tag: https://github.com/bgp/stayrtr/issues/57
This does a bunch of work (and it's not fully done, since VRP needs
to be converted into *VRP across the codebase to ensure that SetFlag()
works) to let what was the VRPManager diffing/dispatch system support
things that are not VRPs. We need to do this since we are looking
to support BGPsec Router Keys and ASPA objects soon. And a previous
attempt to write such support resulted in a unaccptable amount of
duplicate code.
Doing it this way will also make it a lot easier to extend StayRTR
to support whatever is after ASPA.
Previously if you had a very slow backend, the refresh timer for a reload
would only start after the current refresh has finished.
Now the timer will run after the timer fires for the last one.
This helps avoid the client being torpedod by very slow backends
Tag: https://github.com/bgp/stayrtr/issues/53
First, VRPs that have expiry times are now checked, and they are
filtered out at import time.
Second, If a VRP JSON file is too old, and the "current state"
(in the case of a update) is too old, the state will empty to avoid
routing on old data.
Third, Every time a refresh cycle now happens, the file is reprocessed
to check for expiry, if the resulting VRPs from that procesing changes
then a new update+serial is pushed
Tag: https://github.com/bgp/stayrtr/issues/15