summaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAgeFilesLines
...
* Bump version to 0.0.7v0.0.7dilluti0n2026-01-045-25/+32
|
* docs: README.md: describe feature fakedilluti0n2026-01-042-6/+20
|
* docs: explain --fake better on dpibreak.1hskimse2026-01-041-3/+8
|
* windows: include Windows guide and start_fake.bat in dist ziphskimse2026-01-043-1/+49
|
* Normalize option handling and OPT_* namingdilluti0n2025-12-302-16/+27
| | | | Log runtime options on startup
* Merge branch 'feat/desync'dilluti0n2025-12-306-47/+232
|\ | | | | | | | | | | Introduce fake ClientHello injection and --fake, --fake-ttl options. Although the internal feature name is "desync", it is exposed to users as "fake".
| * Add fake ClientHello injection runtime optionsdilluti0n2025-12-304-3/+38
| | | | | | | | | | - Add --fake flag to enable fake ClientHello injection - Add --fake-ttl option to override TTL of fake packets
| * Consolidate fake ClientHello and split packet logicdilluti0n2025-12-302-35/+44
| | | | | | | | Introduce send_segment abstraction
| * Prevent infinite loop on packet injection/filteringdilluti0n2025-12-303-6/+43
| | | | | | | | | | - linux: fix infinite NFQUEUE loop by marking injected packets - windows: by marking packet to impostor
| * Implement fake ClientHello injection with const TTLdilluti0n2025-12-302-42/+83
| |
| * Add dummy tls clienthello packetdilluti0n2025-12-301-0/+63
|/
* linux: extract process execution into `exec_process` helperdilluti0n2025-12-291-17/+29
| | | | | | | | Introduce exec_process() to handle external command execution, stdin piping, and error reporting. Now cleanup() and apply_nft_rules() call exec_process() to call modprobe, nft respectively. This improves error handling for cleanup xt_u32.
* docs: delete miscopied filedilluti0n2025-12-281-123/+0
|
* docs: clarify DPI/SNI description and link to TLS ClientHello specdilluti0n2025-12-281-5/+6
|
* docs: add system requirements and sudo path guide for cargo installdilluti0n2025-12-281-0/+15
|
* docs: add instruction for install crates.io releasedilluti0n2025-12-281-0/+7
|
* Bump version to 0.0.6v0.0.6dilluti0n2025-12-285-3/+128
|
* ci: wrap build info in details tag used in release workflowdilluti0n2025-12-281-1/+4
|
* ci: switch nfq dependency to crates.io-compatible nfq-updateddilluti0n2025-12-282-25/+26
|
* ci: add readme metadata on Cargo.tomldilluti0n2025-12-282-17/+18
|
* Bump version to 0.0.5v0.0.5dilluti0n2025-12-224-21/+24
|
* linux: ignore cleanup errors at startupdilluti0n2025-12-221-7/+3
| | | | | Do not log errors if cleanup fails during startup. Retain error logging for cleanup failures on shutdown.
* Add more links to READMEdilluti0n2025-10-291-5/+9
|
* Add links on READMEdilluti0n2025-10-291-0/+33
|
* Bump version to 0.0.4v0.0.4dilluti0n2025-10-294-11/+13
|
* ci: update cratesdilluti0n2025-10-291-68/+99
|
* ci: do not print glibc version for musl targetdilluti0n2025-10-291-6/+10
|
* Merge branch 'feat/log-nftables'dilluti0n2025-10-296-162/+73
|\ | | | | | | | | | | | | Decouple with nftables-rs crate and incorporate nftables log to logging. This merge was mainly done because a cleanup needs to be performed once at startup, but the log message for that appeared at all log levels, which didn’t look good.
| * Add --nft-command option to manualdilluti0n2025-10-292-0/+8
| |
| * linux: switch to apply_nft_rules() from nftables-rs for rule settingdilluti0n2025-10-293-156/+16
| | | | | | | | | | nftables-rs didn’t fit use case, so it was decoupled, and logging was improved.
| * linux: implement apply_nft_rules() to log output sanelydilluti0n2025-10-291-0/+30
| |
| * linux: add option `--nft-command`dilluti0n2025-10-292-10/+23
|/
* Bump version to 0.0.3v0.0.3dilluti0n2025-10-064-3/+8
|
* docs: update readmedilluti0n2025-10-061-13/+13
|
* windows: avoid ERR_INVALID_NAME when uninstalling WinDivertdilluti0n2025-10-061-2/+9
| | | | | | | `CloseAction::Uninstall` triggers ERROR_INVALID_NAME (0x8007007B) on Windows, likely due to the crate passing a non–NUL-terminated "WinDivert" string to `OpenServiceA`. For now, skip uninstallation and just close the handle normally. Added a FIXME comment with details.
* Move linux-only dependencies on Cargo.tomldilluti0n2025-10-062-18/+18
|
* platform: windows: close handle and uninstall driver sanelydilluti0n2025-10-061-9/+19
|
* platform: windows: only divert clienthello packet to userspacedilluti0n2025-10-032-2/+4
|
* docs: fix typodilluti0n2025-10-033-4/+5
|
* Merge branch 'feat/nftables'dilluti0n2025-10-036-80/+439
|\
| * Update manual with nftables supportdilluti0n2025-10-032-11/+22
| |
| * platform: linux: filter only TLS ClientHello packets on nftablesdilluti0n2025-10-031-0/+21
| | | | | | | | | | | | | | | | Add additional nftables match expressions to detect TLS records (ContentType 0x16 = Handshake): and specifically ClientHello (HandshakeType 0x01):. Packets matching this pattern are queued to NFQUEUE. Mark xt_u32 as supported when nftables filtering is successfully applied.
| * platform: linux: add nftables support with iptables fallbackdilluti0n2025-10-033-55/+356
| | | | | | | | | | | | | | | | | | | | 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.
| * platform: linux: split iptables helpers on bootstrap/cleanupdilluti0n2025-09-271-14/+25
| |
| * Refactor packet sending into split_packet_1 helperdilluti0n2025-09-151-9/+24
| | | | | | | | | | | | | | * Extracted: repeated split/send/sleep logic from `handle_packet` into new `split_packet_1` function for clarity and reuse. * Simplifies: `handle_packet` by replacing manual steps with a single call.
* | ci: build.ps1: fix distribution path handling in release ziphskimse2025-09-121-2/+6
|/ | | | | | * Only remove $DistPath if it exists instead of removing $DistDir entirely * Change Compress-Archive call to run from $DistDir so the top-level distribution directory is preserved in the zipball
* Bump version to 0.0.2v0.0.2dilluti0n2025-09-114-4/+7
|
* build: guard metadata extraction when Cargo.toml or .git is missingdilluti0n2025-09-111-0/+5
|
* Refactor handle_packet to reuse external buffer for packet handlingdilluti0n2025-09-114-9/+16
| | | | This removes unnecessary allocations per packet handling.
* github: auto format release notesdilluti0n2025-09-111-2/+41
|