1
0
Fork 0
forked from mirror/openwrt
openwrt/package/network/services/hostapd
Felix Fietkau 95c8b385e5 hostapd: update to Git HEAD (2025-08-26)
33fb6c738bc4 P2P2: Enable some testing parameters without CONFIG_TESTING_OPTIONS
56616c4183a6 P2P2: Update device name with USD device found
1d791939dcdf Cancel pending connect radio work when network is removed
8235e21d7fe3 P2P: Fix preferred frequency list size handling in p2p_check_pref_chan()
4bc754d9c727 Add QCA vendor interface to enable/disable TX power limit
d65f5705df98 Add QCA vendor attribute to disable A-MSDU address check validation
74881765b7fb nl80211: Use i802_bss in qca_set_allowed_ap_freqs() to use correct ifindex
ca8303135cbb P2P2: Set P2P mode to the driver on P2P GO device
063ae7af68dc ACS: Fix incorrect index calculation for primary channel
4aa3a58377c1 ACS: Validate all channels in a segment before selection
02c9d3376224 ACS: Extend support to exclude 6 GHz non-PSC in non-offloaded ACS
307365eb57bb tests: Add test for ACS exclude 6 GHz non-PSC
0721e4886316 Add QCA vendor attribute to configure EHT RTWT support
76b39db44c77 QCA vendor attribute to configure BTM MLD Recommendation For Multiple APs support
2faeffdeca22 AP MLD: Properly deinit sm of non-ML STA connected to ML AP
e4f4e5a872a5 AP MLD: Fix STA's flag wrongly updated in SME-in-driver cases
ec6cade42c0f Increase buffer size to handle long freq_list entries in config
0522585da7b0 Write freq_list as per-network item in wpa_supplicant.conf
5e527704b912 Use SCS reconfiguration logic under CONFIG_NO_ROBUST_AV
5d6214a724c1 PASN: Clear driver/firwmare ranging context if PASN Auth 1 fails
14dc782d50db DPP: Avoid generating DPP shared secret(z) for non-association links
40326b60b17a RSNO: Allow OWE to be configured in RSN overrides in AP processing
acadef1b04d5 hostapd_cli: Open a new hostapd connection on ping failure when using -a
ac0d9bd80ec5 Add QCA vendor attributes to configure global TX chain mask
f5b8ef6c966a Add QCA vendor attributes for MSDU TX statistics
6c11fcefe4fc hostapd: Prevent blocking sends on control interface monitor socket
0bbb8a66f64c AP MLD: Remove redundant outer loop in hostapd_notif_disassoc_mld()
52fb5ccd91f3 AP MLD: Avoid using mld_id to identify partners
7bb930d50b5f wpa_supplicant: Add option to disable 80+80 MHz opclass advertisement
9001059bd6ad tests: Make dbus_connect_oom more robust
663fb1940231 AP MLD: Fix hostapd_is_mld_ap() check
590f3bdb4c61 AP MLD: Rename hostapd_is_mld_ap() to hostapd_is_multiple_link_mld()
b13b69a235f7 Add VLANID in the AP-STA-CONNECTED events
c1e8b1c6462b SAE: Assign VLAN when using PMKSA caching
9bc29dcdfdee SAE: Default password binding through control interface
9de127c31c40 tests: More testing coverage for SAE with multiple passwords
5ce1d4180386 nl80211: Fix crash by cancelling scan timeout before a BSS is removed
ca266cc24d87 nl80211: Fix crash by setting the drv->ctx properly

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-08-27 10:29:21 +02:00
..
files wifi-scripts: fix reload handling with random macaddr 2025-08-26 11:53:50 +02:00
patches hostapd: update to Git HEAD (2025-08-26) 2025-08-27 10:29:21 +02:00
src hostapd: add missing MLO check on ucode bss stop 2025-08-03 06:50:42 +02:00
Config.in hostapd: add CONFIG_DRIVER_11BE_SUPPORT 2024-10-02 15:12:18 +02:00
Makefile hostapd: update to Git HEAD (2025-08-26) 2025-08-27 10:29:21 +02:00
README.md hostapd: support MBO in bss_transition_request 2022-06-28 03:23:51 +03:00

UBUS methods - hostapd

bss_mgmt_enable

Enable 802.11k/v features.

arguments

Name Type Required Description
neighbor_report bool no enable 802.11k neighbor reports
beacon_report bool no enable 802.11k beacon reports
link_measurements bool no enable 802.11k link measurements
bss_transition bool no enable 802.11v BSS transition support

example

ubus call hostapd.wl5-fb bss_mgmt_enable '{ "neighbor_report": true, "beacon_report": true, "link_measurements": true, "bss_transition": true }'

bss_transition_request

Initiate an 802.11v transition request.

arguments

Name Type Required Description
addr string yes client MAC address
disassociation_imminent bool no set Disassociation Imminent bit
disassociation_timer int32 no disassociate client if it doesn't roam after this time
validity_period int32 no validity of the BSS Transition Candiate List
neighbors array no BSS Transition Candidate List
abridged bool no prefer APs in the BSS Transition Candidate List
dialog_token int32 no identifier for the request/report transaction
mbo_reason int32 no MBO Transition Reason Code Attribute
cell_pref int32 no MBO Cellular Data Connection Preference Attribute
reassoc_delay int32 no MBO Re-association retry delay

example

ubus call hostapd.wl5-fb bss_transition_request '{ "addr": "68:2F:67:8B:98:ED", "disassociation_imminent": false, "disassociation_timer": 0, "validity_period": 30, "neighbors": ["b6a7b9cbeebabf5900008064090603026a00"], "abridged": 1 }'

config_add

Dynamically load a BSS configuration from a file. This is used by netifd's mac80211 support script to configure BSSes on multiple PHYs in a single hostapd instance.

arguments

Name Type Required Description
iface string yes WiFi interface name
config string yes path to hostapd config file

config_remove

Dynamically remove a BSS configuration.

arguments

Name Type Required Description
iface string yes WiFi interface name

del_client

Kick a client off the network.

arguments

Name Type Required Description
addr string yes client MAC address
reason int32 no 802.11 reason code
deauth bool no deauthenticates client instead of disassociating
ban_time int32 no ban client for N milliseconds

example

ubus call hostapd.wl5-fb del_client '{ "addr": "68:2f:67:8b:98:ed", "reason": 5, "deauth": true, "ban_time": 10000 }'

get_clients

Show associated clients.

example

ubus call hostapd.wl5-fb get_clients

output

{
        "freq": 5260,
        "clients": {
                "68:2f:67:8b:98:ed": {
                        "auth": true,
                        "assoc": true,
                        "authorized": true,
                        "preauth": false,
                        "wds": false,
                        "wmm": true,
                        "ht": true,
                        "vht": true,
                        "he": false,
                        "wps": false,
                        "mfp": true,
                        "rrm": [
                                0,
                                0,
                                0,
                                0,
                                0
                        ],
                        "extended_capabilities": [
                                0,
                                0,
                                0,
                                0,
                                0,
                                0,
                                0,
                                64
                        ],
                        "aid": 3,
                        "signature": "wifi4|probe:0,1,45,127,107,191,221(0017f2,10),221(001018,2),htcap:006f,htagg:1b,htmcs:0000ffff,vhtcap:0f825832,vhtrxmcs:0000ffea,vhttxmcs:0000ffea,extcap:0000008000000040|assoc:0,1,33,36,48,45,127,191,221(0017f2,10),221(001018,2),221(0050f2,2),htcap:006f,htagg:1b,htmcs:0000ffff,vhtcap:0f825832,vhtrxmcs:0000ffea,vhttxmcs:0000ffea,txpow:14f9,extcap:0000000000000040",
                        "bytes": {
                                "rx": 1933667,
                                "tx": 746805
                        },
                        "airtime": {
                                "rx": 208863,
                                "tx": 9037883
                        },
                        "packets": {
                                "rx": 3587,
                                "tx": 2185
                        },
                        "rate": {
                                "rx": 866700,
                                "tx": 866700
                        },
                        "signal": -50,
                        "capabilities": {
                                "vht": {
                                        "su_beamformee": true,
                                        "mu_beamformee": false,
                                        "mcs_map": {
                                                "rx": {
                                                        "1ss": 9,
                                                        "2ss": 9,
                                                        "3ss": 9,
                                                        "4ss": -1,
                                                        "5ss": -1,
                                                        "6ss": -1,
                                                        "7ss": -1,
                                                        "8ss": -1
                                                },
                                                "tx": {
                                                        "1ss": 9,
                                                        "2ss": 9,
                                                        "3ss": 9,
                                                        "4ss": -1,
                                                        "5ss": -1,
                                                        "6ss": -1,
                                                        "7ss": -1,
                                                        "8ss": -1
                                                }
                                        }
                                }
                        }
                }
        }
}

get_features

Show HT/VHT support.

example

ubus call hostapd.wl5-fb get_features

output

{
        "ht_supported": true,
        "vht_supported": true
}

get_status

Get BSS status.

example

ubus call hostapd.wl5-fb get_status

output

{
        "status": "ENABLED",
        "bssid": "b6:a7:b9:cb:ee:bc",
        "ssid": "fb",
        "freq": 5260,
        "channel": 52,
        "op_class": 128,
        "beacon_interval": 100,
        "phy": "wl5-lan",
        "rrm": {
                "neighbor_report_tx": 0
        },
        "wnm": {
                "bss_transition_query_rx": 0,
                "bss_transition_request_tx": 0,
                "bss_transition_response_rx": 0
        },
        "airtime": {
                "time": 259561738,
                "time_busy": 2844249,
                "utilization": 0
        },
        "dfs": {
                "cac_seconds": 60,
                "cac_active": false,
                "cac_seconds_left": 0
        }
}

Initiate an 802.11k Link Measurement Request.

arguments

Name Type Required Description
addr string yes client MAC address
tx-power-used int32 no transmit power used to transmit the Link Measurement Request frame
tx-power-max int32 no upper limit of transmit power to be used by the client

list_bans

List banned clients.

example

ubus call hostapd.wl5-fb list_bans

output

{
        "clients": [
                "68:2f:67:8b:98:ed"
        ]
}

notify_response

When enabled, hostapd will send a ubus notification and wait for a response before responding to various requests. This is used by e.g. usteer to make it possible to ignore probe requests.

⚠️ enabling this will cause hostapd to stop responding to probe requests unless a ubus subscriber responds to the ubus notifications.

arguments

Name Type Required Description
notify_response int32 yes disable (0) or enable (!0)

example

ubus call hostapd.wl5-fb notify_response '{ "notify_response": 1 }'

reload

Reload BSS configuration.

⚠️ this can cause problems for certain configurations:

Mon May 16 16:09:08 2022 daemon.warn hostapd: Failed to check if DFS is required; ret=-1
Mon May 16 16:09:08 2022 daemon.warn hostapd: Failed to check if DFS is required; ret=-1
Mon May 16 16:09:08 2022 daemon.err hostapd: Wrong coupling between HT and VHT/HE channel setting

example

ubus call hostapd.wl5-fb reload

rrm_beacon_req

Send a Beacon Measurement Request to a client.

arguments

Name Type Required Description
addr string yes client MAC address
op_class int32 yes the Regulatory Class for which this Measurement Request applies
channel int32 yes channel to measure
duration int32 yes compile Beacon Measurement Report after N TU
mode int32 yes mode to be used for measurement (0: passive, 1: active, 2: beacon table)
bssid string no filter BSSes in Beacon Measurement Report by BSSID
ssid string no filter BSSes in Beacon Measurement Report by SSID

rrm_nr_get_own

Show Neighbor Report Element for this BSS.

example

ubus call hostapd.wl5-fb rrm_nr_get_own

output

{
        "value": [
                "b6:a7:b9:cb:ee:bc",
                "fb",
                "b6a7b9cbeebcaf5900008095090603029b00"
        ]
}

rrm_nr_list

Show Neighbor Report Elements for other BSSes in this ESS.

example

ubus call hostapd.wl5-fb rrm_nr_list

output

{
        "list": [
                [
                        "b6:a7:b9:cb:ee:ba",
                        "fb",
                        "b6a7b9cbeebabf5900008064090603026a00"
                ]
        ]
}

rrm_nr_set

Set the Neighbor Report Elements. An element for the node on which this command is executed will always be added.

arguments

Name Type Required Description
list array yes array of Neighbor Report Elements in the format of the rrm_nr_list output

example

ubus call hostapd.wl5-fb rrm_nr_set '{ "list": [ [ "b6:a7:b9:cb:ee:ba", "fb", "b6a7b9cbeebabf5900008064090603026a00" ] ] }'

set_vendor_elements

Configure Vendor-specific Information Elements for BSS.

arguments

Name Type Required Description
vendor_elements string yes Vendor-specific Information Elements as hex string

example

ubus call hostapd.wl5-fb set_vendor_elements '{ "vendor_elements": "dd054857dd6662" }'

switch_chan

Initiate a channel switch.

⚠️ trying to switch to the channel that is currently in use will fail: Command failed: Operation not supported

arguments

Name Type Required Description
freq int32 yes frequency in MHz to switch to
bcn_count int32 no count in Beacon frames (TBTT) to perform the switch
center_freq1 int32 no segment 0 center frequency in MHz (valid for HT and VHT)
center_freq2 int32 no segment 1 center frequency in MHz (valid only for 80 MHz channel width and an 80+80 channel)
bandwidth int32 no channel width to use
sec_channel_offset int32 no secondary channel offset for HT40 (0 = disabled, 1 = HT40+, -1 = HT40-)
ht bool no enable 802.11n
vht bool no enable 802.11ac
he bool no enable 802.11ax
block_tx bool no block transmission during CSA period
csa_force bool no restart the interface in case the CSA fails

example

ubus call hostapd.wl5-fb switch_chan '{ "freq": 5180, "bcn_count": 10, "center_freq1": 5210, "bandwidth": 80, "he": 1, "block_tx": 1, "csa_force": 0 }'

update_airtime

Set dynamic airtime weight for client.

arguments

Name Type Required Description
sta string yes client MAC address
weight int32 yes airtime weight

update_beacon

Force beacon frame content to be updated and to start beaconing on an interface that uses start_disabled=1.

example

ubus call hostapd.wl5-fb update_beacon

wps_status

Get WPS status for BSS.

example

ubus call hostapd.wl5-fb wps_status

output

{
        "pbc_status": "Disabled",
        "last_wps_result": "None"
}

wps_cancel

Cancel WPS Push Button Configuration.

example

ubus call hostapd.wl5-fb wps_cancel

wps_start

Start WPS Push Button Configuration.

example

ubus call hostapd.wl5-fb wps_start