LDN services: Difference between revisions

No edit summary
Line 272: Line 272:
Takes an input [[#SecurityConfig]], an [[#UserConfig]], a [[#NetworkConfig]], no output.
Takes an input [[#SecurityConfig]], an [[#UserConfig]], a [[#NetworkConfig]], no output.


This is similar to [[#CreateNetworkPrivate]], except the [[#AddressEntry]] params are 0, and the [[#SecurityParameter]] is generated from "nn::util::TinyMt::GenerateRandomBytes".
This is the same as [[#CreateNetworkPrivate]], except the [[#AddressEntry]] params are 0, and the [[#SecurityParameter]] is generated from "nn::util::TinyMt::GenerateRandomBytes".


Unlike CreateNetworkPrivate, this overwrites the channel field in the [[#NetworkConfig]] in certain cases. If enabled, the output from [[Settings_services|GetLdnChannel]] will overwrite that field if the s32 setting value is >=0, otherwise the original value is used.
Unlike CreateNetworkPrivate, this overwrites the channel field in the [[#NetworkConfig]]. When the cached [[SPL_services#IsDevelopment|IsDevelopment]] value is true, the output from [[Settings_services|GetLdnChannel]] will overwrite that field if the s32 setting value is >=0, otherwise the original value is used. Otherwise when the IsDevelopment field is false (retail), the channel is overwritten with value 0.


[[#GetState|State]] must be 2, this cmd eventually sets the State to value 3.
[[#GetState|State]] must be 2, this cmd eventually sets the State to value 3.
Line 281: Line 281:
Takes an input [[#SecurityConfig]], a [[#SecurityParameter]], an [[#UserConfig]], a [[#NetworkConfig]], a type-0x9 input buffer containing an array of [[#AddressEntry]], no output.
Takes an input [[#SecurityConfig]], a [[#SecurityParameter]], an [[#UserConfig]], a [[#NetworkConfig]], a type-0x9 input buffer containing an array of [[#AddressEntry]], no output.


The buffer/count for [[#AddressEntry]] can be 0. The count must be <=8.
The buffer/count for [[#AddressEntry]] can be 0, in which case the network will be non-Private like [[#CreateNetwork]]. The count must be <=8.
 
See [[#CreateNetwork]].


=== DestroyNetwork ===
=== DestroyNetwork ===
Line 335: Line 337:


=== ConnectPrivate ===
=== ConnectPrivate ===
Takes a [[#SecurityConfig]], [[#SecurityParameter]], an [[#UserConfig]], a s32, a [[#ConnectOption]], a [[#NetworkConfig]], no output.
Takes a [[#SecurityConfig]], [[#SecurityParameter]], an [[#UserConfig]], a s32 LocalCommunicationVersion, a [[#ConnectOption]], a [[#NetworkConfig]], no output.


=== Disconnect ===
=== Disconnect ===