<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dpibreak.git/src, branch v0.6.1</title>
<subtitle>System-wide DPI circumvention with minimal configuration
</subtitle>
<id>http://git.dilluti0n.com/dpibreak.git/atom?h=v0.6.1</id>
<link rel='self' href='http://git.dilluti0n.com/dpibreak.git/atom?h=v0.6.1'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/'/>
<updated>2026-04-16T10:14:06Z</updated>
<entry>
<title>windows: wait for keypress before exit on --help</title>
<updated>2026-04-16T10:14:06Z</updated>
<author>
<name>dilluti0n</name>
<email>hskim@dilluti0n.com</email>
</author>
<published>2026-04-16T10:11:23Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=199b7783fdd4c81b322c33ba6bad5fd60a300e8a'/>
<id>urn:sha1:199b7783fdd4c81b322c33ba6bad5fd60a300e8a</id>
<content type='text'>
UAC elevation spawns a new console that closes when the process
exits, cutting off --help output and error messages. Add a pause
on Windows-only exit paths via _getch().
</content>
</entry>
<entry>
<title>linux: drain rxring before nfqueue in poll loop</title>
<updated>2026-04-08T07:48:07Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-04-08T07:48:07Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=722a3b008dd7c7aa32ec541bf6326e56751e7cb9'/>
<id>urn:sha1:722a3b008dd7c7aa32ec541bf6326e56751e7cb9</id>
<content type='text'>
When both fds are ready in the same wakeup, the SYN/ACK that triggered
rx_ready is causally prior to the ClientHello waiting in the nfqueue.
Process the rxring first so HopTab is populated before handle_packet
runs find_hop, reducing the race window for HopLookupError::NotFound
under load.
</content>
</entry>
<entry>
<title>opt: fix -D deprecation warning condition</title>
<updated>2026-04-05T10:11:48Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-04-05T10:10:48Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=932d3d479461c250c1131c89c5d7027c34fdfc69'/>
<id>urn:sha1:932d3d479461c250c1131c89c5d7027c34fdfc69</id>
<content type='text'>
Previously checked `argv == "--loglevel"` by mistake, copied from the
--loglevel deprecation pattern. Now correctly checks `argv == "-D"`.
</content>
</entry>
<entry>
<title>Add shopt -t, -a for --fake-ttl, --fake-autottl, respectively</title>
<updated>2026-04-05T09:25:04Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-04-05T09:23:25Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=88f92e05c89f28553adeba7d4866279b167af2f9'/>
<id>urn:sha1:88f92e05c89f28553adeba7d4866279b167af2f9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add short option -d for --daemon, deprecating -D.</title>
<updated>2026-04-05T09:19:29Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-04-05T09:19:29Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=bbfafeb0a0f478dedc8574152b67dfc8be2c697a'/>
<id>urn:sha1:bbfafeb0a0f478dedc8574152b67dfc8be2c697a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>opt: add shopt for --segment-order and description</title>
<updated>2026-04-05T09:07:07Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-04-05T08:19:48Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=4205ad38509e1eab9936f2cc862c6f48e4cf10c1'/>
<id>urn:sha1:4205ad38509e1eab9936f2cc862c6f48e4cf10c1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>pkt: implement segment-order aware send_split</title>
<updated>2026-04-05T09:07:01Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-04-05T07:50:42Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=405416f946c9a474d89d7fc989c1e78d63e841e8'/>
<id>urn:sha1:405416f946c9a474d89d7fc989c1e78d63e841e8</id>
<content type='text'>
Replace hardcoded [0,1] split with send_split accepting &amp;[Segment].
Segments exceeding payload length are warned and skipped. Add Segment
type to opt.rs with Display/Debug showing [start,end) notation.
</content>
</entry>
<entry>
<title>opt: implement SegmentOrder::new and Display</title>
<updated>2026-04-05T07:35:27Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-04-05T07:35:27Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=60f0ec214a59f5a3935c9347bc96bdf85f25de74'/>
<id>urn:sha1:60f0ec214a59f5a3935c9347bc96bdf85f25de74</id>
<content type='text'>
Parse comma-separated split points into sorted segment ranges as
(start, end): pairs. Display shows original input with computed
ranges, e.g. "5,1,0,3 ([5,end), [1,3), [0,1), [3,5))".
</content>
</entry>
<entry>
<title>opt: add SegmentOrder type and --segment-order option</title>
<updated>2026-04-05T07:24:42Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-04-05T07:24:42Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=54a9b442d72a4ae2f23e53dfb915c3cdf0eeaa42'/>
<id>urn:sha1:54a9b442d72a4ae2f23e53dfb915c3cdf0eeaa42</id>
<content type='text'>
SegmentOrder parses a comma-separated list of u32 split points, sorts
them, and precomputes segment ranges as (start, end) pairs for use in
send_split. The original input string is retained for Display. Parsing
logic is unimplemented and will follow in the next commit.
</content>
</entry>
<entry>
<title>linux: rxring: nit: add SPDX header</title>
<updated>2026-03-15T04:27:57Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-03-15T04:27:57Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=57ff0e7c3279935f3879691d794bf5c8f798e5c0'/>
<id>urn:sha1:57ff0e7c3279935f3879691d794bf5c8f798e5c0</id>
<content type='text'>
</content>
</entry>
</feed>
