3.0.1

From Nintendo Switch Brew
Jump to: navigation, search

The Switch 3.0.1 system update was released on July 31, 2017. This Switch update was released for the following regions: ALL.

Security flaws fixed: <fill this in manually later, see the updatedetails page from the ninupdates-report page(s) once available for now>.

Change-log

Official ALL change-log:

General system stability improvements to enhance the user's experience, including:

  • Addressed an issue in which the remaining battery charge can't be displayed accurately
    • If the system's battery power display suddenly increases or decreases, it will gradually improve by following these steps.

System Titles

Exactly the following was updated:

  • Every sysmodule.
  • Every web-applet.
  • Sysupdate titlelisting-title, browser "shareddata:/", System Version Title, and all FIRM packages.

All sysmodules were rebuilt, where the only change was the hashid following the "GNU" string, however some sysmodules have additional changes.

  • Some sysmodules have strings containing "D:\home\teamcity\work\sdk\Externals\{...}" changed to "D:\Home\teamcity\work\sdk\Externals\{...}".
  • Build timestamp in wlan-sysmodule was updated.

Actual updated sysmodules:

  • nvservices
  • pcv
  • account
  • nim
  • pctl
  • npns
  • eupld

The only changes for npns and account: The "https://dauth-%.ndas.srv.nintendo.net/v1/device_auth_token" URL was changed to "https://dauth-%.ndas.srv.nintendo.net/{hex string}/device_auth_token".

The above new URL was added(not replacing any URL in .(ro)data) to nim, + code changes. A "device_auth_token" string in nim was removed.

As of October 19, 2017, manually accessing the above new URL with the proper post-data works fine, however accessing the old URL returns the following: {"errors":[{"code":"0007","message":"System update is required."}]} Hence, all sysmodules using the old URL would throw a sysupdate-required error.

FIRM packages

819:

Everything under RomFS was updated.

Kernel wasn't updated.

The following firm-sysmodules were updated: FS, boot, and sm. The remaining modules(Loader, NCM, ProcessMana, and spl) were rebuilt: hashid following "GNU" string was updated.

FS

Basically all code changes are related to the new NCA crypto. Key-init function was updated due to the new NCA crypto. Various keyindex values were updated due to the new NCA crypto, for non-NCA and NCA code. A function which returned ncahdr_x206("Crypto Type") was replaced with a branch to the new <get-final-cryptotype> function described here(equivalent to similar changes elsewhere).

boot

Updated 1 func and added a new func:

  • Added a call to <new func>. w1 value passed to L_381c(prev ver L_37d4) is now the output of <mask>, instead of fixed to 0x1.

Internet Browser

All webapplets were updated, vulnerabilities were fixed. 803/buildinfo/buildinfo.dat contains the following:

 r:14938
 p:NX64
 v:Release
 d:2017-07-11 17:51
 n:0.6.10

Keys

The bootloader version was changed from 2 to 3.

New keydata was introduced for NCA content, see here.

New keydata was introduced for BCAT containers for indexes 0x10 to 0x1F.

See Also

System update report(s):

Nintendo Switch System Versions
1.0.02.0.02.1.02.2.02.3.03.0.03.0.13.0.24.0.04.0.1