1
0
mirror of https://github.com/NLnetLabs/routinator.git synced 2024-05-19 06:50:04 +00:00
Commit Graph

2256 Commits

Author SHA1 Message Date
0d5dde219f Try fix test also on Windows. 2024-05-17 15:46:29 +02:00
e25db0b9ed Fix test. 2024-05-17 15:33:08 +02:00
b6767c4945 Warn-log the config file used with certain commands. 2024-05-17 15:14:22 +02:00
5b7d38526b Import and switch to new UI. (#952)
This PR switches to using version 0.4.0 of the Routinator UI. It also changes
the way we import the UI into Routinator by simply including the built assets
in the contrib/ui directory and updating them if necessary.

The PR also imports the mechanism to collect assets and provide them to the
HTTP server from the now deprecated routinator-ui crate.
2024-05-01 14:58:41 +02:00
763d971e96 Don’t try to delete a broken RRDP archive twice during cleanup. (#956)
This PR fixes an issue where the RRDP collector tried to delete a corrupt
archive twice during cleanup resulting in a fatal error.
2024-05-01 14:02:33 +02:00
bf9ee156a5 Upgrade hyper to 1.0. (#955)
This PR updates hyper to 1.0 and adjusts the built-in HTTP server accordingly.
2024-04-29 18:15:52 +02:00
741089403e Update changelog. 2024-04-26 15:49:57 +02:00
2c1f31472f Check regression in manifest thisUpdate. (#954)
This PR adds a check for a regression in the manifest’s thisUpdate field.
This is similar to the manifest number check in an earlier PR.
2024-04-26 15:48:34 +02:00
cdeb5dbf0b Update changelog. 2024-04-11 17:44:53 +02:00
105dfe9406 Enforce same origin for all resources of an RRDP server. (#953)
This PR enforces that all resources fetched for an RRDP server have the same
origin as the URI provided in the CA certificate. It checks this for all
URIs provided in the server’s notification file and restricts redirects to
URIs with the same origin.
2024-04-11 17:43:11 +02:00
4b8a3d599b Remove redundant imports. 2024-04-11 16:21:47 +02:00
3d0e0c201d Update changelog. 2024-04-10 12:09:09 +02:00
070a6080b1 Ensure that RRDP delta hashes don’t changes between updates. (#951)
This PR ensures that the hash of an RRDP delta with a given serial doesn’t
change between updates. It stores the list of delta serials and hashes with
the RRDP repository state in its archive and checks that hashes for serial
numbers present both in the repository state and a new notification are
equal. Otherwise falls back to a snapshot update.

This PR implements the draft-ietf-sidrops-rrdp-desynchronization-00. The
draft suggests to limit the number of deltas stored. We are not yet doing
that. Instead this should be part of limiting the number of deltas taken out
of the notification file when parsing in a follow up PR in rpki-rs.

This PR changes the format of the repository state and thus increases its
version to 1. Strictly speaking, we never released version 0, but it’s been
in main from quite some time, so an increase feels prudent.
2024-04-10 12:05:44 +02:00
385e74da2a Update changelog. 2024-03-25 18:14:06 +01:00
1a692a5778 Store manifest number and check for regressions. (#946)
This PR adds a check for manifest number regressions when validating a
collected publication point. It stores the manifest number for each manifest
and checks against it when collecting a new manifest. If the latter’s number
has not increased, it falls back to the stored manifest. This behaviour is
mandated by RFC 9286.

The PR changes the data stored for manifests and thus updates the
StoredManifest version to 1. In order to avoid an endless stream of error
messages after an upgrade, it downgrades the logged message when
encountering an malformed StoredManifest to DEBUG.
2024-03-25 18:10:44 +01:00
a1b3de6cdb Update changelog. 2024-03-25 17:51:55 +01:00
daed4d4d86 Consider manifest cert for chain validity and note when points go stale. (#945)
This PR changes the code that calculates the validity of the full validation
chain to also consider the validity of the EE certificates of the
publication points along the chain. It also adds a new field in the jsonext
output format that provides the time when any of the publication points
along the validation chain become stale.
2024-03-25 17:49:32 +01:00
493eef84b5 Update changelog. 2024-03-21 18:13:29 +01:00
34a7cdbf98 Include the RRDP serial number and session ID in metrics on Not Modified- (#942)
This PR adds the current RRDP serial number and session ID to the RRDP
server metrics when a Not Modified response is received from the server.
This makes Prometheus have a constant value for this metrics.
2024-03-21 18:12:04 +01:00
7774129685 Update the current snapshot even if there is no delta. (#940)
This PR fixes an issue with calculating the refresh time under certain
conditions by updating the current internal payload snapshot even if the
delta to the previous snapshot is empty.

Because this snapshot also contains the expiry time of certificate first to
expire and this time is used as the refresh time if it is closer than the
configure refresh time (so the date derived from the expired certificate is
removed as soon as possible), not updating the snapshot can lead to a
refresh time in the past (effectively: an immediate refresh) if there is a
second, longer living object for an expiring object.
2024-03-21 18:10:29 +01:00
f1e85a7505 Update changelog. 2024-02-27 12:58:20 +01:00
0aeb46a305 Don’t have the RTR listener fail if a socket fails after accept. (#939)
This PR changes the RTR listener to not fail the accept loop when setting up
a stream after accepting it fails. Instead it will quietly drop the stream
in this case and keep going.

As part of this, the PR also drops tokio-stream as a dependency and
implements its own listener stream.

This PR fixes CVE-2024-1622 reported by Yohei Nishimura, Atsushi Enomoto,
Ruka Miyachi; Internet Multifeed Co., Japan.
2024-02-27 12:56:44 +01:00
c20ac6e942 Update changelog. 2024-01-26 12:11:35 +01:00
c8615b38d8 Unify line terminators in summary output format. (#907)
This PR unifies the line endings in the summary output format to use
semicolons everywhere.
2024-01-26 12:10:32 +01:00
2ac4fd7214 Update the NLnet Labs RPKI Testbed TAL. (#901)
This PR updates the nlnetlabs-testbed TAL to the current version.

---------

Co-authored-by: Tim Bruijnzeels <tim@nlnetlabs.nl>
2024-01-24 17:29:19 +01:00
5871b53926 Exclude the manual from the cargo package. (#910)
is PR excludes the doc/manual directory and some files in the root
directory from the files included with the package uploaded to crates.io
when publishing.
2024-01-24 17:28:58 +01:00
c7416082c7 Accept EC PRIVATE KEY items in PEM files. (#909)
This PR adds support for private keys marked as “EC PRIVATE KEY“ in the PEM
files for TLS server configuration.
2024-01-24 17:27:52 +01:00
4ea08f6464 Upgrade rpki-rs and ring. (#911)
This PR upgrades rpki-rs to 0.18 and ring to 0.17.
2024-01-24 17:13:07 +01:00
44c763b67e Replace num_cpus with std:🧵:available_parallelism. (#912)
This PR removes the dependency on the num_cpus crate by using the standard
library’s std:🧵:available_parallelism instead.
2024-01-24 17:12:40 +01:00
b92ee961ec Make dumping an empty cache succeed. (#918)
This PR fixes a number of error that can happen during dump when the cache is
missing certain directories.

This is a port of #916, originally added to the 0.13 series.
2024-01-24 17:00:02 +01:00
96adc81d03 Print a more meaningful message when decoding an object fails. (#924)
This PR changes the error message printed when decoding any of the RPKI
objects fails from whatever wondrous thing the decoder says to a generic
message stating that decoding an object of a certain expected type failed.

This PR is a port of #917, originally added to the 0.13 series.
2024-01-24 16:28:55 +01:00
ca3076b334 Directly log rsync error output. (#923)
This PR changes the rsync collector to directly log all stderr output from the rsync command rather than collecting it and then blasting it out all at once which can cause issues with the syslog daemon on some systems.
2024-01-16 09:53:17 +01:00
7e46f775a6 Update manual build dependencies. 2024-01-15 18:06:19 +01:00
fc0c56119c Only run packaging workflow automatically for releases. 2024-01-10 11:07:24 +01:00
5dc1e1345e Also run CI workflows for series branches. 2024-01-10 11:06:55 +01:00
262688a06e Update changelog and bump version. 2023-11-29 17:31:42 +01:00
c47461c17c Store RRDP data in one file per repository. (#886)
This PR implements a very simple archive that can be used to store, update,
and access the objects published by an RRDP repository in a single file.
2023-11-29 17:26:22 +01:00
53e79f93cc We probably don’t need the CODEOWNERS. 2023-11-24 14:15:25 +01:00
08a70f8f4a Merge branch 'main' of github.com:NLnetLabs/routinator 2023-11-24 14:06:54 +01:00
ec45c93df0 Add Github code owners. 2023-11-24 14:06:34 +01:00
1b8bb9cef4 remove twitter 2023-11-09 22:03:00 +01:00
e87b019d08 Drop mention of TAL directory in man page. 2023-11-07 13:28:49 +01:00
ce27115cb8 Curly braces for the Dockerfile. 2023-10-23 12:17:46 +02:00
b2fd9197c8 remove Twitter 2023-10-19 18:32:05 +02:00
97bb9d91c4 Merge branch 'main' of github.com:NLnetLabs/routinator 2023-10-19 15:00:57 +02:00
4e62753fd8 Dockerfile: use BASE_IMG also for final. 2023-10-19 15:00:43 +02:00
9e2c4a27df Update building features with Docker 2023-10-10 12:46:30 +02:00
875fbe7f94 Merge pull request #903 from ties/docs/how-to-enable-feature-in-docker
Describe how to enable feature in docker
2023-10-10 12:35:18 +02:00
f109eb7a65 Add sphinx_rtd_theme 2023-10-10 12:31:36 +02:00
e3aac92003 Describe how to enable feature in docker 2023-10-10 11:47:16 +02:00