20.0.1: Difference between revisions

Created page with "The Switch 20.0.1 system update was released on May 2, 2025 (UTC). This Switch update was released for the following regions: ALL. Security flaws fixed: <fill this in manuall..."
 
 
(4 intermediate revisions by 2 users not shown)
Line 23: Line 23:


=== IPC Interface Changes ===
=== IPC Interface Changes ===
* Unknown Interface prev-version: 0x710026550C [ID = 0x0919ff75]
No changes.
* Unknown Interface prev-version: 0x7100264DDC [ID = 0x38f0bb3d]
 
* Unknown Interface prev-version: 0x71001A4F6C [ID = 0x4e930893]
=== [[NS_services|ns]] ===
* Unknown Interface prev-version: 0x71002636F8 [ID = 0x107aa108]
* The only changed function was L_dce70.
* Unknown Interface prev-version: 0x71001A4968 [ID = 0x04dea048]
** This function iterates through "tmpCache" and attempts to shrink all JPEG images with [[Jpegdec_services#ShrinkJpegEx|ShrinkJpegEx]] in a loop.
* Unknown Interface prev-version: 0x7100264B44 [ID = 0x3af03446]
** However, the objects holding the JPEG file context were being freed unconditionally which resulted in passing invalid arguments (use-after-free) to [[Jpegdec_services#ShrinkJpegEx|ShrinkJpegEx]] which, in turn, would return the error code 0x7EECE (2206-1015) which the function would then blindly return back.
* Unknown Interface prev-version: 0x7100265230 [ID = 0x36f3a242]
** The issue was fixed by first no longer blindly return the error code returned by [[Jpegdec_services#ShrinkJpegEx|ShrinkJpegEx]] and then properly implementing the conditions that lead to freeing the JPEG file objects.
* Unknown Interface cur-version: 0x71001A4F60 [ID = 0x4e930893]
* Unknown Interface cur-version: 0x7100264B34 [ID = 0x3af03446]
* Unknown Interface cur-version: 0x7100264DCC [ID = 0x38f0bb3d]
* Unknown Interface cur-version: 0x7100265220 [ID = 0x36f3a242]
* Unknown Interface cur-version: 0x71002654FC [ID = 0x0919ff75]
* Unknown Interface cur-version: 0x71001A495C [ID = 0x04dea048]
* Unknown Interface cur-version: 0x71002636E8 [ID = 0x107aa108]
* Interface Changed: nn::account::IAccountServiceForAdministrator
** Changed:  292 - outinterfaces: ['0x7100264B44 [ID = 0x3af03446]'] -> ['0x7100264B34 [ID = 0x3af03446]'] (final state: inbytes: 0x10, outbytes: 0x0, outinterfaces: ['0x7100264B34 [ID = 0x3af03446]'])
** Changed:  293 - outinterfaces: ['0x7100264DDC [ID = 0x38f0bb3d]'] -> ['0x7100264DCC [ID = 0x38f0bb3d]'] (final state: inbytes: 0x10, outbytes: 0x0, outinterfaces: ['0x7100264DCC [ID = 0x38f0bb3d]'])
** Changed:  350 - outinterfaces: ['0x7100265230 [ID = 0x36f3a242]'] -> ['0x7100265220 [ID = 0x36f3a242]'] (final state: inbytes: 0x1, outbytes: 0x0, outinterfaces: ['0x7100265220 [ID = 0x36f3a242]'])
** Changed:  352 - outinterfaces: ['0x710026550C [ID = 0x0919ff75]'] -> ['0x71002654FC [ID = 0x0919ff75]'] (final state: inbytes: 0x4, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x71002654FC [ID = 0x0919ff75]'])
* Interface Changed: nn::account::baas::IAdministrator
** Changed:  181 - outinterfaces: ['0x71002636F8 [ID = 0x107aa108]'] -> ['0x71002636E8 [ID = 0x107aa108]'] (final state: inbytes: 0x0, outbytes: 0x0, outinterfaces: ['0x71002636E8 [ID = 0x107aa108]'])
** Changed:  182 - outinterfaces: ['0x71002636F8 [ID = 0x107aa108]'] -> ['0x71002636E8 [ID = 0x107aa108]'] (final state: inbytes: 0x10, outbytes: 0x0, outinterfaces: ['0x71002636E8 [ID = 0x107aa108]'])
* Interface Changed: nn::account::baas::IManagerForSystemService
** Changed:  181 - outinterfaces: ['0x71002636F8 [ID = 0x107aa108]'] -> ['0x71002636E8 [ID = 0x107aa108]'] (final state: inbytes: 0x0, outbytes: 0x0, outinterfaces: ['0x71002636E8 [ID = 0x107aa108]'])
** Changed:  182 - outinterfaces: ['0x71002636F8 [ID = 0x107aa108]'] -> ['0x71002636E8 [ID = 0x107aa108]'] (final state: inbytes: 0x10, outbytes: 0x0, outinterfaces: ['0x71002636E8 [ID = 0x107aa108]'])
* Interface Changed: nn::ns::detail::IApplicationManagerInterface
** Changed:  4026 - outinterfaces: ['0x71001A4968 [ID = 0x04dea048]'] -> ['0x71001A495C [ID = 0x04dea048]'] (final state: inbytes: 0x8, outbytes: 0x0, outinterfaces: ['0x71001A495C [ID = 0x04dea048]'])
** Changed:  4027 - outinterfaces: ['0x71001A4F6C [ID = 0x4e930893]'] -> ['0x71001A4F60 [ID = 0x4e930893]'] (final state: inbytes: 0x8, outbytes: 0x0, outinterfaces: ['0x71001A4F60 [ID = 0x4e930893]'])


==See Also==
==See Also==