diff options
Diffstat (limited to 'package/network/services/hostapd/patches/700-wifi-reload.patch')
-rw-r--r-- | package/network/services/hostapd/patches/700-wifi-reload.patch | 49 |
1 files changed, 25 insertions, 24 deletions
diff --git a/package/network/services/hostapd/patches/700-wifi-reload.patch b/package/network/services/hostapd/patches/700-wifi-reload.patch index b68c1aaa9d..ba3255b35b 100644 --- a/package/network/services/hostapd/patches/700-wifi-reload.patch +++ b/package/network/services/hostapd/patches/700-wifi-reload.patch @@ -1,6 +1,6 @@ --- a/hostapd/config_file.c +++ b/hostapd/config_file.c -@@ -2501,6 +2501,8 @@ static int hostapd_config_fill(struct ho +@@ -2453,6 +2453,8 @@ static int hostapd_config_fill(struct ho bss->isolate = atoi(pos); } else if (os_strcmp(buf, "ap_max_inactivity") == 0) { bss->ap_max_inactivity = atoi(pos); @@ -9,7 +9,7 @@ } else if (os_strcmp(buf, "skip_inactivity_poll") == 0) { bss->skip_inactivity_poll = atoi(pos); } else if (os_strcmp(buf, "country_code") == 0) { -@@ -3197,6 +3199,8 @@ static int hostapd_config_fill(struct ho +@@ -3153,6 +3155,8 @@ static int hostapd_config_fill(struct ho } } else if (os_strcmp(buf, "acs_exclude_dfs") == 0) { conf->acs_exclude_dfs = atoi(pos); @@ -20,7 +20,7 @@ } else if (os_strcmp(buf, "channel") == 0) { --- a/src/ap/ap_config.c +++ b/src/ap/ap_config.c -@@ -780,6 +780,7 @@ void hostapd_config_free_bss(struct host +@@ -791,6 +791,7 @@ void hostapd_config_free_bss(struct host os_free(conf->radius_req_attr_sqlite); os_free(conf->rsn_preauth_interfaces); os_free(conf->ctrl_interface); @@ -28,7 +28,7 @@ os_free(conf->ca_cert); os_free(conf->server_cert); os_free(conf->server_cert2); -@@ -972,6 +973,7 @@ void hostapd_config_free(struct hostapd_ +@@ -987,6 +988,7 @@ void hostapd_config_free(struct hostapd_ for (i = 0; i < conf->num_bss; i++) hostapd_config_free_bss(conf->bss[i]); @@ -38,25 +38,26 @@ os_free(conf->basic_rates); --- a/src/ap/ap_config.h +++ b/src/ap/ap_config.h -@@ -871,6 +871,7 @@ struct hostapd_bss_config { - */ - u8 mka_psk_set; - #endif /* CONFIG_MACSEC */ +@@ -279,6 +279,8 @@ struct hostapd_bss_config { + char vlan_bridge[IFNAMSIZ + 1]; + char wds_bridge[IFNAMSIZ + 1]; + + char *config_id; - }; ++ + enum hostapd_logger_level logger_syslog_level, logger_stdout_level; - /** -@@ -1062,6 +1063,7 @@ struct hostapd_config { - unsigned int airtime_update_interval; - #define AIRTIME_MODE_MAX (__AIRTIME_MODE_MAX - 1) + unsigned int logger_syslog; /* module bitfield */ +@@ -782,6 +784,7 @@ struct hostapd_bss_config { + int airtime_limit; + struct airtime_sta_weight *airtime_weight_list; #endif /* CONFIG_AIRTIME_POLICY */ + char *config_id; - u8 notify_mgmt_frames; - }; + #ifdef CONFIG_MACSEC + /** --- a/src/ap/hostapd.c +++ b/src/ap/hostapd.c -@@ -218,6 +218,10 @@ static int hostapd_iface_conf_changed(st +@@ -219,6 +219,10 @@ static int hostapd_iface_conf_changed(st { size_t i; @@ -67,7 +68,7 @@ if (newconf->num_bss != oldconf->num_bss) return 1; -@@ -231,7 +235,7 @@ static int hostapd_iface_conf_changed(st +@@ -232,7 +236,7 @@ static int hostapd_iface_conf_changed(st } @@ -76,7 +77,7 @@ { struct hapd_interfaces *interfaces = iface->interfaces; struct hostapd_data *hapd = iface->bss[0]; -@@ -254,13 +258,16 @@ int hostapd_reload_config(struct hostapd +@@ -255,13 +259,16 @@ int hostapd_reload_config(struct hostapd if (newconf == NULL) return -1; @@ -95,7 +96,7 @@ wpa_printf(MSG_DEBUG, "Configuration changes include interface/BSS modification - force full disable+enable sequence"); fname = os_strdup(iface->config_fname); -@@ -285,6 +292,24 @@ int hostapd_reload_config(struct hostapd +@@ -286,6 +293,24 @@ int hostapd_reload_config(struct hostapd wpa_printf(MSG_ERROR, "Failed to enable interface on config reload"); return res; @@ -120,7 +121,7 @@ } iface->conf = newconf; -@@ -301,6 +326,12 @@ int hostapd_reload_config(struct hostapd +@@ -302,6 +327,12 @@ int hostapd_reload_config(struct hostapd for (j = 0; j < iface->num_bss; j++) { hapd = iface->bss[j]; @@ -133,7 +134,7 @@ hapd->iconf = newconf; hapd->conf = newconf->bss[j]; hostapd_reload_bss(hapd); -@@ -2366,6 +2397,10 @@ hostapd_alloc_bss_data(struct hostapd_if +@@ -2397,6 +2428,10 @@ hostapd_alloc_bss_data(struct hostapd_if hapd->iconf = conf; hapd->conf = bss; hapd->iface = hapd_iface; @@ -163,7 +164,7 @@ int interface_added; /* virtual interface added for this BSS */ unsigned int started:1; unsigned int disabled:1; -@@ -600,7 +601,7 @@ struct hostapd_iface { +@@ -604,7 +605,7 @@ struct hostapd_iface { int hostapd_for_each_interface(struct hapd_interfaces *interfaces, int (*cb)(struct hostapd_iface *iface, void *ctx), void *ctx); @@ -174,7 +175,7 @@ hostapd_alloc_bss_data(struct hostapd_iface *hapd_iface, --- a/src/drivers/driver_nl80211.c +++ b/src/drivers/driver_nl80211.c -@@ -4511,6 +4511,9 @@ static int wpa_driver_nl80211_set_ap(voi +@@ -4820,6 +4820,9 @@ static int wpa_driver_nl80211_set_ap(voi if (ret) { wpa_printf(MSG_DEBUG, "nl80211: Beacon set failed: %d (%s)", ret, strerror(-ret)); @@ -186,7 +187,7 @@ nl80211_set_bss(bss, params->cts_protect, params->preamble, --- a/hostapd/ctrl_iface.c +++ b/hostapd/ctrl_iface.c -@@ -184,7 +184,7 @@ static int hostapd_ctrl_iface_update(str +@@ -186,7 +186,7 @@ static int hostapd_ctrl_iface_update(str iface->interfaces->config_read_cb = hostapd_ctrl_iface_config_read; reload_opts = txt; |