<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dpibreak.git/Cargo.toml, 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-16T11:44:48Z</updated>
<entry>
<title>Bump version to 0.6.1</title>
<updated>2026-04-16T11:44:48Z</updated>
<author>
<name>dilluti0n</name>
<email>hskim@dilluti0n.com</email>
</author>
<published>2026-04-16T11:39:42Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=7dac53b24684573d8cb944290963b2af483df24c'/>
<id>urn:sha1:7dac53b24684573d8cb944290963b2af483df24c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>build: declare MSRV as 1.88</title>
<updated>2026-04-08T07:50:51Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-04-08T07:50:51Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=4836ed5592fbcbca418702d7d499f0c75f5fde9f'/>
<id>urn:sha1:4836ed5592fbcbca418702d7d499f0c75f5fde9f</id>
<content type='text'>
The hot loop in src/platform/linux.rs uses if-let chains:(`if cond &amp;&amp;
let Some(x) = expr`), stabilised in Rust 1.88. Older toolchains fail
with a cryptic E0658 feature-gate error; declaring rust-version
surfaces a clear "package requires rustc 1.88 or newer" message at
cargo invocation time instead.
</content>
</entry>
<entry>
<title>Bump version to 0.6.0</title>
<updated>2026-04-05T09:38:19Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-04-05T09:38:19Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=c1460d727cc82b7765e968973700f4788e6af0ce'/>
<id>urn:sha1:c1460d727cc82b7765e968973700f4788e6af0ce</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Bump version to 0.5.1</title>
<updated>2026-03-09T15:45:53Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-03-09T15:45:53Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=ceb0c8bb58eac03007e4b4684c19cc642acb6a6c'/>
<id>urn:sha1:ceb0c8bb58eac03007e4b4684c19cc642acb6a6c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Bump version to 0.5.0</title>
<updated>2026-03-02T05:59:15Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-03-02T05:59:15Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=212f728d42cf7e04dbd6d441c2b1e7411a9385e8'/>
<id>urn:sha1:212f728d42cf7e04dbd6d441c2b1e7411a9385e8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>windows: simplify packet handling with recv_loop macro</title>
<updated>2026-03-01T12:45:14Z</updated>
<author>
<name>hskimse</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-03-01T12:31:31Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=7944c69c8847883e9efeba0e5687e6f59575f357'/>
<id>urn:sha1:7944c69c8847883e9efeba0e5687e6f59575f357</id>
<content type='text'>
Replace generic spawn_recv with recv_loop macro that encapsulates the
buffer allocation and receive loop. Divert handle now runs directly on
the main thread, while sniff handle spawns a dedicated thread only when
fake_autottl is enabled. This eliminates the mpsc channel, Event enum,
and the race condition where concurrent open_handle calls during driver
initialization could cause error 1058.
</content>
</entry>
<entry>
<title>linux: fix rxring initialized even if fake_autottl not enabled</title>
<updated>2026-02-26T08:15:09Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-02-26T05:33:30Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=822adfe118919add1694878ec668a7962ed077c4'/>
<id>urn:sha1:822adfe118919add1694878ec668a7962ed077c4</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>linux: nftables: drop serde_json, use nft text syntax</title>
<updated>2026-02-26T08:15:09Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-02-26T06:52:57Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=d52a91f64072fa172c996474c06386ad69778aa3'/>
<id>urn:sha1:d52a91f64072fa172c996474c06386ad69778aa3</id>
<content type='text'>
100 lines of JSON soup -&gt; 16 lines of actual nftables
</content>
</entry>
<entry>
<title>docs: change description, refine manual</title>
<updated>2026-02-19T19:28:10Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-02-19T19:28:10Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=aa2c7ef816005be3f45d8c964530e3a0995d0702'/>
<id>urn:sha1:aa2c7ef816005be3f45d8c964530e3a0995d0702</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Bump version to 0.4.3</title>
<updated>2026-02-16T04:09:45Z</updated>
<author>
<name>dilluti0n</name>
<email>hskimse1@gmail.com</email>
</author>
<published>2026-02-16T04:09:45Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=6433860cb3d2fa9014ebd2671a3ac35175a048b4'/>
<id>urn:sha1:6433860cb3d2fa9014ebd2671a3ac35175a048b4</id>
<content type='text'>
</content>
</entry>
</feed>
