<feed xmlns='http://www.w3.org/2005/Atom'>
<title>eglantine-cirakg/src/core/crypto/ctr_encryption_layer.cpp, branch nx2</title>
<subtitle>Mirror of github.com/cira0100/Eglantine-public nx2, a fork of Djihads80/Eglantine.</subtitle>
<id>https://git.cirakg.xyz/eglantine-cirakg/atom?h=nx2</id>
<link rel='self' href='https://git.cirakg.xyz/eglantine-cirakg/atom?h=nx2'/>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/'/>
<updated>2025-10-26T01:12:27+00:00</updated>
<entry>
<title>[crypto] Rework AES CTR/XTS streaming and squash heap churn (#2782)</title>
<updated>2025-10-26T01:12:27+00:00</updated>
<author>
<name>godpow</name>
<email>thesaviorsrule@yahoo.com</email>
</author>
<published>2025-10-26T01:12:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=41e15e95b19748f4c2da31e3b8263a8626ef306a'/>
<id>urn:sha1:41e15e95b19748f4c2da31e3b8263a8626ef306a</id>
<content type='text'>
AES Updates:
Replaced heap churn with stack scratch buffers tail handling now stays in-place, no more recursive transcode detours.
CTR/XTS modes read in larger, aligned chunks and still handle odd offsets cleanly.
XTS prefetches a few sectors ahead to reduce extra reads.
AesCtrStorage writer now uses the pooled buffer properly one stack slab, chunk forward, bump counter, repeat.
Result: less malloc noise, fewer watchdog spikes at startup (though mbedtls still sets the pace).
This should make the loading speed slightly better than before. Make sure to test.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2782
Reviewed-by: MaranBr &lt;maranbr@eden-emu.dev&gt;
Reviewed-by: crueter &lt;crueter@eden-emu.dev&gt;
Co-authored-by: godpow &lt;thesaviorsrule@yahoo.com&gt;
Co-committed-by: godpow &lt;thesaviorsrule@yahoo.com&gt;
</content>
</entry>
<entry>
<title>[nca] Use better tight loop allocation schemes (none at all) for AES decrypt/encrypt and force MbedTLS to use AES x86_64 instructions (#2750)</title>
<updated>2025-10-17T03:08:51+00:00</updated>
<author>
<name>lizzie</name>
<email>lizzie@eden-emu.dev</email>
</author>
<published>2025-10-17T03:08:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=440ee4916dd618cea27040fdb9e1c185ac3494f8'/>
<id>urn:sha1:440ee4916dd618cea27040fdb9e1c185ac3494f8</id>
<content type='text'>
Uses stack instead of allocating stuff haphazardly (16 bytes and 512 bytes respectively) - removes malloc() pollution and all that nasty stuff from tight loops
Original work by Ribbit but edited by me.
Will NOT bring a massive speedup since the main bottleneck is mbedtls itself, but may bring nice oddities to STARTUP TIMES nonetheless.
AES instructions being forced wont affect CPUs without them since there is always a runtime check for them.

Signed-off-by: lizzie lizzie@eden-emu.dev
Co-authored-by: Ribbit &lt;ribbit@placeholder.com&gt;
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2750
Reviewed-by: CamilleLaVey &lt;camillelavey99@gmail.com&gt;
Co-authored-by: lizzie &lt;lizzie@eden-emu.dev&gt;
Co-committed-by: lizzie &lt;lizzie@eden-emu.dev&gt;
</content>
</entry>
<entry>
<title>general: Convert source file copyright comments over to SPDX</title>
<updated>2022-04-23T09:55:32+00:00</updated>
<author>
<name>Morph</name>
<email>39850852+Morph1984@users.noreply.github.com</email>
</author>
<published>2022-04-23T08:59:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=2b87305d319f0bd04da36fb96314934f37b12637'/>
<id>urn:sha1:2b87305d319f0bd04da36fb96314934f37b12637</id>
<content type='text'>
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
</content>
</entry>
<entry>
<title>core: Remove unused includes</title>
<updated>2021-11-04T01:42:57+00:00</updated>
<author>
<name>ameerj</name>
<email>52414509+ameerj@users.noreply.github.com</email>
</author>
<published>2021-11-04T01:21:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=d27abf5546bc392d498dedf87daed57e96268b0f'/>
<id>urn:sha1:d27abf5546bc392d498dedf87daed57e96268b0f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>core: Make variable shadowing a compile-time error</title>
<updated>2021-05-16T07:43:16+00:00</updated>
<author>
<name>Lioncash</name>
<email>mathew1800@gmail.com</email>
</author>
<published>2021-05-16T05:46:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=eeae5217ba6572e8dfb91550ea9f30413c6786b8'/>
<id>urn:sha1:eeae5217ba6572e8dfb91550ea9f30413c6786b8</id>
<content type='text'>
Now that we have most of core free of shadowing, we can enable the
warning as an error to catch anything that may be remaining and also
eliminate this class of logic bug entirely.
</content>
</entry>
<entry>
<title>aes_util: Allow SetIV to be non-allocating</title>
<updated>2020-08-03T18:29:58+00:00</updated>
<author>
<name>Lioncash</name>
<email>mathew1800@gmail.com</email>
</author>
<published>2020-08-03T18:14:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=c28e7f51f3fd1768b130c9a50d61747de1a23146'/>
<id>urn:sha1:c28e7f51f3fd1768b130c9a50d61747de1a23146</id>
<content type='text'>
In a few places, the data to be set as the IV is already within an array.
We shouldn't require this data to be heap-allocated if it doesn't need
to be. This allows certain callers to reduce heap churn.
</content>
</entry>
<entry>
<title>Port #4182 from Citra: "Prefix all size_t with std::"</title>
<updated>2018-09-15T13:21:06+00:00</updated>
<author>
<name>fearlessTobi</name>
<email>thm.frey@gmail.com</email>
</author>
<published>2018-09-15T13:21:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=1190ea6ddbbcabca5ac0ee73f940f509888f8673'/>
<id>urn:sha1:1190ea6ddbbcabca5ac0ee73f940f509888f8673</id>
<content type='text'>
</content>
</entry>
<entry>
<title>game_list: Use RegisteredCacheUnion for installed</title>
<updated>2018-09-04T20:21:40+00:00</updated>
<author>
<name>Zach Hilman</name>
<email>zachhilman@gmail.com</email>
</author>
<published>2018-08-25T22:59:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=bf8670087333a25bb380b090a9f10f18958fbd68'/>
<id>urn:sha1:bf8670087333a25bb380b090a9f10f18958fbd68</id>
<content type='text'>
Reduces code
</content>
</entry>
<entry>
<title>ctr_encryption_layer: Fix bug when transcoding small data</title>
<updated>2018-08-23T15:52:44+00:00</updated>
<author>
<name>Zach Hilman</name>
<email>zachhilman@gmail.com</email>
</author>
<published>2018-08-16T20:58:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=abb0f6cac9f585791c17e79dcf976b9aee0fc665'/>
<id>urn:sha1:abb0f6cac9f585791c17e79dcf976b9aee0fc665</id>
<content type='text'>
Fixes a bug where data lengths of less than size 0x10 will fail or have misleading return values.
</content>
</entry>
<entry>
<title>Add missing includes and use const where applicable</title>
<updated>2018-08-01T04:16:54+00:00</updated>
<author>
<name>Zach Hilman</name>
<email>zachhilman@gmail.com</email>
</author>
<published>2018-07-29T23:00:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=568ce6304c9a7def1ee0cd9cc65f0428d5d9a5c5'/>
<id>urn:sha1:568ce6304c9a7def1ee0cd9cc65f0428d5d9a5c5</id>
<content type='text'>
</content>
</entry>
</feed>
