qrexec: in qrexec_client_vm, need to preserve absolute exe name before execv
This commit is contained in:
parent
243d488d99
commit
ab6aeb0bca
@ -63,6 +63,7 @@ int main(int argc, char **argv)
|
|||||||
struct trigger_connect_params params;
|
struct trigger_connect_params params;
|
||||||
int local_fd[3], remote_fd[3];
|
int local_fd[3], remote_fd[3];
|
||||||
int i;
|
int i;
|
||||||
|
char *abs_exec_path;
|
||||||
|
|
||||||
if (argc < 4) {
|
if (argc < 4) {
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
@ -100,8 +101,9 @@ int main(int argc, char **argv)
|
|||||||
write(trigger_fd, ¶ms, sizeof(params));
|
write(trigger_fd, ¶ms, sizeof(params));
|
||||||
close(trigger_fd);
|
close(trigger_fd);
|
||||||
|
|
||||||
|
abs_exec_path = strdup(argv[3]);
|
||||||
argv[3] = get_program_name(argv[3]);
|
argv[3] = get_program_name(argv[3]);
|
||||||
execv(argv[1], argv + 3);
|
execv(abs_exec_path, argv + 3);
|
||||||
perror("execv");
|
perror("execv");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user