diff --git a/src/drivers/driver.h b/src/drivers/driver.h index 9018c083c..3dc4827a5 100644 --- a/src/drivers/driver.h +++ b/src/drivers/driver.h @@ -4340,6 +4340,15 @@ enum wpa_event_type { * range. */ EVENT_BEACON_LOSS, + + /** + * EVENT_DFS_PRE_CAC_EXPIRED - Notify that channel availability check + * done previously (Pre-CAC) on the channel has expired. This would + * normally be on a non-ETSI DFS regulatory domain. DFS state of the + * channel will be moved from available to usable. A new CAC has to be + * performed before start operating on this channel. + */ + EVENT_DFS_PRE_CAC_EXPIRED, }; diff --git a/src/drivers/driver_common.c b/src/drivers/driver_common.c index b6bcbcad2..220b7d415 100644 --- a/src/drivers/driver_common.c +++ b/src/drivers/driver_common.c @@ -82,6 +82,7 @@ const char * event_to_string(enum wpa_event_type event) E2S(DFS_CAC_STARTED); E2S(P2P_LO_STOP); E2S(BEACON_LOSS); + E2S(DFS_PRE_CAC_EXPIRED); } return "UNKNOWN"; diff --git a/src/drivers/driver_nl80211_event.c b/src/drivers/driver_nl80211_event.c index ed2cbe490..f05c5466c 100644 --- a/src/drivers/driver_nl80211_event.c +++ b/src/drivers/driver_nl80211_event.c @@ -1568,6 +1568,10 @@ static void nl80211_radar_event(struct wpa_driver_nl80211_data *drv, case NL80211_RADAR_NOP_FINISHED: wpa_supplicant_event(drv->ctx, EVENT_DFS_NOP_FINISHED, &data); break; + case NL80211_RADAR_PRE_CAC_EXPIRED: + wpa_supplicant_event(drv->ctx, EVENT_DFS_PRE_CAC_EXPIRED, + &data); + break; default: wpa_printf(MSG_DEBUG, "nl80211: Unknown radar event %d " "received", event_type);