Karolin Varner
b5ef5842d9
fix(docker): Builder runtime image not matching buildtime image
2025-08-29 18:23:17 +02:00
Karolin Varner
c3e8297fa0
feat: Derandomize the rosenpass protocol by adding testvectors ( #604 )
2025-08-28 15:08:51 +02:00
Amin Faez
223fbd551f
feat: Derandomize the rosenpass protocol by adding testvectors
...
- Introduced a new module `test_vector_sets.rs` containing test vector definitions for deterministic protocol testing.
- Added a new test file `test_vector_crypto_server.rs` to validate the protocol implementation using captured internal randomness.
- Added serialization and deserialization of `Secret`, `Public`, and `PublicBox` types in `serialization.rs`.
- Added necessary dependencies in `Cargo.toml` for test vectors: assert_tv, serde and base64
- Updated audit records in `audits.toml` and `imports.lock` for new dependencies.
2025-08-28 11:41:58 +02:00
Karolin Varner
5c909b4ab9
chore(deps): bump actions/checkout from 4 to 5 ( #693 )
2025-08-12 15:44:06 +02:00
dependabot[bot]
6b7f620566
chore(deps): bump actions/checkout from 4 to 5
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-12 07:50:01 +00:00
Karolin Varner
916a9ebb71
chore(deps): bump libfuzzer-sys from 0.4.9 to 0.4.10 ( #691 )
2025-08-09 16:13:41 +02:00
Rosenpass CI Bot
3e33e8ffa1
Regenerate cargo vet exemptions
2025-08-08 23:13:50 +00:00
dependabot[bot]
5b8760cb46
chore(deps): bump libfuzzer-sys from 0.4.9 to 0.4.10
...
Bumps [libfuzzer-sys](https://github.com/rust-fuzz/libfuzzer ) from 0.4.9 to 0.4.10.
- [Changelog](https://github.com/rust-fuzz/libfuzzer/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rust-fuzz/libfuzzer/compare/0.4.9...0.4.10 )
---
updated-dependencies:
- dependency-name: libfuzzer-sys
dependency-version: 0.4.10
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-08 23:13:08 +00:00
Karolin Varner
2e17779447
chore(deps): bump anyhow from 1.0.96 to 1.0.98 ( #690 )
2025-08-08 17:30:36 +02:00
Rosenpass CI Bot
75763bf27d
Regenerate cargo vet exemptions
2025-08-07 23:45:10 +00:00
dependabot[bot]
83ad7652bc
chore(deps): bump anyhow from 1.0.96 to 1.0.98
...
Bumps [anyhow](https://github.com/dtolnay/anyhow ) from 1.0.96 to 1.0.98.
- [Release notes](https://github.com/dtolnay/anyhow/releases )
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.96...1.0.98 )
---
updated-dependencies:
- dependency-name: anyhow
dependency-version: 1.0.98
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-07 23:44:29 +00:00
Karolin Varner
76a8a39560
fix: Benchmarks should run on ubicloud runners
2025-08-07 20:00:05 +02:00
Karolin Varner
de72e4a2a1
Use serde for JSON-encoding benchmark data ( #667 )
2025-08-07 16:40:16 +02:00
Karolin Varner
f0467ea28b
chore(deps): bump actions/download-artifact from 4 to 5 ( #686 )
2025-08-07 16:04:46 +02:00
dependabot[bot]
15a4dfa03b
chore(deps): bump actions/download-artifact from 4 to 5
...
Dependabot couldn't find the original pull request head commit, cd15f7d879f6ecb6179eb8f559b55553968eccfe.
2025-08-07 16:04:29 +02:00
Karolin Varner
1a8713a26f
chore(deps): bump log from 0.4.26 to 0.4.27 ( #681 )
2025-08-07 16:04:01 +02:00
Rosenpass CI Bot
2694f4a86b
Regenerate cargo vet exemptions
2025-08-07 16:03:32 +02:00
dependabot[bot]
b905c0aa06
chore(deps): bump log from 0.4.26 to 0.4.27
...
Bumps [log](https://github.com/rust-lang/log ) from 0.4.26 to 0.4.27.
- [Release notes](https://github.com/rust-lang/log/releases )
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/log/compare/0.4.26...0.4.27 )
---
updated-dependencies:
- dependency-name: log
dependency-version: 0.4.27
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-07 16:03:32 +02:00
Karolin Varner
4f2519fb9c
fix: Compiling rp should be disabled on mac ( #688 )
2025-08-07 16:02:40 +02:00
Karolin Varner
72e6542958
fix: Compiling rp should be disabled on mac
2025-08-07 12:45:02 +02:00
Jan Winkelmann (keks)
1e6e17e094
bump version of serde_json in supply chain exception
2025-08-06 17:58:38 +02:00
Jan Winkelmann (keks)
8e7fd174e8
nix fmt
2025-08-06 17:58:38 +02:00
Jan Winkelmann (keks)
7908359eab
Use serde for JSON-encoding benchmark data
2025-08-06 17:58:38 +02:00
Karolin Varner
15ae4b4ae5
Fix signal handling in rp and rosenpass ( #685 )
2025-08-06 15:59:49 +02:00
Karolin Varner
b5107c77d8
chore(rp): Docs fix
2025-08-04 08:44:15 +02:00
Karolin Varner
335584b187
fix: clippy fix (remove warnings)
2025-08-04 08:44:15 +02:00
Karolin Varner
3c0e167347
fix(rosenpass): Integrate signal handlers with mio
...
With this commit, rosenpass uses a signal handler based on the signal-hook-mio crate.
Even though, in this commit, no rosenpass-rp code is touched, this also
fixes the signal handling in rosenpass-rp. The way rosenpass is
integrated in rp is a bit of a hack – it just directly embeds
rosenpass in the same process (though on a dedicated thread). For this
reason, rp now just inherits rosenpass' signal handlers. The
rosenpass event_loop() will terminate. The main loop of `rp` just spends
most of the time waiting for rosenpass itself to finish, and exits when
it finishes.
Unfortunately, this means we are not using signalfd(2)[^0]; the
signal-hook-mio crate appears to use a pipe-based mechanism to deliver
events to mio instead.
This may not be such a bad thing, as signalfd has some severe drawbacks
with respect to subprocesses and masked signals[^1].
Fixes : #358 (https://github.com/rosenpass/rosenpass/issues/385 )
Fixes : #522 (https://github.com/rosenpass/rosenpass/issues/522 )
Fixes : #678 (https://github.com/rosenpass/rosenpass/pull/678 )
[^0]: https://unixism.net/2021/02/making-signals-less-painful-under-linux/
[^1]: https://ldpreload.com/blog/signalfd-is-useless?reposted-on-request
2025-08-04 08:44:15 +02:00
Karolin Varner
6f6fdef542
chore(rp): Rename crate rp -> rosenpass-rp
2025-08-04 08:44:15 +02:00
Karolin Varner
c839126e29
chore(rp): Move remaining sync io in exchange() into spawn_blocking
2025-08-04 08:44:15 +02:00
Karolin Varner
a1698f36a6
fix(rp): Start the proper rosenpass server on a dedicated thread
...
We should not block the tokio executor indefinetly.
2025-08-04 08:44:15 +02:00
Karolin Varner
2d6550da0f
chore(rp): Simplify peer configuration code
2025-08-04 08:44:15 +02:00
Karolin Varner
bae336d633
fix(rp): Make sure that the WG SK is erased ASAP
2025-08-04 08:44:15 +02:00
Karolin Varner
6c929f7ddc
chore(rp): Simplify error handling in exchange()
2025-08-04 08:44:15 +02:00
Karolin Varner
41eb620751
chore(rp): Simplify code to setup Rosenpass AppServer
2025-08-04 08:44:15 +02:00
Karolin Varner
8561aaf137
chore(rp): Move functionality to set wg sk and port into function
2025-08-04 08:44:15 +02:00
Karolin Varner
f0ee7a33c9
chore(rp): Make sure genetlink is cleaned up
2025-08-04 08:44:15 +02:00
Karolin Varner
1d4a70f863
fix(rp): Use async commands to set up ip addr
...
We don't want to block the tokio runtime.
2025-08-04 08:44:15 +02:00
Karolin Varner
f4e8e4314b
chore: Use RAII for erasing the WireGuard device in rp
...
This, for now, disables correct handling of program termination,
but not because the RAII does not work. Instead, we need to implement
a proper signal handling concept.
We also removed some teardown handlers which are not covered by RAII,
like removing the routes we set up. The reason for this is, that this
is going to be taken care of by removing the wireguard device anyway.
2025-08-04 08:44:15 +02:00
Karolin Varner
1b9be7519b
chore: Unnecessary string clone in rp
2025-08-04 08:44:15 +02:00
Karolin Varner
c689f8e78a
feat(rp): Enable logging
2025-08-04 08:44:15 +02:00
Karolin Varner
edcbf290fc
chore: Use default error handler in rp main()
2025-08-04 08:44:15 +02:00
Karolin Varner
31a5dbe420
feat: Janitor, utilities for cleaning up with tokio
2025-08-04 08:44:15 +02:00
Karolin Varner
a85f9b8e63
chore: Better error handling in link_create_and_up in rp
2025-08-03 15:15:14 +02:00
Karolin Varner
21ea526435
chore: Restructure imports in rosenpass_rp::exchange
2025-08-03 15:15:14 +02:00
Karolin Varner
35e956e340
fix: Simplify structure of rp::exchange
...
Before this commit, there was a submodule rp::exchange::netlink
and there where platform checks, printing error messages on systems
other than freebsd and linux.
Neither is really necessary. If the application won't compile on other
systems it won't work, and if it happens to work then why give users a
spurious error message.
2025-08-03 15:15:14 +02:00
Karolin Varner
3371d7f00f
chore: Clippy fixes for rp crate
2025-08-03 15:15:14 +02:00
Karolin Varner
3f2a9bb96b
chore(deps): bump tokio from 1.44.2 to 1.46.1 ( #679 )
2025-07-31 12:22:35 +02:00
Rosenpass CI Bot
8dfa67a2dd
Regenerate cargo vet exemptions
2025-07-30 23:45:24 +00:00
dependabot[bot]
f31d635df8
chore(deps): bump tokio from 1.44.2 to 1.46.1
...
Bumps [tokio](https://github.com/tokio-rs/tokio ) from 1.44.2 to 1.46.1.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.44.2...tokio-1.46.1 )
---
updated-dependencies:
- dependency-name: tokio
dependency-version: 1.46.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-07-30 23:44:49 +00:00
Karolin Varner
75702dfc03
chore(deps): bump clap_mangen from 0.2.24 to 0.2.27 ( #657 )
2025-07-30 16:13:12 +02:00