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).