aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Prestwood <prestwoj@gmail.com>2020-03-16 12:22:41 -0700
committerDenis Kenzior <denkenz@gmail.com>2020-03-13 23:52:26 -0500
commit24235a2af8f75233d1dadd717270aa1908a9c116 (patch)
tree4021df9e45a8ced8e3bc523761aebf39fd7091e2
parentaf5c77aeba3357d2ff016cfcb4b068acfc285b3f (diff)
downloadiwd-24235a2af8f75233d1dadd717270aa1908a9c116.tar.gz
test-runner: fix improper loading of radius_config
This key is special in hostapd, and was being treated as a normal hostapd config file. This special radius config file needs to be kept unpaired from any interfaces so now its passed in as a separate argument and appended to the end of the hostapd execute command.
-rw-r--r--tools/test-runner.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/tools/test-runner.c b/tools/test-runner.c
index 1f0bc4dd2..320dea0b4 100644
--- a/tools/test-runner.c
+++ b/tools/test-runner.c
@@ -989,7 +989,7 @@ static void stop_ofono(pid_t pid)
}
static pid_t start_hostapd(char **config_files, struct wiphy **wiphys,
- const char *test_name)
+ const char *test_name, const char *radius_conf)
{
char **argv;
pid_t pid;
@@ -1029,6 +1029,9 @@ static pid_t start_hostapd(char **config_files, struct wiphy **wiphys,
argv[idx++] = config_files[i];
}
+ if (radius_conf)
+ argv[idx++] = (void *)radius_conf;
+
if (verbose) {
argv[idx++] = "-d";
argv[idx++] = NULL;
@@ -1358,6 +1361,7 @@ static bool configure_hostapd_instances(struct l_settings *hw_settings,
int i;
char **hostapd_config_file_paths;
struct wiphy **wiphys;
+ const char *radius_config = NULL;
*phys_used = 0;
@@ -1398,8 +1402,12 @@ static bool configure_hostapd_instances(struct l_settings *hw_settings,
goto done;
}
- if (!strcmp(hostap_keys[i], "radius_server"))
+ if (!strcmp(hostap_keys[i], "radius_server")) {
+ radius_config = l_settings_get_value(hw_settings,
+ HW_CONFIG_GROUP_HOSTAPD,
+ "radius_server");
continue;
+ }
for (wiphy_entry = l_queue_get_entries(wiphy_list);
wiphy_entry;
@@ -1478,7 +1486,8 @@ hostapd_done:
}
hostapd_pids_out[0] = start_hostapd(hostapd_config_file_paths, wiphys,
- basename(config_dir_path));
+ basename(config_dir_path),
+ radius_config);
hostapd_pids_out[1] = -1;
done: