Index: hostapd-2021-02-20-59e9794c/hostapd/config_file.c =================================================================== --- hostapd-2021-02-20-59e9794c.orig/hostapd/config_file.c +++ hostapd-2021-02-20-59e9794c/hostapd/config_file.c @@ -2366,6 +2366,8 @@ static int hostapd_config_fill(struct ho return 1; } conf->driver = driver; + } else if (os_strcmp(buf, "uci_section") == 0) { + bss->uci_section = os_strdup(pos); } else if (os_strcmp(buf, "driver_params") == 0) { os_free(conf->driver_params); conf->driver_params = os_strdup(pos); Index: hostapd-2021-02-20-59e9794c/src/ap/ap_config.h =================================================================== --- hostapd-2021-02-20-59e9794c.orig/src/ap/ap_config.h +++ hostapd-2021-02-20-59e9794c/src/ap/ap_config.h @@ -279,6 +279,7 @@ struct hostapd_bss_config { char snoop_iface[IFNAMSIZ + 1]; char vlan_bridge[IFNAMSIZ + 1]; char wds_bridge[IFNAMSIZ + 1]; + char *uci_section; char *config_id; Index: hostapd-2021-02-20-59e9794c/src/ap/ubus.c =================================================================== --- hostapd-2021-02-20-59e9794c.orig/src/ap/ubus.c +++ hostapd-2021-02-20-59e9794c/src/ap/ubus.c @@ -467,6 +467,9 @@ hostapd_bss_get_status(struct ubus_conte hapd->iface->cac_started ? hapd->iface->dfs_cac_ms / 1000 - now.sec : 0); blobmsg_close_table(&b, dfs_table); + if (hapd->conf->uci_section) + blobmsg_add_string(&b, "uci_section", hapd->conf->uci_section); + ubus_send_reply(ctx, req, b.head); return 0; Index: hostapd-2021-02-20-59e9794c/src/ap/ap_config.c =================================================================== --- hostapd-2021-02-20-59e9794c.orig/src/ap/ap_config.c +++ hostapd-2021-02-20-59e9794c/src/ap/ap_config.c @@ -785,6 +785,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); + os_free(conf->uci_section); os_free(conf->config_id); os_free(conf->ca_cert); os_free(conf->server_cert);