<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dpibreak.git/src/platform/linux, branch v0.6.2</title>
<subtitle>System-wide DPI circumvention with minimal configuration
</subtitle>
<id>http://git.dilluti0n.com/dpibreak.git/atom?h=v0.6.2</id>
<link rel='self' href='http://git.dilluti0n.com/dpibreak.git/atom?h=v0.6.2'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/'/>
<updated>2026-07-10T08:32:39Z</updated>
<entry>
<title>linux: rxring: fix lifetime issue for Pkt::net()</title>
<updated>2026-07-10T08:32:39Z</updated>
<author>
<name>dilluti0n</name>
<email>hskim@dilluti0n.com</email>
</author>
<published>2026-07-10T08:32:39Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=47971046d4cc8e4964a207758831f6820a805859'/>
<id>urn:sha1:47971046d4cc8e4964a207758831f6820a805859</id>
<content type='text'>
Result should be unusable after Pkt is dropped, not rx is dropped.
</content>
</entry>
<entry>
<title>linux: rxring: fix tp_snaplen treated as the L3 length instead L2</title>
<updated>2026-07-10T07:59:23Z</updated>
<author>
<name>dilluti0n</name>
<email>hskim@dilluti0n.com</email>
</author>
<published>2026-07-10T07:59:23Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=062ae9fe82f9cc2256cbdbfdc5f00e387314f49a'/>
<id>urn:sha1:062ae9fe82f9cc2256cbdbfdc5f00e387314f49a</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>linux: rxring: guard div0 as EINVAL</title>
<updated>2026-07-09T07:15:31Z</updated>
<author>
<name>dilluti0n</name>
<email>hskim@dilluti0n.com</email>
</author>
<published>2026-07-09T07:15:31Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=fb0f1e7ad8e7e191f66ffcdd712afcda9181dfa9'/>
<id>urn:sha1:fb0f1e7ad8e7e191f66ffcdd712afcda9181dfa9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>linux: rxring: fix u32 overflow on ring_size init</title>
<updated>2026-07-09T07:07:30Z</updated>
<author>
<name>dilluti0n</name>
<email>hskim@dilluti0n.com</email>
</author>
<published>2026-07-09T07:07:08Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=758399909f58de6548f66f1ae6fe25c905fddc9f'/>
<id>urn:sha1:758399909f58de6548f66f1ae6fe25c905fddc9f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>linux: rxring: fix possable memory ordering issue</title>
<updated>2026-07-09T06:27:32Z</updated>
<author>
<name>dilluti0n</name>
<email>hskim@dilluti0n.com</email>
</author>
<published>2026-07-09T06:26:46Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=96478e1940e7055cd9fcdb26824eae799a8ae62b'/>
<id>urn:sha1:96478e1940e7055cd9fcdb26824eae799a8ae62b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>linux: rules: abort if any rule is failed to install</title>
<updated>2026-07-08T08:02:11Z</updated>
<author>
<name>dilluti0n</name>
<email>hskim@dilluti0n.com</email>
</author>
<published>2026-07-08T08:02:11Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=0cb41194f36873365adf4d27799b7dad43a47aee'/>
<id>urn:sha1:0cb41194f36873365adf4d27799b7dad43a47aee</id>
<content type='text'>
</content>
</entry>
<entry>
<title>linux: move firewall rule handling to mod rule</title>
<updated>2026-07-08T07:47:02Z</updated>
<author>
<name>dilluti0n</name>
<email>hskim@dilluti0n.com</email>
</author>
<published>2026-07-08T07:47:02Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=8db4cd5a1c06de0a55f9a87ee09023075f6b61ec'/>
<id>urn:sha1:8db4cd5a1c06de0a55f9a87ee09023075f6b61ec</id>
<content type='text'>
</content>
</entry>
<entry>
<title>linux: fix iptables not cleanup on startup</title>
<updated>2026-07-08T06:41:06Z</updated>
<author>
<name>dilluti0n</name>
<email>hskim@dilluti0n.com</email>
</author>
<published>2026-07-08T06:41:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=3dd1c2c9824e54cae6cfe0290f1f81620b89f33f'/>
<id>urn:sha1:3dd1c2c9824e54cae6cfe0290f1f81620b89f33f</id>
<content type='text'>
cleanup_rules() relies on the global flag IS_NFT_NOT_SUPPORTED, which
is always False before install_rule is called. Fixed it to always
attempt cleanup for ipt/ip6/nft at startup.

At the same time, implement Drop so that firewall cleanup occurs when
dies due to ?.
</content>
</entry>
<entry>
<title>linux: rxring: make tp_* series configurable</title>
<updated>2026-07-06T15:12:39Z</updated>
<author>
<name>dilluti0n</name>
<email>hskim@dilluti0n.com</email>
</author>
<published>2026-07-06T15:01:07Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=8a69237243c045800996846b6c2db4dd5f7383f6'/>
<id>urn:sha1:8a69237243c045800996846b6c2db4dd5f7383f6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>linux: implement socket and mmap wrapper for rxring</title>
<updated>2026-07-06T15:12:23Z</updated>
<author>
<name>dilluti0n</name>
<email>hskim@dilluti0n.com</email>
</author>
<published>2026-07-06T14:34:20Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/dpibreak.git/commit/?id=2a024e886547bdcddd9633d77baa0d25c5d3bb07'/>
<id>urn:sha1:2a024e886547bdcddd9633d77baa0d25c5d3bb07</id>
<content type='text'>
Here mmap/munmap wrapper remain unsafe since mmap returns a pointer
causes a memory leak when munmap is not called while dropping, and
munmap has strict rule (PAGE_SIZE aligned) for addr defined on
munmap(2).
</content>
</entry>
</feed>
