Alexey
eaba926fe5
ME Buffer reuse + Bytes Len over Full + Seq-no over Wrap-add
...
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-23 03:52:37 +03:00
Alexey
ecad96374a
ME Pool tuning
...
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-23 03:41:51 +03:00
Alexey
4895217828
Bounded backpressure + Semaphore Globalgate +
...
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-23 03:32:06 +03:00
Alexey
4d83cc1f04
Merge branch 'flow' of https://github.com/telemt/telemt into flow
2026-02-23 03:20:28 +03:00
Alexey
c4c91863f0
Middle-End tuning
...
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-23 03:20:13 +03:00
Alexey
a5c7a41c49
Update types.rs
2026-02-23 02:48:03 +03:00
Alexey
7cc78a5746
Update types.rs
2026-02-23 02:45:16 +03:00
Alexey
d4d867156a
Secure Payload length fixes
2026-02-23 02:38:25 +03:00
Alexey
6ff29e43d3
Middle-End protocol hardening
...
- Secure framing / hot-path fix: enforced a single length + padding contract across the framing layer. Replaced legacy runtime `len % 4` recovery with strict validation to eliminate undefined behavior paths.
- ME RPC aligned with C reference contract: handshake now includes `flags + sender_pid + peer_pid`. Added negotiated CRC mode (CRC32 / CRC32C) and applied the negotiated mode consistently in read/write paths.
- Sequence fail-fast semantics: immediate connection termination on first sequence mismatch with dedicated counter increment.
- Keepalive reworked to RPC ping/pong: removed raw CBC keepalive frames. Introduced stale ping tracker with proper timeout accounting.
- Route/backpressure observability improvements: increased per-connection route queue to 4096. Added `RouteResult` with explicit failure reasons (NoConn, ChannelClosed, QueueFull) and per-reason counters.
- Direct-DC secure mode-gate relaxation: removed TLS/secure conflict in Direct-DC handshake path.
2026-02-23 02:28:00 +03:00
Alexey
69be44b2b6
Merge pull request #206 from telemt/flow
...
Flush on Response + Hotpath tunings + Reuseport Checker
2026-02-23 01:03:15 +03:00
Alexey
07ca94ce57
Reuseport Checker
2026-02-23 00:55:47 +03:00
Alexey
d050c4794a
Hotpath tunings
...
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-23 00:50:10 +03:00
Alexey
197f9867e0
Flush-response experiments
...
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-22 23:53:10 +03:00
Dimasssss
b2aaf404e1
Add files via upload
2026-02-22 01:19:26 +03:00
Alexey
3ab56f55e9
ME Connection error handling
2026-02-21 16:28:47 +03:00
Alexey
06d2cdef78
ME Connection lost fixes
2026-02-21 16:12:19 +03:00
Alexey
eaff96b8c1
Merge pull request #198 from telemt/flow
...
Peer - Connection closed fixes
2026-02-21 14:09:05 +03:00
Alexey
c3ebb42120
Peer - Connection closed fixes
2026-02-21 13:56:24 +03:00
ivulit
6ce25c6600
Use mask_host for TLS emulation fetcher
2026-02-21 10:40:59 +03:00
Alexey
2dcbdbe302
Merge pull request #194 from telemt/flow
...
ME Frame too large Fixes
2026-02-21 05:04:42 +03:00
Alexey
1bd495a224
Fixed tests
2026-02-21 04:04:49 +03:00
Alexey
b0e6c04c54
Merge pull request #193 from artemws/main
...
Fix config reload for Docker
2026-02-21 03:37:48 +03:00
Alexey
83fc9d6db3
Middle-End Fixes
...
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-21 03:36:13 +03:00
Alexey
c9a043d8d5
ME Frame too large Fixes
...
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-21 02:15:10 +03:00
artemws
a74bdf8aea
Update hot_reload.rs
2026-02-20 23:03:26 +02:00
Vladislav Yaroslavlev
100cb92ad1
feat: add hostname support for SOCKS4/SOCKS5 upstream proxies
...
Previously, SOCKS proxy addresses only accepted IP:port format.
Now both IP:port and hostname:port formats are supported.
Changes:
- Try parsing as SocketAddr first (IP:port) for backward compatibility
- Fall back to tokio::net::TcpStream::connect() for hostname resolution
- Log warning if interface binding is specified with hostname (not supported)
Example usage:
[[upstreams]]
type = "socks5"
address = "proxy.example.com:1080"
username = "user"
password = "pass"
2026-02-20 21:42:15 +03:00
Alexey
1fd78e012d
Metrics + Fixes in tests
2026-02-20 18:02:02 +03:00
Alexey
7304dacd60
Update main.rs
2026-02-20 17:42:20 +03:00
Alexey
eb3245b78f
Merge branch 'main-stage' into flow
2026-02-20 17:19:23 +03:00
Alexey
a303fee65f
ALPN Extract tests
...
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-20 17:12:16 +03:00
artemws
8892860490
Change whitelist to use IpNetwork for IP filtering
2026-02-20 16:04:21 +02:00
artemws
0d2958fea7
Change metrics whitelist to use IpNetwork
2026-02-20 16:03:57 +02:00
artemws
dbd9b53940
Change metrics_whitelist type from Vec<IpAddr> to Vec<IpNetwork>
2026-02-20 16:03:38 +02:00
Alexey
471c680def
TLS Improvements
...
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-20 17:02:17 +03:00
Alexey
781947a08a
TlsFrontCache + X509 Parser + GREASE Tolerance
...
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-20 16:56:33 +03:00
Alexey
e8454ea370
HAProxy PROXY Protocol Fixes
...
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-20 16:42:40 +03:00
artemws
ea88a40c8f
Add config path canonicalization
...
Canonicalize the config path to match notify events.
2026-02-20 15:37:44 +02:00
Alexey
2ea4c83d9d
Normalize IP + Masking + TLS
2026-02-20 16:32:14 +03:00
artemws
953fab68c4
Refactor hot-reload mechanism to use notify crate
...
Updated hot-reload functionality to use notify crate for file watching and improved documentation.
2026-02-20 15:29:37 +02:00
artemws
0f6621d359
Refactor hot-reload watcher implementation
2026-02-20 15:29:20 +02:00
artemws
25b18ab064
Enhance logging for hot reload configuration changes
...
Added detailed logging for various configuration changes during hot reload, including log level, ad tag, middle proxy pool size, and user access changes.
2026-02-20 14:50:37 +02:00
artemws
3e0dc91db6
Add PartialEq to AccessConfig struct
2026-02-20 14:37:00 +02:00
artemws
26270bc651
Specify types for config_rx in main.rs
2026-02-20 14:27:31 +02:00
artemws
766806f5df
Add hot_reload module to config
2026-02-20 14:19:04 +02:00
artemws
26cf6ff4fa
Add files via upload
2026-02-20 14:18:30 +02:00
artemws
b8add81018
Implement hot-reload for config and log level
...
Added hot-reload functionality for configuration and log level.
2026-02-20 14:18:09 +02:00
Alexey
4d72cb1680
TLS-F: Emu fixes
2026-02-20 14:32:09 +03:00
Alexey
79eebeb9ef
TLS-F: Fetcher fixes
2026-02-20 14:31:58 +03:00
Alexey
1045289539
TLS-F: Emu: stable CipherSuite
2026-02-20 14:15:45 +03:00
Alexey
3d0b32edf5
TLS-F: Emu researching
2026-02-20 14:02:06 +03:00