hostapd/src/p2p
Jouni Malinen 8e294c3a2c P2P: Recover from successfully requested, but not started, listen
It is possible for the start_listen() callback to be called to request
the driver to start a driver operation and stop_listen() called
immediately after that (e.g., due to a request to transmit a P2P Public
Action frame) before the driver has had time to start ROC and send an
event to notify of that. Such a sequence could result in
p2p->pending_listen_freq being left to a nonzero value without getting a
call to p2p_listen_cb() to clear it. This would stop an ongoing P2P
listen operation since no following p2p_listen() call would start the
listen due to the pending command being assumed to be in effect.

Fix this by detecting this particular sequence and clearing
p2p->pending_listen_freq.

This was found with the p2p_listen_and_offchannel_tx test case with the
new kernel scheduled and UML time-travel.

Signed-off-by: Jouni Malinen <j@w1.fi>
2023-12-10 19:30:44 +02:00
..
Makefile build: Make more library things common 2020-10-12 20:20:35 +03:00
p2p.c P2P: Recover from successfully requested, but not started, listen 2023-12-10 19:30:44 +02:00
p2p.h P2P: Use only PSC for P2P group in the 6 GHz band 2022-09-14 23:54:20 +03:00
p2p_build.c P2P: Use weighted preferred channel list for channel selection 2022-06-02 17:09:10 +03:00
p2p_dev_disc.c P2PS: Refactor p2p_data::query_hash and p2p_data::query_count use 2015-06-15 17:30:01 +03:00
p2p_go_neg.c P2P: Filter out 6 GHz frequencies if not allowed for P2P connection 2023-02-23 13:20:50 +02:00
p2p_group.c P2P: Stop listen state if Action frame TX is needed on another channel 2019-02-17 16:53:03 +02:00
p2p_i.h P2P: Recover from successfully requested, but not started, listen 2023-12-10 19:30:44 +02:00
p2p_invitation.c P2P: Make invitation flow less aggressive 2023-02-21 11:19:15 +02:00
p2p_parse.c Check whether element parsing has failed 2023-07-18 16:05:17 +03:00
p2p_pd.c P2P: Check dev pointer consistently when building PD Response 2022-11-20 15:15:58 +02:00
p2p_sd.c P2P: Do not use wait_time for SD Response TX for last fragmentation 2017-04-01 14:25:26 +03:00
p2p_utils.c P2P: Use weighted preferred channel list for channel selection 2022-06-02 17:09:10 +03:00