summaryrefslogtreecommitdiffhomepage
path: root/talpid-tunnel-config-client/src/lib.rs
AgeCommit message (Collapse)AuthorFilesLines
2025-07-09Put the `tonic::Status` in a Box to make the error type smallerSebastian Holmin1-2/+4
2025-05-14Log how long time it takes to generate quantum-resistant secretsLinus Färnstrand1-1/+6
2025-05-14Hide algorithm name constantLinus Färnstrand1-2/+2
2025-05-14Use HQC-256 instead of Classic McEliece in quantum-resistant handshakeLinus Färnstrand1-24/+22
2025-02-03Set correct DAITA platform on WindowsDavid Lönnhager1-2/+1
2025-01-24Change temporary `DaitaPlatform` for windows to `LinuxWgGo`Sebastian Holmin1-1/+1
2025-01-24Log DAITA v2 requestDavid Lönnhager1-4/+8
2025-01-24Enable DAITA v2 for Windows via wireguard-goDavid Lönnhager1-27/+9
2025-01-09Spawn key pair worker on launchSebastian Holmin1-1/+1
2024-12-27Use DAITAv2 on iOSEmīls1-9/+9
2024-12-20Fix byte counting in socket snifferSebastian Holmin1-3/+4
2024-12-20Move SocketSniffer to separate moduleSebastian Holmin1-52/+58
2024-12-20Log data usage for tunnel config clientSebastian Holmin1-5/+73
2024-12-19Use IAN TCP connection for ephemeral peer exchangeEmīls1-3/+3
2024-12-12Use dynamic DAITA machines in wireguard-goDavid Lönnhager1-32/+40
Co-authored-by: Markus Pettersson <markus.pettersson@mullvad.net>
2024-12-12Add support for DAITA v2 to talpid tunnel config clientDavid Lönnhager1-4/+56
Co-authored-by: Markus Pettersson <markus.pettersson@mullvad.net>
2024-10-17Clean up relay config client creation codeLinus Färnstrand1-6/+9
2024-10-17Move higher level function to above lower level functionLinus Färnstrand1-21/+21
2024-10-17Refactor post_quantum_secrets to not take an enable-boolLinus Färnstrand1-32/+30
2024-10-15Replace pqc_kyber with ml-kemLinus Färnstrand1-13/+10
Upgrading one of the key encapsulation mechanism algorithms we use for quantum-resistant tunnels from Kyber (draft) to ML-KEM (standardized FIPS 203)
2024-09-25Upgrade `tonic` to 0.12 and `prost` to 0.13Sebastian Holmin1-0/+3
Upgrading `tonic` is a prerequisite to later on upgrading `hyper` to version 1.0. As of version 1.0, `hyper` no longer uses `tokio`s `AsyncWriter` and `AsyncReader` traits, instead defining its own versions, see <https://github.com/hyperium/hyper/issues/3110>. As tonic `0.12` is updated to use the `hyper 1.0` ecosystem, it changed some of its trait-bounds to the new `hyper` traits. The `hyper-utils` crate provides the wrapper `TokioIo`, which converts between the two. `prost` had to be upgraded as well, for compatibility.
2024-09-24Lower MTU during ephemeral peer negotiation on WindowsDavid Lönnhager1-57/+3
2024-09-24Do not set IP_USER_MTU on on tunnel config socketDavid Lönnhager1-46/+7
2024-09-02Fix a lingering panic by using a stricter typeMax Zettlmeißl1-4/+5
The functions `request_ephemeral_peer` and consecutively `new_client` accepted an `IpAddr`, but due to only ever preparing a v4 socket this lead to panic due to an `EAFNOSUPPORT` error if an IPv6 was provided. It would also have made sense to change `new_client` to create either an IPv4 or IPv6 socket depending on the type of the address, but the tuncfg service is currently not accepting IPv6 connections, therefore this was the cleaner change.
2024-07-17Add a Rust FFI, Disable sandboxing for scriptsBug Magnet1-3/+0
2024-06-24Run `cargo +nightly fmt`Sebastian Holmin1-5/+5
2024-05-21Fix Windows buildBug Magnet1-3/+2
2024-05-21Add a connection timeout check for the in-tunnel TCP connectionBug Magnet1-13/+29
Signed-off-by: Bug Magnet <marco.nikic@mullvad.net>
2024-05-21Implement PQ PSKEmīls1-32/+66
2024-04-16Add DAITA to relay selectionDavid Lönnhager1-17/+0
2024-04-16Add DAITA Windows client and updated tuncfgDavid Lönnhager1-54/+102
2024-01-25Hardcode a low MTU/MSS for the tunnel config client socketDavid Lönnhager1-17/+17
2024-01-02Fix clippy lintsDavid Lönnhager1-1/+1
2023-08-08Remove unnecessary cast with windows-sys 0.48Linus Färnstrand1-2/+2
2023-04-17Set MSS for PSK exchange when multihop is enabledDavid Lönnhager1-8/+112
2023-02-28Add PQ support for multihop, and allow listing two endpoints in theJonathan1-5/+5
tunnel
2023-01-30Do explicit zeroization of key material, clean up PQ codeLinus Färnstrand1-31/+29
2023-01-30Upgrade PQ gRPC endpoint to PskExchangeV1Linus Färnstrand1-5/+9
2023-01-30Add Kyber1024 into the PQ KEM mixLinus Färnstrand1-9/+34
2023-01-30Run `cargo clippy --fix` with the new Rust 1.67 preferred formatLinus Färnstrand1-1/+1
2022-10-03Implement zeroize for the WireGuard PresharedKey typeLinus Färnstrand1-1/+3
2022-10-03Implement PskExchangeExperimentalV1 client sideLinus Färnstrand1-17/+49
2022-09-07Upgrade the classic-mceliece-rust libraryLinus Färnstrand1-9/+5
2022-08-29Silence clippy warnings due to tonicDavid Lönnhager1-0/+1
2022-06-15Remove ICMP variants for allowed tunnel trafficDavid Lönnhager1-1/+3
2022-06-14Rename talpid-relay-config-client to talpid-tunnel-config-clientDavid Lönnhager1-0/+84