| Age | Commit message (Collapse) | Author | Files | Lines | |
|---|---|---|---|---|---|
| 2025-10-09 | Connect LWO obfuscator when `run` is invoked | Markus Pettersson | 2 | -56/+103 | |
| Fixes race condition with socket bypass on Android | |||||
| 2025-09-22 | Improve xor_bytes performance | David Lönnhager | 1 | -4/+4 | |
| 2025-09-18 | Add unit test for multiplexer obfuscation | David Lönnhager | 2 | -0/+78 | |
| 2025-09-18 | Limit number of initial packets in multiplexer | David Lönnhager | 1 | -0/+11 | |
| 2025-09-18 | Add documentation for multiplexer obfuscation | David Lönnhager | 2 | -95/+148 | |
| 2025-09-18 | Add multiplexer POC to daemon, TSM, and relay selector | David Lönnhager | 1 | -67/+138 | |
| 2025-09-18 | Add POC multiplexer tunnel obfuscation module | Jon Petersson | 6 | -5/+269 | |
| Co-authored-by: David Lönnhager <david.l@mullvad.net> | |||||
| 2025-09-18 | Bump tokio-util | David Lönnhager | 1 | -1/+1 | |
| 2025-09-15 | Add LWO obfuscator | David Lönnhager | 7 | -85/+500 | |
| 2025-09-11 | Fix enable missing `socket` of `nix` crate in `tunnel-obfuscation` | Markus Pettersson | 1 | -1/+1 | |
| 2025-09-04 | Guarantee the QUIC UDP socket is non blocking | Bug Magnet | 1 | -0/+4 | |
| 2025-09-03 | Add UI support for QUIC setting | Jonatan Rhodin | 1 | -5/+1 | |
| 2025-09-03 | Call `bypass` on QUIC socket on Android | Markus Pettersson | 2 | -13/+35 | |
| 2025-09-03 | Do not run QUIC proxy until `Obfuscator::run` is called | Markus Pettersson | 1 | -13/+17 | |
| 2025-08-18 | Update QUIC MTU value | David Lönnhager | 1 | -1/+3 | |
| 2025-08-15 | Do not wait for QUIC connection establishment when spawning obfuscator | David Lönnhager | 1 | -10/+9 | |
| 2025-07-10 | Run `cargo fmt` | Sebastian Holmin | 3 | -4/+4 | |
| 2025-07-09 | Adjust MTU for QUIC obfuscator based on tunnel MTU | Markus Pettersson | 1 | -8/+74 | |
| Make fields of `quic::Settings` private and expose constructors/builder fns to configure a `quic::Settings` struct. A previous commit that added a public, optional field to the settings struct broke a caller (iOS), which is suboptimal. Add a new token type: `quic::AuthToken`. This will perform "all" necessary validation that was previously done ad-hoc when the token was to be transformed into an authorization header. It also helps to not fuck up the values passed to `quic::Settings::new`, since it was previously Stringly-typed. | |||||
| 2025-07-09 | Add IPv6 support to `mullvad-masque-proxy` | Markus Pettersson | 2 | -18/+65 | |
| 2025-07-09 | Add support for QUIC in the relay selector | Markus Pettersson | 1 | -3/+12 | |
| Parse new 'features' key from relay list API, and add Quic obfuscation to automatic retry order | |||||
| 2025-07-09 | Fix called `Iterator::last` on a `DoubleEndedIterator` | Sebastian Holmin | 1 | -1/+1 | |
| 2025-07-08 | Update FFI to handle new QUIC params | Jon Petersson | 1 | -4/+4 | |
| 2025-06-10 | Update nix to 0.30 everywhere | Joakim Hulthe | 2 | -6/+8 | |
| 2025-05-08 | Add QUIC obfuscation to mullvad daemon and management interface | David Lönnhager | 1 | -0/+6 | |
| 2025-05-05 | Set auth header in tunnel-obfuscation | David Lönnhager | 1 | -1/+5 | |
| 2025-05-02 | Apply changes from PR | Andrew Bulhak | 1 | -2/+7 | |
| 2025-05-02 | Add unimplemented function on Android | David Lönnhager | 1 | -0/+5 | |
| 2025-05-02 | Update mullvad-ios | David Lönnhager | 1 | -2/+0 | |
| 2025-05-02 | Prevent blocking until connected to QUIC endpoint | David Lönnhager | 2 | -28/+23 | |
| 2025-05-02 | Add Quic to tunnel-obfuscation | Andrew Bulhak | 3 | -0/+98 | |
| 2024-11-05 | Remove unnecessary result in return type | Sebastian Holmin | 1 | -11/+3 | |
| 2024-11-05 | Create shadowsocks socket with IP version of endpoint | Sebastian Holmin | 1 | -2/+8 | |
| 2024-10-23 | Use sendto and recvfrom instead of connecting Shadowsocks socket | David Lönnhager | 1 | -11/+21 | |
| connect() seems to bind to a particular interface, which breaks the connection when roaming | |||||
| 2024-10-21 | Take obfuscation overhead into account when setting MTU | Joakim Hulthe | 3 | -0/+32 | |
| 2024-09-16 | Run VpnService.protect() on Shadowsocks socket before connecting | David Lönnhager | 2 | -20/+62 | |
| 2024-09-10 | Expose Shadowsocks fd on Android | David Lönnhager | 1 | -16/+25 | |
| 2024-09-02 | Fix panic caused by join handle being awaited twice | David Lönnhager | 1 | -6/+5 | |
| 2024-08-29 | Lower log level of shadowsocks write errors | David Lönnhager | 1 | -1/+2 | |
| 2024-08-16 | Add Shadowsocks to tunnel-obfuscation crate | David Lönnhager | 5 | -14/+286 | |
| 2024-02-27 | Replace err_derive with thiserror | Joakim Hulthe | 3 | -15/+13 | |
| `err_derive` is unmaintained and will probably stop working with rust edition 2024. `thiserror` is almost a drop-in replacement. This commit simply replaces all occurences of `derive(err_derive::Error)` with `derive(thiserror::Error)` and fixes the attributes, but the Error and Display impls should be identical. | |||||
| 2024-01-16 | Add rust-version to all Cargo.toml | Linus Färnstrand | 1 | -0/+1 | |
| 2024-01-09 | Remove version and publish cargo metadata | Linus Färnstrand | 1 | -2/+0 | |
| Since Rust 1.75.0 the `version` field is optional. The version defaults to "0.0.0" if it's not specified, and `publish` defaults to false if no version has been given. So by not specifying a version we get both `version = "0.0.0" and `publish = false` "for free" | |||||
| 2024-01-04 | Add workspace level lints | Linus Färnstrand | 1 | -0/+3 | |
| 2023-09-11 | Make err-derive a workspace dependency | David Lönnhager | 1 | -1/+1 | |
| 2023-08-02 | Remove unused dependencies in tunnel-obfuscation | Linus Färnstrand | 1 | -1/+0 | |
| 2023-07-14 | Move tokio dependency to be a workspace dependency | Linus Färnstrand | 1 | -1/+1 | |
| 2023-07-14 | Set package fields in workspace and inherit in packages | Linus Färnstrand | 1 | -5/+6 | |
| 2023-02-28 | Enable TCP_NODELAY on the WireGuard over TCP socket | Linus Färnstrand | 1 | -0/+2 | |
| 2023-02-28 | Upgrade udp-over-tcp to v0.3.0 | Linus Färnstrand | 1 | -1/+1 | |
| 2023-01-30 | Run `cargo clippy --fix` with the new Rust 1.67 preferred format | Linus Färnstrand | 1 | -1/+1 | |
