diff options
author | Glenn Washburn <development@efficientek.com> | 2022-03-03 10:53:31 +0300 |
---|---|---|
committer | Richard Weinberger <richard@nod.at> | 2022-03-11 12:55:38 +0300 |
commit | db8109a8bb4a4b31e7f630d7667749d62ee4a087 (patch) | |
tree | 1f7fedc262ab378bfcb8921804c634717f584bcf /arch/um/drivers | |
parent | 6e8f4b70127fa852020718e636b3ea53f6e17d88 (diff) | |
download | linux-db8109a8bb4a4b31e7f630d7667749d62ee4a087.tar.xz |
um: port_user: Allow setting path to port-helper using UML_PORT_HELPER envvar
This is useful when the uml-utilities user-space package has not been
installed by the administrator and an unprivileged user wants to be able to
telnet into a UML instance. The user can install the port-helper binary to
a writable path and set UML_PORT_HELPER. Fallback to using hardcoded path to
port-helper if environment variable is not set.
Signed-off-by: Glenn Washburn <development@efficientek.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
Diffstat (limited to 'arch/um/drivers')
-rw-r--r-- | arch/um/drivers/port_user.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/um/drivers/port_user.c b/arch/um/drivers/port_user.c index 0625aa42041d..3e32351dadad 100644 --- a/arch/um/drivers/port_user.c +++ b/arch/um/drivers/port_user.c @@ -167,10 +167,14 @@ static void port_pre_exec(void *arg) int port_connection(int fd, int *socket, int *pid_out) { int new, err; + char *env; char *argv[] = { "in.telnetd", "-L", OS_LIB_PATH "/uml/port-helper", NULL }; struct port_pre_exec_data data; + if ((env = getenv("UML_PORT_HELPER"))) + argv[2] = env; + new = accept(fd, NULL, 0); if (new < 0) return -errno; |