Commit Graph
80 Commits
Author SHA1 Message Date
Tim BruijnzeelsandGitHub 01e54ff22f Support offline ta (#985) 2023-01-24 10:30:22 +01:00
Tim BruijnzeelsandGitHub 81f9a479a7 Add support for importing CAs (#968) with ROAs (#969) 2022-11-25 12:51:51 +01:00
a29651fa2a Use write-ahead log for RepositoryContent. (#940)
- Add support for write-ahead logging.
- Use write-ahead log for RepositoryContent.
- Migrate old style RepositoryContent if present
- Schedule updating full snapshots every 24 hours

Co-authored-by: ximon18 <3304436+ximon18@users.noreply.github.com>
2022-10-13 12:09:23 +02:00
Tim BruijnzeelsandGitHub 8b51702c62 Show ROA objects (#864)
* Show ROA objects
* Add functional (regression) test for roa comments
2022-09-19 16:41:56 +02:00
Tim BruijnzeelsandGitHub 7c98a2a74e Include (optional) comment with configured (ROA) authorisations. #863 2022-09-06 17:14:52 +02:00
Tim Bruijnzeels 266cf2e06d API to add parent should not change #898 2022-08-29 16:51:39 +02:00
Tim Bruijnzeels 9443792dc1 API to upload repository response should not change #895 2022-08-29 16:51:39 +02:00
Tim Bruijnzeels 46d09f795a Depend on rpki-rs release 0.15.0 2022-07-19 10:07:51 +02:00
Tim BruijnzeelsandGitHub 1cc69885db Use more descriptive errors from rpki-rs #845 2022-07-18 19:24:43 +02:00
Tim BruijnzeelsandGitHub bbb2267587 Migrate RPKI objects in history (#841)
Ensures that Krill is more robust with regards to stricter validation of RPKI object types in future.
2022-07-18 15:51:26 +02:00
Tim BruijnzeelsandGitHub d68c07b59c Sign BGP router certificates (#827) 2022-07-07 13:20:00 +02:00
330da84de5 Migrate 8181 8183 6942 support to rpki rs (#820)
* Use types which were ported into rpki-rs.
* Update dependency to rpki-rs 0.14.3-dev.
* IGNORE old_events test for now, see issue: #819
* Quick fix for compilation using --all-features. See issue #821

Co-authored-by: Ximon Eighteen <3304436+ximon18@users.noreply.github.com>
2022-05-12 15:24:50 +02:00
Tim Bruijnzeels 4e1df9294a Merge 0.9.5-rc8 (main) into dev 2022-03-30 14:05:02 +02:00
Tim BruijnzeelsandXimon Eighteen 5780c771f6 Support prepare-upgrade krill: prepares the new data to migrate. (#777)
* Support "prepare-upgrade" through "krillup" binary.
* Package the new `krillup` binary and man page into a separate DEB/RPM.
* Also switches to building in a Rocky Linux container due to repeated CentOS 8 vault repo timeouts.
* Mention correct config file location on CLI help.
* Remove incorrect reference to non-existent help subcommand for krillup.
* Add locking to upgrade process.

Co-authored-by: Ximon Eighteen <3304436+ximon18@users.noreply.github.com>
2022-02-18 18:02:55 +01:00
Tim Bruijnzeels aff4407144 Improve usability of http errors to operators. (#782) 2022-02-18 18:02:55 +01:00
Ximon EighteenandGitHub b0be88bc10 HSM support for keys (#21) (#733)
Adds support for PKCS#11 v2.20 and/or KMIP 1.2 compatible HSMs.
Includes backward compatible extensions to the krill.conf syntax.
Includes HSM related developer docs.
Excludes HSM specific API (REST, krillc, Prometheus) or UI extensions.
2022-01-14 14:19:24 +01:00
Tim Bruijnzeels df7ebaf07f Improve error message when the repository was not initialised. (#687) 2021-11-05 15:59:17 +01:00
Tim Bruijnzeels 3b94ff2fa6 Proof of concept ASPA support (#685) 2021-11-05 15:59:17 +01:00
Tim Bruijnzeels bb10f00d0e Force re-issuance of ROAs on upgrade from before 0.9.3-rc2 (#704) 2021-11-05 15:59:17 +01:00
Tim BruijnzeelsandGitHub 5f4189c6eb Reorganise use statements (#647) 2021-09-13 14:01:40 +02:00
Tim BruijnzeelsandGitHub 12d802a9fc Add unguessable subdir to RRDP snapshot and delta paths. (#515) (#641) 2021-08-30 10:48:08 +02:00
Tim BruijnzeelsandGitHub a189e6867c Deal with parent errors or not-performed responses to sign requests. (#499) 2021-08-04 16:43:42 +02:00
3ee53f0059 Migrate CA repository using key rollover (#480)
As it turns out - this was broken earlier becuase of a failure to republish
objects during a key roll during 0.9.0 development - fixed in issue #509
prior to the 0.9.0 release.

Co-authored-by: Ximon Eighteen <3304436+ximon18@users.noreply.github.com>
2021-07-13 15:51:07 +02:00
Tim BruijnzeelsandGitHub 8be620b606 Update dependencies: rpki-rs, bytes, tokio, hyper, reqwest (#584)
* Update dependencies: rpki-rs, and therefore bytes, tokio, hyper, reqwest
* Rust 1.51 clippy
* Update minimal rust version to 1.47
    socket2 requires improved const fn support.
    exponential compile-time and type_length_limit and async in 1.46.

See PR #586
2021-07-02 10:20:24 +02:00
Tim Bruijnzeels 59eaac5624 Remove krillpubd - always have both a CaManager and a RepoManager. (#527) 2021-05-20 12:51:52 +02:00
Tim BruijnzeelsandGitHub 17b928b7cc Use more descriptive KrillIoError where feasible (#495) 2021-05-04 13:53:03 +02:00
67ca2f4914 Disable update existing repository (#481)
* Disallow updating a repository if it had been set before
* Check that a repository is available before adding it
* Use "krillc repo configure" because it describes the action better

Co-authored-by: Ximon Eighteen <3304436+ximon18@users.noreply.github.com>
2021-04-19 16:10:35 +02:00
Tim BruijnzeelsandGitHub 3b139e4a9f Clippy and spelling fixes (#471)
* Fix clippy warnings.
* Fix spelling - as agreed use american spelling in code (like RFCs do as well).
2021-04-15 14:42:32 +02:00
a715c82f7f Remove embedded repo/ca choices (#461)
* Remove embedded repository contact option, migrate commands and events.
* Migrate old CA init events. Test upgrade from 0.6.0.
* Migrate embedded in CA history.

Co-authored-by: Ximon Eighteen <3304436+ximon18@users.noreply.github.com>
2021-04-01 17:18:28 +02:00
e662c1553b Change to a hybrid event sourcing model for CAs and Repository. (#426)
This allows us to keep the full history of semantically important events, while not spamming the history and avoiding excessive use of disk space. See issues #370 and #423.

This is a substantial change. Highlights follow:
* Added a developer documentation section
* No longer using events for manifest/crl generation (#370)
* No longer using events for publication deltas (#423)
* Removed pre 0.6.0 migration code - people will have to upgrade to at least 0.6.0 first
* Added migration code for 0.6.0-0.8.1 to this
* Migrate repository by doing a keyroll. (#370)
* Remove archiving code for commands (no longer applicable)

Minor other fixes:
* Use a swap file when writing (avoid corrupt json if disk is full) (#370)
* Make removing publisher content idempotent for publishers already removed.

Co-authored-by: Ximon Eighteen <3304436+ximon18@users.noreply.github.com>
Co-authored-by: Jasper den Hertog <jasper@plainspace.com>
2021-03-17 12:08:36 +01:00
Jasper den HertogandGitHub 1cba1dba70 authenticate()/try_refresh_token() rfc-6749 style errors (#396)
Improved handling of OpenID Connect error responses when using a refresh token to obtain new tokens.
2021-02-10 10:42:43 +01:00
Ximon EighteenandGitHub bbfe9a824a Testbed mode should be more liberal in handling formatting variations in child and publisher registration XML. (#369) (#403)
Testbed mode should be more liberal in handling formatting variations in child and publisher registration XML. Synced with Lagosta commit d94470db. (#369, #403)
2021-01-29 17:11:30 +01:00
Tim Bruijnzeels 37750bab0d Be more lenient on whitespace in XML, but have better warnings for offending json. (#369) 2021-01-08 14:04:55 +01:00
Ximon Eighteen 394e325b7c cargo fmt 2021-01-06 14:27:59 +01:00
Ximon Eighteen 59cd7bb364 FIX: Show internal auth errors (e.g. OpenID Connect provider invalid response) distinctly from Krill "general" errors (which might imply a problem with Krill itself which is not the case). Synced with Lagosta master commit 259958f. 2021-01-05 12:44:11 +01:00
Ximon Eighteen b2cf7535dd Error handling tweaks. 2020-12-30 15:46:08 +01:00
Tim Bruijnzeels 9d2d0eabc0 Manage Repository Server init/remove through API (#353) 2020-12-14 16:01:33 +01:00
Tim Bruijnzeels 5efe2fa377 Separate krillpubd and krillpubc. (#338) 2020-12-09 11:31:42 +01:00
Ximon Eighteen 472a0e4751 Merge multi-user branch. Uses Lagosta master branch commit a7e73cba which includes multi-user support. 2020-12-07 16:55:40 +01:00
Tim Bruijnzeels 81c737fdd8 Remove derive_more dependency #297 2020-11-11 13:39:31 +01:00
Tim Bruijnzeels 3bb70bdbe3 Allow creating redundant ROAs (#341) 2020-11-05 16:15:49 +01:00
Tim Bruijnzeels 3c85407c1e Allow overlapping AS0 ROAs, suggest to remove redundant AS0 ROAs. (#342) 2020-11-04 10:45:19 +01:00
Tim Bruijnzeels 187da0db82 Move test_id_certificate to test and use cfg(test). Without the latter cargo publish won't work since we exclude test resources for space. 2020-10-12 08:24:01 +02:00
Tim Bruijnzeels e9d01c6b08 Reject parent XML if it is already in use. (#325) 2020-10-08 15:37:47 +02:00
Tim Bruijnzeels 7a5919f3e4 Simplify AggregateStore and have simple KeyValueStore for storage concerns only. (#324) 2020-10-06 12:15:36 +02:00
Tim Bruijnzeels 61374949e5 Let StatusStore use simple Key Value store. (#324) 2020-10-02 14:40:26 +02:00
Tim Bruijnzeels 7ec21fb539 Make Signer an explicit enum rather than generic. (#314) 2020-09-07 16:13:15 +02:00
Tim Bruijnzeels 857aaa3641 Add rejections for wrong AS0 additions 2020-08-27 09:22:37 +02:00
Tim Bruijnzeels 65b7148d7d Allow large enum variants for clippy. 2020-08-05 14:15:50 +02:00
Tim Bruijnzeels 61122bad14 Fix ca-roa-delta-error response json and add regression test. 2020-08-05 11:50:16 +02:00