wpa_cli: Allow space in the set command value
Previously, interactive mode could not be used to enter space-separated lists with the set command. This removes that restriction and allows such commands to be encoded properly. Signed-hostap: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
f5ffc348dc
commit
f1fb042cec
1 changed files with 8 additions and 14 deletions
|
@ -590,22 +590,16 @@ static int wpa_cli_cmd_set(struct wpa_ctrl *ctrl, int argc, char *argv[])
|
|||
return 0;
|
||||
}
|
||||
|
||||
if (argc != 1 && argc != 2) {
|
||||
printf("Invalid SET command: needs two arguments (variable "
|
||||
"name and value)\n");
|
||||
return -1;
|
||||
if (argc == 1) {
|
||||
res = os_snprintf(cmd, sizeof(cmd), "SET %s ", argv[0]);
|
||||
if (res < 0 || (size_t) res >= sizeof(cmd) - 1) {
|
||||
printf("Too long SET command.\n");
|
||||
return -1;
|
||||
}
|
||||
return wpa_ctrl_command(ctrl, cmd);
|
||||
}
|
||||
|
||||
if (argc == 1)
|
||||
res = os_snprintf(cmd, sizeof(cmd), "SET %s ", argv[0]);
|
||||
else
|
||||
res = os_snprintf(cmd, sizeof(cmd), "SET %s %s",
|
||||
argv[0], argv[1]);
|
||||
if (res < 0 || (size_t) res >= sizeof(cmd) - 1) {
|
||||
printf("Too long SET command.\n");
|
||||
return -1;
|
||||
}
|
||||
return wpa_ctrl_command(ctrl, cmd);
|
||||
return wpa_cli_cmd(ctrl, "SET", 2, argc, argv);
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue