Lines Matching full:conf

126 	hostapd_setup_encryption(hapd->conf->iface, hapd);  in hostapd_reconfig_encryption()
138 if (hapd->conf->wmm_enabled < 0) in hostapd_reload_bss()
139 hapd->conf->wmm_enabled = hapd->iconf->ieee80211n | in hostapd_reload_bss()
143 radius_client_reconfig(hapd->radius, hapd->conf->radius); in hostapd_reload_bss()
146 ssid = &hapd->conf->ssid; in hostapd_reload_bss()
153 hostapd_config_clear_wpa_psk(&hapd->conf->ssid.wpa_psk); in hostapd_reload_bss()
155 if (hostapd_setup_wpa_psk(hapd->conf)) { in hostapd_reload_bss()
160 if (hapd->conf->ieee802_1x || hapd->conf->wpa) in hostapd_reload_bss()
161 hostapd_set_drv_ieee8021x(hapd, hapd->conf->iface, 1); in hostapd_reload_bss()
163 hostapd_set_drv_ieee8021x(hapd, hapd->conf->iface, 0); in hostapd_reload_bss()
165 if ((hapd->conf->wpa || hapd->conf->osen) && hapd->wpa_auth == NULL) { in hostapd_reload_bss()
169 } else if (hapd->conf->wpa) { in hostapd_reload_bss()
182 hostapd_setup_encryption(hapd->conf->iface, hapd); in hostapd_reload_bss()
192 if (hapd->conf->ssid.ssid_set && in hostapd_reload_bss()
193 hostapd_set_ssid(hapd, hapd->conf->ssid.ssid, in hostapd_reload_bss()
194 hapd->conf->ssid.ssid_len)) { in hostapd_reload_bss()
198 wpa_printf(MSG_DEBUG, "Reconfigured interface %s", hapd->conf->iface); in hostapd_reload_bss()
205 bss->conf->iface); in hostapd_clear_old_bss()
287 hostapd_remove_iface(interfaces, hapd->conf->iface); in hostapd_reload_config()
305 iface->conf = newconf; in hostapd_reload_config()
309 if (!hapd->conf->config_id || !newconf->bss[j]->config_id || in hostapd_reload_config()
310 os_strcmp(hapd->conf->config_id, in hostapd_reload_config()
329 hapd->conf = newconf->bss[j]; in hostapd_reload_config()
357 if (hapd->conf->ieee80211w) { in hostapd_broadcast_key_clear_iface()
373 hostapd_broadcast_key_clear_iface(hapd, hapd->conf->iface); in hostapd_broadcast_wep_clear()
381 struct hostapd_ssid *ssid = &hapd->conf->ssid; in hostapd_broadcast_wep_set()
385 hostapd_drv_set_key(hapd->conf->iface, in hostapd_broadcast_wep_set()
434 if (!hapd->conf->mld_ap) in hostapd_link_remove()
471 __func__, hapd->conf ? hapd->conf->iface : "N/A"); in hostapd_free_hapd_data()
477 wpa_printf(MSG_DEBUG, "%s(%s)", __func__, hapd->conf->iface); in hostapd_free_hapd_data()
526 if (hostapd_if_remove(hapd, WPA_IF_AP_BSS, hapd->conf->iface)) { in hostapd_free_hapd_data()
529 hapd->conf->iface); in hostapd_free_hapd_data()
545 if (hapd->conf->mld_ap && !hapd->interface_added && in hostapd_free_hapd_data()
547 hostapd_if_link_remove(hapd, WPA_IF_AP_BSS, hapd->conf->iface, in hostapd_free_hapd_data()
623 if (!hapd->conf || !hapd->conf->mld_ap) in hostapd_bss_link_deinit()
659 hapd->conf ? hapd->conf->iface : "N/A"); in hostapd_cleanup()
722 hostapd_config_free(iface->conf); in hostapd_cleanup_iface()
723 iface->conf = NULL; in hostapd_cleanup_iface()
736 if (hapd->drv_priv && !hapd->iface->driver_ap_teardown && hapd->conf) { in hostapd_clear_wep()
749 if (hapd->conf->ssid.wep.default_len) { in hostapd_setup_encryption()
758 hostapd_drv_set_authmode(hapd, hapd->conf->auth_algs); in hostapd_setup_encryption()
761 if (hapd->conf->ssid.wep.key[i] && in hostapd_setup_encryption()
763 i == hapd->conf->ssid.wep.idx, NULL, 0, in hostapd_setup_encryption()
764 hapd->conf->ssid.wep.key[i], in hostapd_setup_encryption()
765 hapd->conf->ssid.wep.len[i], in hostapd_setup_encryption()
766 i == hapd->conf->ssid.wep.idx ? in hostapd_setup_encryption()
773 if (hapd->conf->ssid.wep.key[i] && in hostapd_setup_encryption()
774 i == hapd->conf->ssid.wep.idx) in hostapd_setup_encryption()
802 if (hapd->conf && hapd->conf->broadcast_deauth) { in hostapd_flush_old_stations()
835 unsigned int i = iface->conf->num_bss, bits = 0, j; in hostapd_validate_bssid_configuration()
841 if (iface->conf->use_driver_iface_addr) in hostapd_validate_bssid_configuration()
852 for (j = 0; j < iface->conf->num_bss; j++) { in hostapd_validate_bssid_configuration()
853 if (is_zero_ether_addr(iface->conf->bss[j]->bssid)) { in hostapd_validate_bssid_configuration()
861 iface->conf->bss[j]->bssid[i] ^ in hostapd_validate_bssid_configuration()
902 (unsigned long) iface->conf->num_bss, MAC2STR(mask), bits); in hostapd_validate_bssid_configuration()
923 static int mac_in_conf(struct hostapd_config *conf, const void *a) in mac_in_conf() argument
927 for (i = 0; i < conf->num_bss; i++) { in mac_in_conf()
928 if (hostapd_mac_comp(conf->bss[i]->bssid, a) == 0) { in mac_in_conf()
943 (!hapd->conf->nas_identifier || in hostapd_das_nas_mismatch()
944 os_strlen(hapd->conf->nas_identifier) != in hostapd_das_nas_mismatch()
946 os_memcmp(hapd->conf->nas_identifier, attr->nas_identifier, in hostapd_das_nas_mismatch()
953 (hapd->conf->own_ip_addr.af != AF_INET || in hostapd_das_nas_mismatch()
954 os_memcmp(&hapd->conf->own_ip_addr.u.v4, attr->nas_ip_addr, 4) != in hostapd_das_nas_mismatch()
962 (hapd->conf->own_ip_addr.af != AF_INET6 || in hostapd_das_nas_mismatch()
963 os_memcmp(&hapd->conf->own_ip_addr.u.v6, attr->nas_ipv6_addr, 16) in hostapd_das_nas_mismatch()
1283 struct hostapd_bss_config *conf = hapd->conf; in hostapd_start_beacon() local
1285 if (!conf->start_disabled && ieee802_11_set_beacon(hapd) < 0) in hostapd_start_beacon()
1288 if (flush_old_stations && !conf->start_disabled && in hostapd_start_beacon()
1289 conf->broadcast_deauth) { in hostapd_start_beacon()
1313 struct hostapd_bss_config *conf; in hostapd_bss_radius_init() local
1318 conf = hapd->conf; in hostapd_bss_radius_init()
1326 hapd->radius = radius_client_init(hapd, conf->radius); in hostapd_bss_radius_init()
1333 if (conf->radius_das_port) { in hostapd_bss_radius_init()
1337 das_conf.port = conf->radius_das_port; in hostapd_bss_radius_init()
1338 das_conf.shared_secret = conf->radius_das_shared_secret; in hostapd_bss_radius_init()
1340 conf->radius_das_shared_secret_len; in hostapd_bss_radius_init()
1341 das_conf.client_addr = &conf->radius_das_client_addr; in hostapd_bss_radius_init()
1342 das_conf.time_window = conf->radius_das_time_window; in hostapd_bss_radius_init()
1344 conf->radius_das_require_event_timestamp; in hostapd_bss_radius_init()
1346 conf->radius_das_require_message_authenticator; in hostapd_bss_radius_init()
1383 struct hostapd_bss_config *conf = hapd->conf; in hostapd_setup_bss() local
1395 __func__, hapd, conf->iface, first); in hostapd_setup_bss()
1398 if (conf->tnc && tncs_global_init() < 0) { in hostapd_setup_bss()
1406 __func__, conf->iface); in hostapd_setup_bss()
1414 if (!is_zero_ether_addr(conf->bssid)) { in hostapd_setup_bss()
1416 os_memcpy(hapd->own_addr, conf->bssid, ETH_ALEN); in hostapd_setup_bss()
1423 "the radio", conf->iface); in hostapd_setup_bss()
1436 if (conf->mld_ap) { in hostapd_setup_bss()
1446 hapd->mld_link_id, hapd->conf->iface); in hostapd_setup_bss()
1454 conf->iface, addr, hapd, in hostapd_setup_bss()
1456 conf->bridge[0] ? conf->bridge : NULL, in hostapd_setup_bss()
1468 if (hapd->conf->mld_ap) { in hostapd_setup_bss()
1471 hapd->mld_link_id, hapd->conf->iface); in hostapd_setup_bss()
1481 if (hapd->conf->mld_ap && !first) { in hostapd_setup_bss()
1494 if (conf->wmm_enabled < 0) in hostapd_setup_bss()
1495 conf->wmm_enabled = hapd->iconf->ieee80211n | in hostapd_setup_bss()
1499 if (is_zero_ether_addr(conf->r1_key_holder)) in hostapd_setup_bss()
1500 os_memcpy(conf->r1_key_holder, hapd->own_addr, ETH_ALEN); in hostapd_setup_bss()
1504 if ((hapd->conf->mesh & MESH_ENABLED) && hapd->iface->mconf == NULL) in hostapd_setup_bss()
1515 if (hostapd_setup_encryption(conf->iface, hapd)) in hostapd_setup_bss()
1529 if (conf->ssid.ssid_set) { in hostapd_setup_bss()
1535 set_ssid = (conf->ssid.ssid_len != (size_t) ssid_len || in hostapd_setup_bss()
1536 os_memcmp(conf->ssid.ssid, ssid, ssid_len) != 0); in hostapd_setup_bss()
1543 conf->ssid.ssid_len = ssid_len; in hostapd_setup_bss()
1544 os_memcpy(conf->ssid.ssid, ssid, conf->ssid.ssid_len); in hostapd_setup_bss()
1551 conf->ssid.short_ssid = ieee80211_crc32(conf->ssid.ssid, in hostapd_setup_bss()
1552 conf->ssid.ssid_len); in hostapd_setup_bss()
1557 conf->iface, MAC2STR(hapd->own_addr), in hostapd_setup_bss()
1558 wpa_ssid_txt(conf->ssid.ssid, conf->ssid.ssid_len)); in hostapd_setup_bss()
1561 if (hostapd_setup_wpa_psk(conf)) { in hostapd_setup_bss()
1568 if (set_ssid && hostapd_set_ssid(hapd, conf->ssid.ssid, in hostapd_setup_bss()
1569 conf->ssid.ssid_len)) { in hostapd_setup_bss()
1575 conf->radius->msg_dumps = 1; in hostapd_setup_bss()
1579 if (conf->radius_req_attr_sqlite) { in hostapd_setup_bss()
1580 if (sqlite3_open(conf->radius_req_attr_sqlite, in hostapd_setup_bss()
1583 conf->radius_req_attr_sqlite); in hostapd_setup_bss()
1588 conf->radius_req_attr_sqlite); in hostapd_setup_bss()
1626 if (hostapd_init_wps(hapd, conf)) in hostapd_setup_bss()
1650 if ((conf->wpa || conf->osen) && hostapd_setup_wpa(hapd)) in hostapd_setup_bss()
1665 if (conf->qos_map_set_len && in hostapd_setup_bss()
1666 hostapd_drv_set_qos_map(hapd, conf->qos_map_set, in hostapd_setup_bss()
1667 conf->qos_map_set_len)) { in hostapd_setup_bss()
1672 if (conf->bss_load_update_period && bss_load_update_init(hapd)) { in hostapd_setup_bss()
1677 if (conf->bridge[0]) { in hostapd_setup_bss()
1683 if (conf->bridge_multicast_to_unicast) in hostapd_setup_bss()
1688 if (conf->bridge_hairpin) in hostapd_setup_bss()
1693 if (conf->proxy_arp) { in hostapd_setup_bss()
1735 if ((hapd->conf->mesh & MESH_ENABLED) && iface->mconf == NULL) in hostapd_tx_queue_params()
1740 p = &iface->conf->tx_queue[i]; in hostapd_tx_queue_params()
1781 struct hostapd_config *conf = hapd->iconf; in hostapd_set_acl() local
1788 if (conf->bss[0]->macaddr_acl == DENY_UNLESS_ACCEPTED) { in hostapd_set_acl()
1790 err = hostapd_set_acl_list(hapd, conf->bss[0]->accept_mac, in hostapd_set_acl()
1791 conf->bss[0]->num_accept_mac, in hostapd_set_acl()
1797 } else if (conf->bss[0]->macaddr_acl == ACCEPT_UNLESS_DENIED) { in hostapd_set_acl()
1799 err = hostapd_set_acl_list(hapd, conf->bss[0]->deny_mac, in hostapd_set_acl()
1800 conf->bss[0]->num_deny_mac, in hostapd_set_acl()
1820 hapd->conf->iface); in start_ctrl_iface_bss()
1840 hapd->conf->iface); in start_ctrl_iface()
1878 if (mode->mode == iface->conf->hw_mode) { in hostapd_no_ir_channel_list_updated()
1937 if (!iface->conf->acs) { in hostapd_no_ir_channel_list_updated()
1954 iface->conf->channel = 0; in hostapd_no_ir_channel_list_updated()
2082 if (!iface->conf->channel) in configured_fixed_chan_to_freq()
2084 if (iface->conf->op_class) { in configured_fixed_chan_to_freq()
2085 freq = ieee80211_chan_to_freq(NULL, iface->conf->op_class, in configured_fixed_chan_to_freq()
2086 iface->conf->channel); in configured_fixed_chan_to_freq()
2090 iface->conf->op_class, iface->conf->channel); in configured_fixed_chan_to_freq()
2104 if (iface->conf->hw_mode != HOSTAPD_MODE_IEEE80211ANY && in configured_fixed_chan_to_freq()
2105 iface->conf->hw_mode != mode->mode) in configured_fixed_chan_to_freq()
2110 if (chan->chan == iface->conf->channel && in configured_fixed_chan_to_freq()
2127 if (!is_6ghz_op_class(iface->conf->op_class)) in hostapd_set_6ghz_sec_chan()
2130 bw = op_class_to_bandwidth(iface->conf->op_class); in hostapd_set_6ghz_sec_chan()
2133 if (bw >= 40 && !iface->conf->secondary_channel) { in hostapd_set_6ghz_sec_chan()
2134 if (((iface->conf->channel - 1) / 4) % 2) in hostapd_set_6ghz_sec_chan()
2135 iface->conf->secondary_channel = -1; in hostapd_set_6ghz_sec_chan()
2137 iface->conf->secondary_channel = 1; in hostapd_set_6ghz_sec_chan()
2157 * hostapd.conf. in setup_interface2()
2159 iface->freq = iface->conf->channel; in setup_interface2()
2167 if (iface->conf->acs && !iface->is_ch_switch_dfs) { in setup_interface2()
2169 iface->conf->channel = 0; in setup_interface2()
2177 if (iface->conf->op_class) { in setup_interface2()
2180 ch_width = op_class_to_ch_width(iface->conf->op_class); in setup_interface2()
2181 hostapd_set_oper_chwidth(iface->conf, ch_width); in setup_interface2()
2210 if (iface->conf->ieee80211h) in setup_interface2()
2380 if (os_strcmp(hapd->conf->owe_transition_ifname, in hostapd_owe_iface_iter()
2381 bss->conf->iface) != 0) in hostapd_owe_iface_iter()
2387 hapd->conf->iface, bss->conf->iface, in hostapd_owe_iface_iter()
2389 wpa_ssid_txt(bss->conf->ssid.ssid, in hostapd_owe_iface_iter()
2390 bss->conf->ssid.ssid_len)); in hostapd_owe_iface_iter()
2391 if (!bss->conf->ssid.ssid_set || !bss->conf->ssid.ssid_len || in hostapd_owe_iface_iter()
2395 os_memcpy(hapd->conf->owe_transition_bssid, bss->own_addr, in hostapd_owe_iface_iter()
2397 os_memcpy(hapd->conf->owe_transition_ssid, in hostapd_owe_iface_iter()
2398 bss->conf->ssid.ssid, bss->conf->ssid.ssid_len); in hostapd_owe_iface_iter()
2399 hapd->conf->owe_transition_ssid_len = bss->conf->ssid.ssid_len; in hostapd_owe_iface_iter()
2411 if (hapd->conf->owe_transition_ssid_len > 0 && in hostapd_owe_trans_get_info()
2412 !is_zero_ether_addr(hapd->conf->owe_transition_bssid)) in hostapd_owe_trans_get_info()
2434 if (!bss->conf->owe_transition_ifname[0]) in hostapd_owe_iface_iter2()
2439 bss->conf->iface, in hostapd_owe_iface_iter2()
2448 bss->conf->iface); in hostapd_owe_iface_iter2()
2507 hostapd_hw_mode_txt(iface->conf->hw_mode), in hostapd_setup_interface_complete_sync()
2508 iface->conf->channel, iface->freq); in hostapd_setup_interface_complete_sync()
2544 iface->bss[0]->conf->iface); in hostapd_setup_interface_complete_sync()
2603 if (hostapd_setup_bss(hapd, j == 0, !iface->conf->mbssid)) { in hostapd_setup_interface_complete_sync()
2614 if (is_zero_ether_addr(hapd->conf->bssid)) in hostapd_setup_interface_complete_sync()
2679 iface->fst = fst_attach(hapd->conf->iface, hapd->own_addr, in hostapd_setup_interface_complete_sync()
2704 iface->bss[0]->conf->iface); in hostapd_setup_interface_complete_sync()
2808 iface->bss[0]->conf->iface); in hostapd_setup_interface_complete()
2817 iface->bss[0]->conf->iface); in hostapd_setup_interface_complete()
2823 iface->bss[0]->conf->iface); in hostapd_setup_interface_complete()
2860 if (!iface->conf) in hostapd_setup_interface()
2865 iface->conf->bss[0]->iface); in hostapd_setup_interface()
2876 * @conf: Pointer to per-interface configuration
2886 struct hostapd_config *conf, in hostapd_alloc_bss_data() argument
2896 hapd->iconf = conf; in hostapd_alloc_bss_data()
2897 hapd->conf = bss; in hostapd_alloc_bss_data()
2899 if (conf) in hostapd_alloc_bss_data()
2900 hapd->driver = conf->driver; in hostapd_alloc_bss_data()
2922 hapd->conf ? hapd->conf->iface : "N/A"); in hostapd_bss_deinit()
3053 struct hostapd_bss_config *conf; in hostapd_bss_setup_multi_link() local
3056 conf = hapd->conf; in hostapd_bss_setup_multi_link()
3058 if (!hapd->iconf || !hapd->iconf->ieee80211be || !conf->mld_ap || in hostapd_bss_setup_multi_link()
3059 conf->disable_11be) in hostapd_bss_setup_multi_link()
3065 if (!mld || os_strcmp(conf->iface, mld->name) != 0) in hostapd_bss_setup_multi_link()
3081 os_strlcpy(mld->name, conf->iface, sizeof(conf->iface)); in hostapd_bss_setup_multi_link()
3202 struct hostapd_config *conf = NULL; in hostapd_init() local
3214 conf = interfaces->config_read_cb(hapd_iface->config_fname); in hostapd_init()
3215 if (conf == NULL) in hostapd_init()
3217 hapd_iface->conf = conf; in hostapd_init()
3219 hapd_iface->num_bss = conf->num_bss; in hostapd_init()
3220 hapd_iface->bss = os_calloc(conf->num_bss, in hostapd_init()
3225 for (i = 0; i < conf->num_bss; i++) { in hostapd_init()
3227 hostapd_alloc_bss_data(hapd_iface, conf, in hostapd_init()
3228 conf->bss[i]); in hostapd_init()
3241 if (conf) in hostapd_init()
3242 hostapd_config_free(conf); in hostapd_init()
3262 if (os_strcmp(ifname, hapd->conf->iface) == 0) in ifname_in_use()
3304 struct hostapd_config *conf; in hostapd_interface_init_bss() local
3311 conf = interfaces->config_read_cb(config_fname); in hostapd_interface_init_bss()
3312 if (conf == NULL) in hostapd_interface_init_bss()
3314 if (conf->num_bss > 1) { in hostapd_interface_init_bss()
3316 hostapd_config_free(conf); in hostapd_interface_init_bss()
3320 ifname = conf->bss[0]->iface; in hostapd_interface_init_bss()
3324 hostapd_config_free(conf); in hostapd_interface_init_bss()
3329 iface->conf->bss, iface->conf->num_bss + 1, in hostapd_interface_init_bss()
3336 iface->conf->bss = tmp_conf; in hostapd_interface_init_bss()
3337 iface->conf->last_bss = tmp_conf[0]; in hostapd_interface_init_bss()
3340 hostapd_config_free(conf); in hostapd_interface_init_bss()
3343 bss = iface->conf->bss[iface->conf->num_bss] = conf->bss[0]; in hostapd_interface_init_bss()
3344 iface->conf->num_bss++; in hostapd_interface_init_bss()
3346 hapd = hostapd_alloc_bss_data(iface, iface->conf, bss); in hostapd_interface_init_bss()
3348 iface->conf->num_bss--; in hostapd_interface_init_bss()
3349 hostapd_config_free(conf); in hostapd_interface_init_bss()
3352 iface->conf->last_bss = bss; in hostapd_interface_init_bss()
3359 conf->num_bss--; in hostapd_interface_init_bss()
3360 conf->bss[0] = NULL; in hostapd_interface_init_bss()
3361 hostapd_config_free(conf); in hostapd_interface_init_bss()
3373 if (iface->bss[bss_idx]->conf->logger_stdout_level > 0) in hostapd_interface_init_bss()
3374 iface->bss[bss_idx]->conf->logger_stdout_level--; in hostapd_interface_init_bss()
3377 if (iface->conf->bss[bss_idx]->iface[0] == '\0' && in hostapd_interface_init_bss()
3401 if (!iface->bss[0]->conf->mld_ap) { in hostapd_cleanup_driver()
3409 iface->bss[0]->conf->iface, in hostapd_cleanup_driver()
3412 iface->bss[0]->conf->iface); in hostapd_cleanup_driver()
3429 wpa_printf(MSG_DEBUG, "%s: num_bss=%u conf->num_bss=%u", in hostapd_interface_deinit_free()
3431 (unsigned int) iface->conf->num_bss); in hostapd_interface_deinit_free()
3497 hapd_iface->conf->bss[0]->iface); in hostapd_enable_iface()
3502 hapd_iface->conf->bss[0]->iface); in hostapd_enable_iface()
3505 hostapd_set_security_params(hapd_iface->conf->bss[j], 1); in hostapd_enable_iface()
3506 if (hostapd_config_check(hapd_iface->conf, 1) < 0) { in hostapd_enable_iface()
3534 hapd_iface->conf->bss[0]->iface); in hostapd_reload_iface()
3536 hostapd_set_security_params(hapd_iface->conf->bss[j], 1); in hostapd_reload_iface()
3537 if (hostapd_config_check(hapd_iface->conf, 1) < 0) { in hostapd_reload_iface()
3552 wpa_printf(MSG_DEBUG, "Reload BSS %s", bss->conf->iface); in hostapd_reload_bss_only()
3553 hostapd_set_security_params(bss->conf, 1); in hostapd_reload_bss_only()
3578 hapd_iface->conf->bss[0]->iface); in hostapd_disable_iface()
3611 hapd_iface->bss[0]->conf->iface); in hostapd_disable_iface()
3647 struct hostapd_config *conf; in hostapd_config_alloc() local
3649 /* Allocates memory for bss and conf */ in hostapd_config_alloc()
3650 conf = hostapd_config_defaults(); in hostapd_config_alloc()
3651 if (conf == NULL) { in hostapd_config_alloc()
3662 conf->driver = wpa_drivers[j]; in hostapd_config_alloc()
3672 conf->driver = wpa_drivers[0]; in hostapd_config_alloc()
3673 if (conf->driver == NULL) { in hostapd_config_alloc()
3675 hostapd_config_free(conf); in hostapd_config_alloc()
3680 bss = conf->last_bss = conf->bss[0]; in hostapd_config_alloc()
3685 hostapd_config_free(conf); in hostapd_config_alloc()
3693 return conf; in hostapd_config_alloc()
3698 struct hostapd_config *conf) in hostapd_data_alloc() argument
3703 hapd_iface->bss = os_calloc(conf->num_bss, in hostapd_data_alloc()
3708 for (i = 0; i < conf->num_bss; i++) { in hostapd_data_alloc()
3710 hostapd_alloc_bss_data(hapd_iface, conf, conf->bss[i]); in hostapd_data_alloc()
3725 hapd_iface->conf = conf; in hostapd_data_alloc()
3726 hapd_iface->num_bss = conf->num_bss; in hostapd_data_alloc()
3734 struct hostapd_config *conf = NULL; in hostapd_add_iface() local
3799 hapd_iface->conf->num_bss--; in hostapd_add_iface()
3802 __func__, hapd, hapd->conf->iface); in hostapd_add_iface()
3803 hostapd_config_free_bss(hapd->conf); in hostapd_add_iface()
3804 hapd->conf = NULL; in hostapd_add_iface()
3828 mld_ap = interfaces->iface[i]->conf->bss[0]->mld_ap; in hostapd_add_iface()
3831 if (!os_strcmp(interfaces->iface[i]->conf->bss[0]->iface, in hostapd_add_iface()
3848 conf = interfaces->config_read_cb(conf_file); in hostapd_add_iface()
3849 if (conf && conf->bss) in hostapd_add_iface()
3850 os_strlcpy(conf->bss[0]->iface, buf, in hostapd_add_iface()
3851 sizeof(conf->bss[0]->iface)); in hostapd_add_iface()
3857 conf = hostapd_config_alloc(interfaces, buf, ptr, driver); in hostapd_add_iface()
3860 if (conf == NULL || conf->bss == NULL) { in hostapd_add_iface()
3866 if (hostapd_data_alloc(hapd_iface, conf) < 0) { in hostapd_add_iface()
3871 conf = NULL; in hostapd_add_iface()
3877 hapd_iface->conf->bss[0]->iface); in hostapd_add_iface()
3882 if (conf) in hostapd_add_iface()
3883 hostapd_config_free(conf); in hostapd_add_iface()
3896 hapd->conf->iface); in hostapd_add_iface()
3923 wpa_printf(MSG_INFO, "Remove BSS '%s'", iface->conf->bss[idx]->iface); in hostapd_remove_bss()
3931 __func__, hapd, hapd->conf->iface); in hostapd_remove_bss()
3932 hostapd_config_free_bss(hapd->conf); in hostapd_remove_bss()
3933 hapd->conf = NULL; in hostapd_remove_bss()
3944 hostapd_config_free_bss(iface->conf->bss[idx]); in hostapd_remove_bss()
3945 iface->conf->bss[idx] = NULL; in hostapd_remove_bss()
3948 iface->conf->num_bss--; in hostapd_remove_bss()
3949 for (i = idx; i < iface->conf->num_bss; i++) in hostapd_remove_bss()
3950 iface->conf->bss[i] = iface->conf->bss[i + 1]; in hostapd_remove_bss()
3965 if (!os_strcmp(hapd_iface->conf->bss[0]->iface, buf)) { in hostapd_remove_iface()
3984 for (j = 0; j < hapd_iface->conf->num_bss; j++) { in hostapd_remove_iface()
3985 if (!os_strcmp(hapd_iface->conf->bss[j]->iface, buf)) { in hostapd_remove_iface()
4040 if (!hapd->conf->ieee802_1x && !hapd->conf->wpa && !hapd->conf->osen) { in hostapd_new_assoc_sta()
4067 hapd->conf->iface, __func__, in hostapd_new_assoc_sta()
4075 hapd->conf->iface, __func__, MAC2STR(sta->addr), in hostapd_new_assoc_sta()
4076 hapd->conf->ap_max_inactivity); in hostapd_new_assoc_sta()
4078 eloop_register_timeout(hapd->conf->ap_max_inactivity, 0, in hostapd_new_assoc_sta()
4083 if (hapd->conf->wpa_key_mgmt == WPA_KEY_MGMT_NONE && in hostapd_new_assoc_sta()
4084 hapd->conf->mka_psk_set) in hostapd_new_assoc_sta()
4120 iface->conf ? iface->conf->bss[0]->iface : "N/A", in hostapd_set_state()
4245 struct hostapd_config *conf, in hostapd_change_config_freq() argument
4267 hostapd_set_freq_params(old_params, conf->hw_mode, in hostapd_change_config_freq()
4268 hostapd_hw_get_freq(hapd, conf->channel), in hostapd_change_config_freq()
4269 conf->channel, conf->enable_edmg, in hostapd_change_config_freq()
4270 conf->edmg_channel, conf->ieee80211n, in hostapd_change_config_freq()
4271 conf->ieee80211ac, conf->ieee80211ax, in hostapd_change_config_freq()
4272 conf->ieee80211be, conf->secondary_channel, in hostapd_change_config_freq()
4273 hostapd_get_oper_chwidth(conf), in hostapd_change_config_freq()
4274 hostapd_get_oper_centr_freq_seg0_idx(conf), in hostapd_change_config_freq()
4275 hostapd_get_oper_centr_freq_seg1_idx(conf), in hostapd_change_config_freq()
4276 conf->vht_capab, in hostapd_change_config_freq()
4287 conf->ht_capab &= ~HT_CAP_INFO_SUPP_CHANNEL_WIDTH_SET; in hostapd_change_config_freq()
4293 conf->ht_capab |= HT_CAP_INFO_SUPP_CHANNEL_WIDTH_SET; in hostapd_change_config_freq()
4303 hostapd_set_oper_chwidth(conf, CONF_OPER_CHWIDTH_USE_HT); in hostapd_change_config_freq()
4307 hostapd_set_oper_chwidth(conf, in hostapd_change_config_freq()
4310 hostapd_set_oper_chwidth(conf, in hostapd_change_config_freq()
4314 hostapd_set_oper_chwidth(conf, CONF_OPER_CHWIDTH_160MHZ); in hostapd_change_config_freq()
4317 hostapd_set_oper_chwidth(conf, CONF_OPER_CHWIDTH_320MHZ); in hostapd_change_config_freq()
4323 conf->channel = channel; in hostapd_change_config_freq()
4324 conf->ieee80211n = params->ht_enabled; in hostapd_change_config_freq()
4325 conf->ieee80211ac = params->vht_enabled; in hostapd_change_config_freq()
4326 conf->secondary_channel = params->sec_channel_offset; in hostapd_change_config_freq()
4335 hostapd_set_oper_centr_freq_seg0_idx(conf, seg0); in hostapd_change_config_freq()
4336 hostapd_set_oper_centr_freq_seg1_idx(conf, seg1); in hostapd_change_config_freq()
4395 ret = hostapd_change_config_freq(iface->bss[0], iface->conf, in hostapd_fill_csa_settings()
4402 old_punct_bitmap = iface->conf->punct_bitmap; in hostapd_fill_csa_settings()
4403 iface->conf->punct_bitmap = settings->punct_bitmap; in hostapd_fill_csa_settings()
4409 iface->conf->punct_bitmap = old_punct_bitmap; in hostapd_fill_csa_settings()
4411 hostapd_change_config_freq(iface->bss[0], iface->conf, in hostapd_fill_csa_settings()
4434 if (hapd->conf->mld_ap) in hostapd_fill_csa_settings()
4543 iface->conf->vht_capab |= in hostapd_switch_channel_fallback()
4551 iface->conf->vht_capab |= VHT_CAP_SUPP_CHAN_WIDTH_160MHZ; in hostapd_switch_channel_fallback()
4563 iface->conf->channel = freq_params->channel; in hostapd_switch_channel_fallback()
4564 iface->conf->secondary_channel = freq_params->sec_channel_offset; in hostapd_switch_channel_fallback()
4573 iface->conf->op_class = op_class; in hostapd_switch_channel_fallback()
4574 hostapd_set_oper_centr_freq_seg0_idx(iface->conf, seg0_idx); in hostapd_switch_channel_fallback()
4575 hostapd_set_oper_centr_freq_seg1_idx(iface->conf, seg1_idx); in hostapd_switch_channel_fallback()
4576 hostapd_set_oper_chwidth(iface->conf, bw); in hostapd_switch_channel_fallback()
4577 iface->conf->ieee80211n = freq_params->ht_enabled; in hostapd_switch_channel_fallback()
4578 iface->conf->ieee80211ac = freq_params->vht_enabled; in hostapd_switch_channel_fallback()
4579 iface->conf->ieee80211ax = freq_params->he_enabled; in hostapd_switch_channel_fallback()
4580 iface->conf->ieee80211be = freq_params->eht_enabled; in hostapd_switch_channel_fallback()
4611 if (!iface || iface->conf->he_op.he_bss_color_disabled) in hostapd_fill_cca_settings()
4616 if (hapd->conf->mld_ap) in hostapd_fill_cca_settings()
4620 old_color = iface->conf->he_op.he_bss_color; in hostapd_fill_cca_settings()
4621 iface->conf->he_op.he_bss_color = hapd->cca_color; in hostapd_fill_cca_settings()
4626 iface->conf->he_op.he_bss_color = old_color; in hostapd_fill_cca_settings()
4676 hapd->iface->conf->he_op.he_bss_color_disabled = 1; in hostapd_switch_color_timeout_handler()
4677 hapd->iface->conf->he_op.he_bss_color = os_random() % 63 + 1; in hostapd_switch_color_timeout_handler()
4748 if (os_strcmp(ifname, hapd->conf->iface) == 0) in hostapd_get_iface()
4815 if (!bss->conf->mld_ap || in hostapd_mld_get_link_bss()
4834 if (!hapd1->conf->mld_ap || !hapd2->conf->mld_ap) in hostapd_is_ml_partner()
4837 return !os_strcmp(hapd1->conf->iface, hapd2->conf->iface); in hostapd_is_ml_partner()
4843 if (!hapd->conf->mld_ap) in hostapd_get_mld_id()
4857 if (!hapd->conf->mld_ap) in hostapd_mld_add_link()
4885 if (!hapd->conf->mld_ap) in hostapd_mld_remove_link()
4920 if (!hapd->conf->mld_ap) in hostapd_mld_is_first_bss()
4940 if (!hapd->conf->mld_ap) in hostapd_mld_get_first_bss()
4961 punct_bitmap = hapd->conf->eht_oper_puncturing_override; in hostapd_get_punct_bitmap()