Difference between revisions of "Splatoon 2"

From Nintendo Switch Brew
Jump to navigation Jump to search
Line 12: Line 12:
 
* A bunch of funcs had {clamp to max value} added:
 
* A bunch of funcs had {clamp to max value} added:
 
** This is done with <code>enl::ContentTransporterCommon<enl::SystemInformation>::readyReceiveStream()</code> and <code>enl::ContentTransporterCommon<enl::SystemRequestInfo>::readyReceiveStream()</code>. These funcs call <code>sead::ReadStream::readMemBlock</code>, with the returned value now being clamped to a max value.
 
** This is done with <code>enl::ContentTransporterCommon<enl::SystemInformation>::readyReceiveStream()</code> and <code>enl::ContentTransporterCommon<enl::SystemRequestInfo>::readyReceiveStream()</code>. These funcs call <code>sead::ReadStream::readMemBlock</code>, with the returned value now being clamped to a max value.
** <nowiki>enl::PiaTransportManager::receiveFromLib()</nowiki>: Now clamps the output size returned by <code>nn::pia::transport::UnreliableProtocol::Receive()</code> against the input size which was passed to Receive(), instead of using it directly.
+
** <code>enl::PiaTransportManager::receiveFromLib()</code>: Now clamps the output size returned by <code>nn::pia::transport::UnreliableProtocol::Receive()</code> against the input size which was passed to Receive(), instead of using it directly.
 
** Two sets of two deconstructors now have value clamping: <code><enl::WriteStream::~WriteStream()></code> and <code><enl::RamWriteStream::~RamWriteStream()></code>.
 
** Two sets of two deconstructors now have value clamping: <code><enl::WriteStream::~WriteStream()></code> and <code><enl::RamWriteStream::~RamWriteStream()></code>.
 
* <code>enl::TransportManager::updateReceiveBuffer_()</code>:
 
* <code>enl::TransportManager::updateReceiveBuffer_()</code>:

Revision as of 18:10, 15 November 2022

Versions

The below documents changes for USA-region updates. Any referenced codebin symbols are from an old version.

5.5.1

ExeFs:

  • main: updated
  • NPDM: usual update

RomFs: {...}

Codebin changes:

  • A bunch of funcs had {clamp to max value} added:
    • This is done with enl::ContentTransporterCommon<enl::SystemInformation>::readyReceiveStream() and enl::ContentTransporterCommon<enl::SystemRequestInfo>::readyReceiveStream(). These funcs call sead::ReadStream::readMemBlock, with the returned value now being clamped to a max value.
    • enl::PiaTransportManager::receiveFromLib(): Now clamps the output size returned by nn::pia::transport::UnreliableProtocol::Receive() against the input size which was passed to Receive(), instead of using it directly.
    • Two sets of two deconstructors now have value clamping: <enl::WriteStream::~WriteStream()> and <enl::RamWriteStream::~RamWriteStream()>.
  • enl::TransportManager::updateReceiveBuffer_():
    • This now properly returns when the loop fails to find an entry, instead of null-deref.
    • This now checks if(size_from_header>0x442) {return}. Likewise if the ptr loaded from the array-entry is NULL.
  • enl::Buffer::set(): Added a bounds check, returning on fail before the memcpy.

No SDK versions were changed, and the the .nss module string wasn't changed either (which contains a version).