summaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAgeFilesLines
...
| * windows: add close WinDivert handles on thread exitdilluti0n2026-02-271-19/+21
| | | | | | | | | | | | Move handle lifecycle into spawn_recv so each handle is properly closed when RUNNING becomes false. Filter and flags are passed in instead of a pre-opened handle.
| * windows: refactor thread spawnings to spawn_recv helperdilluti0n2026-02-271-29/+28
| |
| * windows: split WinDivert into separate recv/send/sniff handlesdilluti0n2026-02-272-72/+106
| | | | | | | | | | | | windows: add cleanup for SEND_HANDLE windows: fix every packet goes to send-only handle
| * pkt: add hop infer log to put_hop_1dilluti0n2026-02-261-1/+10
| |
| * pkt: move fake_autottl check out of put_hop_1 to callerdilluti0n2026-02-262-25/+18
| | | | | | | | pkt: inline hop inference into put_hop_1, decoupling it from fake
| * linux: fix rxring initialized even if fake_autottl not enableddilluti0n2026-02-263-28/+43
| | | | | | | | | | | | | | Conditionally initialize rxring only when fake_autottl is enabled. Extract poll_once() using libc::poll directly; fd=-1 trick eliminates the need for conditional branching on optional rxring fd, as poll sets revents=0 for negative fds per POSIX. Drop nix poll feature.
| * linux: refactor run() into open_nfqueue/open_rxring helpersdilluti0n2026-02-262-54/+60
| | | | | | | | | | | | | | | | Extract nfqueue initialization (open, bind, set O_NONBLOCK) and rxring initialization (cBPF filter, open) into separate functions. Inline BorrowedFd scope as a let binding to eliminate floating q_ready/rx_ready declarations. Move SYNACK_443_CBPF const into open_rxring.
| * linux: rxring: implement current_packet and advancedilluti0n2026-02-262-24/+62
| | | | | | | | | | | | | | | | - Split next_packet into current_packet (read) and advance (release) to avoid TOCTOU between kernel overwrite and packet processing - Add current_frame helper to avoid duplicated pointer arithmetic - Switch AF_PACKET socket to ETH_P_ALL for future IPv6 support - Add FRAME_SIZE comment explaining 128B is sufficient for IP header
| * linux: rxring: implement RxRing::newdilluti0n2026-02-262-7/+93
| |
| * linux: add rxring skeleton and integrate into run loopdilluti0n2026-02-263-23/+111
| | | | | | | | | | | | | | - Add rxring module with RxRing struct (new/next_packet unimplemented) - Attach cBPF filter for TCP src port 443 SYN/ACK packets - Multiplex nfqueue and rxring via poll in run loop - Move fake_autottl SYN/ACK handling to pkt::put_hop
| * linux: nftables: drop serde_json, use nft text syntaxdilluti0n2026-02-263-100/+13
| | | | | | | | 100 lines of JSON soup -> 16 lines of actual nftables
| * linux: nftables: remove syn/ack filter from nftablesdilluti0n2026-02-261-59/+0
|/
* pkt: fix infer_hops to use 128, not 126dilluti0n2026-02-261-2/+2
| | | | add debug log for infer_hops
* nit: rename main_0 to _1dilluti0n2026-02-261-2/+2
|
* pkt: add debug log to send_split with dst, segments, payload lendilluti0n2026-02-261-6/+10
|
* log: defer local_time() call until log level check passesdilluti0n2026-02-261-1/+1
|
* pkt: nit: rename split_packet_0/split_packet/split_packet_1dilluti0n2026-02-262-8/+8
| | | | to build_packet/build_segment/send_split
* pkt: rename hoptab public API, drop _0 suffixdilluti0n2026-02-263-19/+19
|
* linux: remove Mutex from RAW4/RAW6, Socket is already Syncdilluti0n2026-02-261-13/+9
|
* Refactor send_to_raw to remove in-place packet reparsingdilluti0n2026-02-263-23/+17
| | | | | | Pass destination address from PktView::daddr() at call site instead of re-extracting it from raw bytes inside send_to_raw. Windows side ignores the argument. Also add #[inline] to PktView accessor methods.
* windows: nit: swap service_run/service_run_1 naming conventiondilluti0n2026-02-261-4/+4
|
* linux: nit: swap daemonize/daemonize_1 naming conventiondilluti0n2026-02-261-4/+4
|
* docs: README.md: fix typodilluti0n2026-02-241-1/+1
|
* docs: README.md: fixdilluti0n2026-02-241-6/+6
|
* docs: README.md: mention cross-platform support explicitlydilluti0n2026-02-241-3/+3
|
* docs: README.md: rewrite Afterword for clarity and flowdilluti0n2026-02-241-32/+35
|
* docs: README.md: revert logodilluti0n2026-02-241-2/+1
|
* docs: README.md: refine footnotes align and re-introduce gpl logodilluti0n2026-02-241-10/+4
|
* docs: README.md: cut unnecessary thingsdilluti0n2026-02-241-4/+0
|
* docs: README.md: fix render issuesdilluti0n2026-02-241-0/+3
|
* docs: README.md: refinedilluti0n2026-02-241-1/+1
|
* docs: README.md: refinedilluti0n2026-02-241-1/+1
|
* docs: README.md: fix render issuesdilluti0n2026-02-241-6/+5
|
* docs: README.md: add afterword, refine quickstart, add platform infodilluti0n2026-02-241-26/+75
|
* docs: README: fix backquotedilluti0n2026-02-221-3/+3
|
* docs: README: add & update many thingsdilluti0n2026-02-221-49/+81
|
* install.sh: remove make dependencydilluti0n2026-02-211-1/+26
|
* docs: change description, refine manualdilluti0n2026-02-205-97/+84
|
* docs: dpibreak.1: simplify expressionsdilluti0n2026-02-202-65/+65
|
* docs: README: updatedilluti0n2026-02-171-4/+4
|
* docs: README: updatedilluti0n2026-02-171-0/+1
|
* Revert "docs: README: remove logo and add cute icon on title"dilluti0n2026-02-171-1/+2
| | | | This reverts commit 09794890506de7eb83f3d29cb4685b4b360e328c.
* docs: README: remove logo and add cute icon on titledilluti0n2026-02-171-2/+1
|
* docs: README: remove How to usedilluti0n2026-02-171-15/+3
|
* docs: README: updatedilluti0n2026-02-171-1/+1
|
* docs: README: updatedilluti0n2026-02-171-4/+6
|
* docs: README: updatedilluti0n2026-02-171-25/+25
|
* docs: README: updatedilluti0n2026-02-171-28/+28
|
* docs: README: updatedilluti0n2026-02-171-3/+3
|
* docs: README: add install.sh methoddilluti0n2026-02-171-4/+13
|