hostapd: Allow config parameters to be set through ctrl_iface
Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
parent
a7f5b74d43
commit
31b79e1197
3 changed files with 30 additions and 1 deletions
|
@ -2276,3 +2276,28 @@ struct hostapd_config * hostapd_config_read(const char *fname)
|
||||||
|
|
||||||
return conf;
|
return conf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int hostapd_set_iface(struct hostapd_config *conf,
|
||||||
|
struct hostapd_bss_config *bss, char *field, char *value)
|
||||||
|
{
|
||||||
|
int errors = 0;
|
||||||
|
size_t i;
|
||||||
|
|
||||||
|
errors = hostapd_config_fill(conf, bss, field, value, 0);
|
||||||
|
if (errors) {
|
||||||
|
wpa_printf(MSG_INFO, "Failed to set configuration field '%s' "
|
||||||
|
"to value '%s'", field, value);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (i = 0; i < conf->num_bss; i++)
|
||||||
|
hostapd_set_security_params(&conf->bss[i]);
|
||||||
|
|
||||||
|
if (hostapd_config_check(conf)) {
|
||||||
|
wpa_printf(MSG_ERROR, "Configuration check failed");
|
||||||
|
errors++;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
|
@ -10,5 +10,8 @@
|
||||||
#define CONFIG_FILE_H
|
#define CONFIG_FILE_H
|
||||||
|
|
||||||
struct hostapd_config * hostapd_config_read(const char *fname);
|
struct hostapd_config * hostapd_config_read(const char *fname);
|
||||||
|
int hostapd_set_iface(struct hostapd_config *conf,
|
||||||
|
struct hostapd_bss_config *bss, char *field,
|
||||||
|
char *value);
|
||||||
|
|
||||||
#endif /* CONFIG_FILE_H */
|
#endif /* CONFIG_FILE_H */
|
||||||
|
|
|
@ -31,6 +31,7 @@
|
||||||
#include "ap/ap_drv_ops.h"
|
#include "ap/ap_drv_ops.h"
|
||||||
#include "wps/wps_defs.h"
|
#include "wps/wps_defs.h"
|
||||||
#include "wps/wps.h"
|
#include "wps/wps.h"
|
||||||
|
#include "config_file.h"
|
||||||
#include "ctrl_iface.h"
|
#include "ctrl_iface.h"
|
||||||
|
|
||||||
|
|
||||||
|
@ -774,7 +775,7 @@ static int hostapd_ctrl_iface_set(struct hostapd_data *hapd, char *cmd)
|
||||||
wps_testing_dummy_cred);
|
wps_testing_dummy_cred);
|
||||||
#endif /* CONFIG_WPS_TESTING */
|
#endif /* CONFIG_WPS_TESTING */
|
||||||
} else {
|
} else {
|
||||||
ret = -1;
|
ret = hostapd_set_iface(hapd->iconf, hapd->conf, cmd, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
|
|
Loading…
Reference in a new issue