Emil Engler
d0a84294aa
cli: Move StaticKEM::keygen out of unsafe
...
This commit moves the `StaticKEM::keygen` call out of an `unsafe` call,
because the function is not unsafe.
2023-09-13 16:36:35 +02:00
Emil Engler
d6a7ebe88f
clippy: Allow false positive with redundancies
...
This commit allows a redundant closure call in the regard of clippy
warnings, as it is a false positive in our case.
2023-09-06 17:40:34 +02:00
Emil Engler
f48a923dbf
refactor: Remove redundant references
...
This commit removes redundant references, noted by clippy.
2023-09-06 17:31:56 +02:00
Emil Engler and Karolin Varner
8ff9b53365
cli: include a static compiled manual page
...
This commit re-introduces a static and pre-compiled version of the
manual page back into the source code, in case that an installed version
cannot be found on the host system.
2023-08-21 14:05:34 +02:00
wucke13
4a3b59fd15
refine cli of exchange command
...
This implements feedback from #87 on ambiguities of the CLI
2023-06-10 04:03:55 +02:00
wucke13
73a8489232
add private-key argument to cli parser
...
- fixes #72
2023-06-09 22:20:24 +02:00
Karolin Varner and Karolin Varner
7e6985fdc6
fix: Revert spell correction zeroized -> zeroed
...
This is an established term.
2023-06-01 11:51:27 +02:00
Steffen Vogel and Karolin Varner
b958eacaae
fix: Typos in Rust code, readme and man pages
2023-06-01 11:51:27 +02:00
Karolin Varner and Karolin Varner
397a776c55
fix: Race condition due to concurrent handshake
...
After establishing a session in responder role, the peer
should abort ongoing handshakes in initiator role.
Also adds an extra wait period before creating an
initiation if peer had been the initiator in the previous
handshake. This makes sure that unless there are huge latencies,
there are no concurrent handshakes in the first place.
Fixes : #43
2023-05-26 11:46:00 +02:00
Karolin Varner and Karolin Varner
b29720b0c6
fix: Formatting
2023-05-23 22:26:56 +02:00
Karolin Varner
69f62673a5
fix: Reintroduce ability to actually supply wireguard with keys
...
Regression introduced in b99d072879
due to forgetfullness
2023-05-23 11:26:01 +02:00
Karolin Varner
097fd0332d
chore: Upgrade crate dependencies
2023-05-23 11:24:39 +02:00
Karolin Varner and Karolin Varner
7aa48b95af
fix: Escape uses of angle brackets and pointy brackets in documentation
...
This was a regression introduced in b99d072879
which went unnoticed because of the broken CI
https://github.com/rosenpass/rosenpass/issues/62
2023-05-23 08:54:53 +02:00
Karolin Varner and Karolin Varner
62fab066d4
feat: Restart host discovery on connection loss
...
This will retry other sockets and the host-name given on the
command-line when a connection loss is detected.
2023-05-22 11:42:51 +02:00
Karolin Varner and Karolin Varner
9469b62f58
fix: Host-path discovery
...
When rosenpass is started, we either know no peer address or we know a
hostname. How to contact this hostname may not be entirely clear because
we now have multiple sockets we could send on and DNS may return
multiple addresses.
To robustly handle host path discovery, we try each
socket-ip-combination in a round robin fashion; the struct stores the
offset of the last used combination internally and and will continue
with the next combination on every call.
2023-05-22 11:42:51 +02:00
Karolin Varner and Karolin Varner
f8bea94330
fix: Always send messages to a peer using the socket they contacted us with
...
To implement this it was necessary to introduce an `Endpoint` abstraction
over SocketAddr's that includes the information which socket was used.
2023-05-22 11:42:51 +02:00
Karolin Varner and Karolin Varner
f3c343c472
fix: Handle the various possible dual-stack configurations reliably
2023-05-22 11:42:51 +02:00
Karolin Varner and Karolin Varner
7154af52f9
chore: Indicate that the listen parameter can be given multiple times in the help
2023-05-22 11:42:51 +02:00
Karolin Varner and Karolin Varner
e03fed404f
chore: Cleanup unneccesary debug output
2023-05-22 11:42:51 +02:00
wucke13 and Karolin Varner
b99d072879
major rewrite of application server & frontend
...
- adds TOML based configuation files
- with example configuratios in config-examples
- reimplments arcane CLI argument parser as automaton
- adds a new CLI focused arround configuration files
- moves all file utility stuff from `main.rs` to `util.rs`
- moves all AppServer stuff to dedicated `app_server.rs`
- add mio for multi-listen-socket support (should fix #27 )
- consistency: rename private to secret
2023-05-22 11:42:51 +02:00
Emil Engler
13cc7e05ed
invoke man(1) when requesting help
...
This commit invokes `man(1)` when requesting help and emits the built-in
manual, if the manual page is not found on the system.
2023-04-25 14:54:30 +02:00
wucke13 and GitHub
9c40c77f71
Merge pull request #42 from rosenpass/dev/fix-#41
...
fix #41
2023-04-09 18:18:19 +02:00
wucke13
c79dffa627
fix #41
...
Adds a check for empty messages as well as unit test verifying that
empty messages are handled as desired.
2023-04-09 17:54:51 +02:00
wucke13 and Karolin Varner
b8f19c5510
remove multimatch macro and fix typo
2023-04-09 17:52:41 +02:00
wucke13 and Karolin Varner
f459b91abf
fix documentation
2023-04-09 17:52:41 +02:00
wucke13
df02f616bf
remove code format snowflakes
...
this also enables the `cargo fmt` check in the flake
2023-04-05 16:35:31 +02:00
wucke13
87b08bcee1
rename SKEM -> StaticKEM & EKEM -> EphemeralKEM
2023-04-05 16:35:26 +02:00
wucke13
897fa3daf6
improve documentation
...
- fix key-exchange doctest example
- add more info on the CryptoServer struct
- add more doc-strings
2023-04-04 22:13:23 +02:00
wucke13
953b861b4c
add rustfmt::skip attributes on _special_ code
...
related to https://github.com/rust-lang/rustfmt/issues/4306
2023-04-04 22:13:23 +02:00
wucke13
1a61a99575
rename protocol::Server -> protocol::CryptoServer
2023-04-04 22:13:12 +02:00
Karolin Varner
8eea5284bf
fix(usage): Remove warning about this being a research project
2023-03-04 22:24:09 +01:00
Emil Engler and Karolin Varner
df00c1987c
fix typos
2023-03-04 22:15:32 +01:00
Karolin Varner and wucke13
4e72c52ca0
add Rosenpass, the tool
...
Initial implementation of the Rosenpass tool, implemented by @koraa.
Includes contributions and some lints from @wucke13.
Co-authored-by: wucke13 <wucke13@gmail.com >
2023-02-23 20:45:56 +01:00