WLAN services: Difference between revisions
Line 335: | Line 335: | ||
Takes an input s32 '''WowlDelayedWakeTime'''. No output. | Takes an input s32 '''WowlDelayedWakeTime'''. No output. | ||
'''WowlDelayedWakeTime''' must be <=0xE10 (3600) and >= -1. This value is written into state, then this returns 0. | '''WowlDelayedWakeTime''' must be <=0xE10 (3600) and >= -1. This value is written into state (last field in the state struct also used by [[#Cmd19]], which [[#Cmd19]] doesn't write), then this returns 0. | ||
The user-process code using this cmd also has the above bounds check. | The user-process code using this cmd also has the above bounds check. | ||
Line 342: | Line 342: | ||
This cmd is used by [[Network_Interface_services|nifm]] with a value from state, prior to using RequestSleep. | This cmd is used by [[Network_Interface_services|nifm]] with a value from state, prior to using RequestSleep. | ||
If wificore gets to the point of actually using this for TCP-keep-alive, then it does the following: | |||
* This is only used when the [[#Cmd19|TCP]] connection is RST. | |||
** '''WowlDelayedWakeTime''' is the time in seconds to schedule a timer which will wake the system. 0 will schedule it for immediately. | |||
** -1 will skip scheduling that timer, hence waking the system is disabled when RST is received. | |||
** The wificore also supports -3 for immediately waking the system from the frame-handler, however wlan-sysmodule doesn't allow that. | |||
* Frames where the TCP flags do not match ACK will immediately wake the system, + other wake cause(s). | |||
== Cmd31 == | == Cmd31 == |