| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| |
|
|
|
| |
nftables-rs didn’t fit use case, so it was decoupled, and logging was
improved.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
Introduce nftables rules under a dedicated "dpibreak" table and
chain. Traffic on TCP port 443 is queued using NFQUEUE. If nftables
is not supported, fall back to the existing iptables-based rules
for both IPv4 and IPv6.
Also update cleanup logic to remove nftables table if used, or
iptables rules otherwise.
|
| | |
|
| |
|
|
| |
* Use: Cargo.toml inside on program
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
The main motivation for using poll + recv (even with a single FD) is
that blocking recv() is not interrupted by SIGINT, likely due to
SA_RESTART being enabled by default. On the other hand, poll() is
always interruptible by signals regardless of SA_RESTART.
Instead of manually configuring sigaction in Rust, using poll here is
simpler and more reliable.
|
| |
|
|
| |
* important: it works !!
|
| |
|
|
|
|
|
|
|
| |
* Introduced `etherparse` and `arrayvec` dependencies to parse and reconstruct IP/TCP packets
* Replaced legacy TCP payload extraction with robust parsing via `IpSlice` and `TcpSlice`
* Added `split_packet` to split TCP payloads and reconstruct headers
* Added stub `send_to_raw` function to transmit custom-crafted packets (implementation pending)
* Modified `handle_packet` to detect ClientHello and perform split+delay packet transmission
* Improved xt_u32 fallback logic and control flow using early returns and internal closure
|
| | |
|
| |
|
|
|
| |
* implement: get_tcp_payload, parse tcp payload from given ip payload
(seems like does not work well...)
|
| |
|
|
| |
* mock POSIX signal handling with tokio
|
| | |
|
| |
|