Author: rmilecki
Date: 2015-09-28 11:39:47 +0200 (Mon, 28 Sep 2015)
New Revision: 47065

Modified:
   
branches/chaos_calmer/package/network/services/hostapd/patches/600-ubus_support.patch
Log:
hostapd: check for banned client on association event

When using FullMAC drivers (e.g. brcmfmac) we don't get mgmt frames so
check for banned client in probe request handler won't ever be used.
Since cfg80211 provides us info about STA associating let's put a check
there.

Signed-off-by: Rafa?\197?\130 Mi?\197?\130ecki <[email protected]>

Backport of r47064

Modified: 
branches/chaos_calmer/package/network/services/hostapd/patches/600-ubus_support.patch
===================================================================
--- 
branches/chaos_calmer/package/network/services/hostapd/patches/600-ubus_support.patch
       2015-09-28 09:09:00 UTC (rev 47064)
+++ 
branches/chaos_calmer/package/network/services/hostapd/patches/600-ubus_support.patch
       2015-09-28 09:39:47 UTC (rev 47065)
@@ -830,3 +830,29 @@
  int ieee802_11_set_beacon(struct hostapd_data *hapd);
  int ieee802_11_set_beacons(struct hostapd_iface *iface);
  int ieee802_11_update_beacons(struct hostapd_iface *iface);
+--- a/src/ap/drv_callbacks.c
++++ b/src/ap/drv_callbacks.c
+@@ -49,6 +49,10 @@ int hostapd_notif_assoc(struct hostapd_d
+       u16 reason = WLAN_REASON_UNSPECIFIED;
+       u16 status = WLAN_STATUS_SUCCESS;
+       const u8 *p2p_dev_addr = NULL;
++      struct hostapd_ubus_request req = {
++              .type = HOSTAPD_UBUS_ASSOC_REQ,
++              .addr = addr,
++      };
+ 
+       if (addr == NULL) {
+               /*
+@@ -113,6 +117,12 @@ int hostapd_notif_assoc(struct hostapd_d
+       }
+       sta->flags &= ~(WLAN_STA_WPS | WLAN_STA_MAYBE_WPS | WLAN_STA_WPS2);
+ 
++      if (hostapd_ubus_handle_event(hapd, &req)) {
++              wpa_printf(MSG_DEBUG, "Station " MACSTR " assoc rejected by 
ubus handler.\n",
++                         MAC2STR(req.addr));
++              goto fail;
++      }
++
+ #ifdef CONFIG_P2P
+       if (elems.p2p) {
+               wpabuf_free(sta->p2p_ie);
_______________________________________________
openwrt-commits mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-commits

Reply via email to