aboutsummaryrefslogtreecommitdiffhomepage
path: root/Cargo.lock
Commit message (Collapse)AuthorAgeFilesLines
* Publish local windivert crate to crates.iodilluti0n2026-07-151-3/+3
| | | | To publish dpibreak to there
* Bump version to 0.6.2v0.6.2dilluti0n2026-07-151-27/+27
|
* windows: touch WinDivert service at start to prevent bad state issuedilluti0n2026-07-141-2/+107
| | | | | | | | | | | | | | Query the service state with `sc query windivert` at startup, as this is observed to resolve the bad state described in commit 168a88b8 ("windows: fix some kind of race"). This is a defensive measure against the driver uninstall introduced by that commit. Normally the uninstall is attempted only after all handles opened by the current process are closed, but if another process still holds an open WinDivert handle at that point, the driver can remain stuck in a bad state on subsequent runs. Link: https://github.com/basil00/WinDivert/issues/406
* windows: pull windivert-0.6.0 to local crate/ dir from crates.iodilluti0n2026-07-131-2/+0
| | | | | | This is pulled from cargo cache: cp -r ~/.cargo/registry/src/index.crates.io-*/windivert-0.6.0 \ crates/windivert
* linux: rxring: fix tp_snaplen treated as the L3 length instead L2dilluti0n2026-07-101-3/+24
| | | | | | | | | While solving it, introduced Pkt abstraction so that advance() is automatically executed upon dropping it. This change still allows access to mmapped pointers within the Pkt.net() and enables the addition of other slice fields (such as mac) later.
* linux: drop nix, add wrapper libc_s insteaddilluti0n2026-07-061-67/+86
| | | | | | | | | | | | | When I updated nix to 0.31, `nix::fcntl::flock` became deprecated and unusable. At first I try to refactor `lock_pid_file()` to use the `lock` method of the `nix::fcntl::Flock` struct, but a situation arose where `set_len(0)` could not be called due to ownership issues. Linux system calls are fundamentally simple, stable, and backward compatible. Therefore, a compat layer is not necessary. Anticipating that this might happen again, this commit introduce the `libc_s`, which handles simple error processing for unsafe ffis in libc syscall bindings.
* linux: drop ctrlc crate and use signalfd insteaddilluti0n2026-06-291-67/+1
| | | | | | This integrates well with the main poll loop and removes the global AtomicBool RUNNING, which previously did nothing but detect interrupts before entering the loop.
* Bump version to 0.6.1dilluti0n2026-04-161-23/+23
|
* Bump version to 0.6.0v0.6.0dilluti0n2026-04-051-33/+33
|
* Bump version to 0.5.1v0.5.1dilluti0n2026-03-101-96/+22
|
* Bump version to 0.5.0v0.5.0dilluti0n2026-03-021-18/+18
|
* windows: split WinDivert into separate recv/send/sniff handlesdilluti0n2026-02-271-32/+32
| | | | | | windows: add cleanup for SEND_HANDLE windows: fix every packet goes to send-only handle
* linux: nftables: drop serde_json, use nft text syntaxdilluti0n2026-02-261-1/+0
| | | | 100 lines of JSON soup -> 16 lines of actual nftables
* Bump version to 0.4.3dilluti0n2026-02-161-3/+3
|
* log: drop chrono, use localtime_r and GetLocalTime directlydilluti0n2026-02-161-110/+1
| | | | 24 KiB is precious :)
* log: print time with crate chronodilluti0n2026-02-161-0/+110
|
* Bump version to 0.4.2dilluti0n2026-02-161-3/+3
|
* Bump version to 0.4.1v0.4.1dilluti0n2026-02-151-1/+1
|
* Bump version to 0.4.0dilluti0n2026-02-151-42/+42
|
* windows: implement windows servicedilluti0n2026-02-151-0/+10
| | | | | | | | | Revert lock_handle() send_to_raw cannot get a mutex since lock is not released per iteration. commit e08b57d281d8368dc02f06e3b6cd43edf88b2438
* linux: implement daemonizedilluti0n2026-02-151-0/+10
| | | | | Closes: #2 Link: https://github.com/dilluti0n/dpibreak/issues/2
* Bump version to 0.3.0v0.3.0dilluti0n2026-02-011-21/+21
| | | | Closes: https://github.com/dilluti0n/dpibreak/issues/12
* Add benchmark for pkt/hoptab, add feature bench for internal benchesdilluti0n2026-01-231-0/+433
|
* Bump version to v0.2.2v0.2.2dilluti0n2026-01-181-5/+5
|
* linux: drop iptables crate (regex dep) to reduce binary sizedilluti0n2026-01-181-93/+3
| | | | Introduce minimal iptables wrapper.
* Bump version to v0.2.1v0.2.1dilluti0n2026-01-161-1/+1
|
* Bump version to 0.2.0v0.2.0dilluti0n2026-01-161-3/+3
|
* Bump version to 0.1.1v0.1.1dilluti0n2026-01-121-21/+21
|
* Bump version to 0.1.0v0.1.0dilluti0n2026-01-051-1/+1
|
* Bump version to 0.0.7v0.0.7dilluti0n2026-01-041-7/+7
|
* Bump version to 0.0.6v0.0.6dilluti0n2025-12-281-1/+1
|
* ci: switch nfq dependency to crates.io-compatible nfq-updateddilluti0n2025-12-281-24/+25
|
* ci: add readme metadata on Cargo.tomldilluti0n2025-12-281-17/+17
|
* Bump version to 0.0.5v0.0.5dilluti0n2025-12-221-19/+19
|
* Bump version to 0.0.4v0.0.4dilluti0n2025-10-291-1/+1
|
* ci: update cratesdilluti0n2025-10-291-68/+99
|
* linux: switch to apply_nft_rules() from nftables-rs for rule settingdilluti0n2025-10-291-137/+3
| | | | | nftables-rs didn’t fit use case, so it was decoupled, and logging was improved.
* Bump version to 0.0.3v0.0.3dilluti0n2025-10-061-1/+1
|
* Move linux-only dependencies on Cargo.tomldilluti0n2025-10-061-16/+16
|
* platform: linux: add nftables support with iptables fallbackdilluti0n2025-10-031-44/+242
| | | | | | | | | | 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.
* Bump version to 0.0.2v0.0.2dilluti0n2025-09-111-1/+1
|
* Update version and metadatas on Cargo.tomldilluti0n2025-09-051-1/+1
| | | | * Use: Cargo.toml inside on program
* Decouple once_cell by replacing it with standard libDilluti0n2025-08-231-7/+0
|
* build: use winres to add manifest for windows binarydilluti0n2025-08-061-1/+39
|
* implement: not-working framework for windowsdilluti0n2025-08-061-0/+1
|
* refactor: move platform-dependent code to mod platformdilluti0n2025-07-271-9/+128
|
* revert ctrlc to override default SIGINT handlerdilluti0n2025-07-221-0/+29
|
* feat: poll NFQUEUE socket instead sleep on main loopdilluti0n2025-07-221-29/+0
| | | | | | | | | | 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.
* implement: send_to_raw; open raw socket and sendto it!dilluti0n2025-07-211-0/+11
| | | | * important: it works !!
* feat: Add TLS ClientHello splitting(TCP/IP) logic using etherparsedilluti0n2025-07-211-0/+16
| | | | | | | | | * 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