LDN services: Difference between revisions
Line 245: | Line 245: | ||
This is the same as [[#ScanPrivate]], except this also has the same channel-override functionality as [[#CreateNetwork]]. | This is the same as [[#ScanPrivate]], except this also has the same channel-override functionality as [[#CreateNetwork]]. | ||
[[#GetState|State]] must be 3-5 | [[#GetState|State]] must be 3-5. | ||
=== ScanPrivate === | === ScanPrivate === | ||
Line 257: | Line 257: | ||
=== OpenAccessPoint === | === OpenAccessPoint === | ||
No input/output. | No input/output. | ||
[[#GetState|State]] must be 1, this cmd eventually sets the State to value 2. | |||
=== CloseAccessPoint === | === CloseAccessPoint === | ||
No input/output. | No input/output. | ||
[[#GetState|State]] must be 2-3, this cmd eventually sets the State to value 1. | |||
=== CreateNetwork === | === CreateNetwork === | ||
Line 267: | Line 271: | ||
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]] 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. | ||
[[#GetState|State]] must be 2, this cmd eventually sets the State to value 3. | |||
=== CreateNetworkPrivate === | === CreateNetworkPrivate === | ||
Line 275: | Line 281: | ||
=== DestroyNetwork === | === DestroyNetwork === | ||
No input/output. | No input/output. | ||
[[#GetState|State]] must be 3, this cmd eventually sets the State to value 2. | |||
=== Reject === | === Reject === | ||
Line 299: | Line 307: | ||
=== OpenStation === | === OpenStation === | ||
No input/output. | No input/output. | ||
[[#GetState|State]] must be 1, this cmd eventually sets the State to value 4. | |||
=== CloseStation === | === CloseStation === | ||
No input/output. | No input/output. | ||
[[#GetState|State]] must be 4-5, this cmd eventually sets the State to value 1. | |||
=== Connect === | === Connect === | ||
Takes a type-0x19 input buffer containing a [[#NetworkInfo]], a [[#SecurityConfig]], an [[#UserConfig]], a s32 LocalCommunicationVersion, a [[#ConnectOption]], no output. | Takes a type-0x19 input buffer containing a [[#NetworkInfo]], a [[#SecurityConfig]], an [[#UserConfig]], a s32 LocalCommunicationVersion, a [[#ConnectOption]], no output. | ||
[[#GetState|State]] must be 4, this cmd eventually sets the State to value 5. | |||
=== ConnectPrivate === | === ConnectPrivate === | ||
Line 311: | Line 325: | ||
=== Disconnect === | === Disconnect === | ||
No input/output. | No input/output. | ||
[[#GetState|State]] must be 5, this cmd eventually sets the State to value 4. | |||
=== InitializeSystem === | === InitializeSystem === | ||
Line 323: | Line 339: | ||
This is used during service exit, prior to closing the object. Official sw will Abort if this fails. | This is used during service exit, prior to closing the object. Official sw will Abort if this fails. | ||
If State is set for it, this will run the equivalent of [[#CloseAccessPoint]]/[[#CloseStation]] when needed. | |||
[[#GetState|State]] must be non-zero, this cmd eventually sets the State to value 0. | |||
=== SetOperationMode === | === SetOperationMode === | ||
Line 333: | Line 353: | ||
The input u32 is ignored, the impl for this cmd is identical to [[#InitializeSystem]]. | The input u32 is ignored, the impl for this cmd is identical to [[#InitializeSystem]]. | ||
[[#GetState|State]] must be 0, this cmd eventually sets the State to value 1. | |||
= ldn:u = | = ldn:u = |