safing-portmaster/service
Alexandr Stelnykovych ee8cde31f6 feat: Add Split Tunnel feature (Windows PoC)
Implement initial proof-of-concept for split tunnel functionality on Windows,
allowing applications to route traffic through a designated network interface
while bypassing default system routing.

Features:
- Split tunnel module with TCP/UDP proxy infrastructure
- Firewall integration with split tunnel verdict handling
- SplitTunneling context attached to connections
- Configuration options: enable toggle, interface selection, and policy rules
- UI display of split tunnel connection details in connection info panel
- Subsystem configuration for user-level access

Windows-specific implementation:
- Uses proxy-based interface routing on Windows
- Automatic or manual interface detection and binding
- Support for IPv4 and IPv6 traffic

Note: Linux implementation is under development. SPN takes precedence over
split tunnel when both are enabled, ensuring SPN connections bypass this feature.
2026-04-24 18:04:01 +03:00
..
broadcasts feat(resolver): persist stale cache notification suppression 2026-03-10 00:18:53 +02:00
compat feat: refactor interception modules into pausable group 2025-11-06 17:28:38 +02:00
configure Fix SPN intel updates 2025-04-15 11:26:59 +02:00
control fix: avoid error "config: request for unregistered option: spn/enable" 2026-04-01 15:17:13 +03:00
core Restart UI process (Tauri) after automatic update 2026-04-10 13:12:04 +03:00
detection/dga wip: migrate to mono-repo. SPN has already been moved to spn/ 2024-03-20 09:45:32 +01:00
firewall feat: Add Split Tunnel feature (Windows PoC) 2026-04-24 18:04:01 +03:00
integration Merge branch 'develop' into feature/new-installer 2025-01-14 16:59:21 +02:00
intel Refactor registerEventCallbacks to remove error handling and simplify callback registration 2025-09-03 12:55:58 +03:00
interop fix(interop/ivpn): Handle local service port connections 2026-04-03 10:13:07 +03:00
mgr ivpn/linux: route SPN hub traffic around VPN tunnel (split tunnel) 2026-03-26 23:20:34 +02:00
nameserver feat: add VerdictRerouteToSplitTun verdict type 2026-04-17 20:48:48 +03:00
netenv netenv: enhance interface detection with physical adapter selection 2026-04-24 17:55:32 +03:00
netquery feat: Add Split Tunnel feature (Windows PoC) 2026-04-24 18:04:01 +03:00
network feat: Add Split Tunnel feature (Windows PoC) 2026-04-24 18:04:01 +03:00
process Improve logging message format 2025-05-22 15:40:06 +03:00
profile feat: Add Split Tunnel feature (Windows PoC) 2026-04-24 18:04:01 +03:00
resolver test(resolver): TestResolveIPAndValidate fix 2026-04-13 18:17:20 +03:00
splittun feat: Add Split Tunnel feature (Windows PoC) 2026-04-24 18:04:01 +03:00
status Refactor status module initialization: register runtime privider as soon as possible 2025-11-11 17:17:26 +02:00
sync Restructure modules (#1572) 2024-08-09 18:15:48 +03:00
ui Add upgrade locking mechanism to core ui serving module 2025-04-07 15:26:35 +02:00
updates fix: fix variable shadowing in copyAndCheckSHA256Sum 2026-04-10 13:30:22 +03:00
config.go [updates] (Linux): custom post-upgrade commands + command to restore SELinux context 2025-04-22 17:36:42 +03:00
debug.go feat: refactor interception modules into pausable group 2025-11-06 17:28:38 +02:00
debug_test.go [service] Make linter happy 2024-08-28 11:55:40 +02:00
instance.go feat: Add Split Tunnel feature (Windows PoC) 2026-04-24 18:04:01 +03:00