hostapd: bump to 2024-03-09
[openwrt/staging/xback.git] / package / network / services / hostapd / src / src / ap / ubus.h
index 185af5a7f43cec221ce75de5f84ba26eb2768577..22767d67ee7564ba023ad4be22ee88d46f8e68c8 100644 (file)
@@ -8,6 +8,8 @@
 #ifndef __HOSTAPD_UBUS_H
 #define __HOSTAPD_UBUS_H
 
+#include "sta_info.h"
+
 enum hostapd_ubus_event_type {
        HOSTAPD_UBUS_PROBE_REQ,
        HOSTAPD_UBUS_AUTH_REQ,
@@ -19,12 +21,15 @@ struct hostapd_ubus_request {
        enum hostapd_ubus_event_type type;
        const struct ieee80211_mgmt *mgmt_frame;
        const struct ieee802_11_elems *elems;
-       const struct hostapd_frame_info *frame_info;
+       int ssi_signal; /* dBm */
        const u8 *addr;
 };
 
 struct hostapd_iface;
 struct hostapd_data;
+struct hapd_interfaces;
+struct rrm_measurement_beacon_report;
+struct sta_info;
 
 #ifdef UBUS_SUPPORT
 
@@ -41,9 +46,30 @@ void hostapd_ubus_add_iface(struct hostapd_iface *iface);
 void hostapd_ubus_free_iface(struct hostapd_iface *iface);
 void hostapd_ubus_add_bss(struct hostapd_data *hapd);
 void hostapd_ubus_free_bss(struct hostapd_data *hapd);
+void hostapd_ubus_add_vlan(struct hostapd_data *hapd, struct hostapd_vlan *vlan);
+void hostapd_ubus_remove_vlan(struct hostapd_data *hapd, struct hostapd_vlan *vlan);
 
 int hostapd_ubus_handle_event(struct hostapd_data *hapd, struct hostapd_ubus_request *req);
+void hostapd_ubus_handle_link_measurement(struct hostapd_data *hapd, const u8 *data, size_t len);
 void hostapd_ubus_notify(struct hostapd_data *hapd, const char *type, const u8 *mac);
+void hostapd_ubus_notify_beacon_report(struct hostapd_data *hapd,
+                                      const u8 *addr, u8 token, u8 rep_mode,
+                                      struct rrm_measurement_beacon_report *rep,
+                                      size_t len);
+void hostapd_ubus_notify_radar_detected(struct hostapd_iface *iface, int frequency,
+                                       int chan_width, int cf1, int cf2);
+
+void hostapd_ubus_notify_bss_transition_response(
+       struct hostapd_data *hapd, const u8 *addr, u8 dialog_token, u8 status_code,
+       u8 bss_termination_delay, const u8 *target_bssid,
+       const u8 *candidate_list, u16 candidate_list_len);
+void hostapd_ubus_add(struct hapd_interfaces *interfaces);
+void hostapd_ubus_free(struct hapd_interfaces *interfaces);
+int hostapd_ubus_notify_bss_transition_query(
+       struct hostapd_data *hapd, const u8 *addr, u8 dialog_token, u8 reason,
+       const u8 *candidate_list, u16 candidate_list_len);
+void hostapd_ubus_notify_authorized(struct hostapd_data *hapd, struct sta_info *sta,
+                                   const char *auth_alg);
 
 #else
 
@@ -65,14 +91,67 @@ static inline void hostapd_ubus_free_bss(struct hostapd_data *hapd)
 {
 }
 
+static inline void hostapd_ubus_add_vlan(struct hostapd_data *hapd, struct hostapd_vlan *vlan)
+{
+}
+
+static inline void hostapd_ubus_remove_vlan(struct hostapd_data *hapd, struct hostapd_vlan *vlan)
+{
+}
+
 static inline int hostapd_ubus_handle_event(struct hostapd_data *hapd, struct hostapd_ubus_request *req)
 {
        return 0;
 }
 
+static inline void hostapd_ubus_handle_link_measurement(struct hostapd_data *hapd, const u8 *data, size_t len)
+{
+}
+
 static inline void hostapd_ubus_notify(struct hostapd_data *hapd, const char *type, const u8 *mac)
 {
 }
+
+static inline void hostapd_ubus_notify_beacon_report(struct hostapd_data *hapd,
+                                                    const u8 *addr, u8 token,
+                                                    u8 rep_mode,
+                                                    struct rrm_measurement_beacon_report *rep,
+                                                    size_t len)
+{
+}
+static inline void hostapd_ubus_notify_radar_detected(struct hostapd_iface *iface, int frequency,
+                                                     int chan_width, int cf1, int cf2)
+{
+}
+
+static inline void hostapd_ubus_notify_bss_transition_response(
+       struct hostapd_data *hapd, const u8 *addr, u8 dialog_token, u8 status_code,
+       u8 bss_termination_delay, const u8 *target_bssid,
+       const u8 *candidate_list, u16 candidate_list_len)
+{
+}
+
+static inline void hostapd_ubus_add(struct hapd_interfaces *interfaces)
+{
+}
+
+static inline void hostapd_ubus_free(struct hapd_interfaces *interfaces)
+{
+}
+
+static inline int hostapd_ubus_notify_bss_transition_query(
+       struct hostapd_data *hapd, const u8 *addr, u8 dialog_token, u8 reason,
+       const u8 *candidate_list, u16 candidate_list_len)
+{
+       return 0;
+}
+
+static inline void
+hostapd_ubus_notify_authorized(struct hostapd_data *hapd, struct sta_info *sta,
+                              const char *auth_alg)
+{
+}
+
 #endif
 
 #endif