mirror of
https://github.com/clearml/dropbear
synced 2025-02-12 07:25:30 +00:00
use exec for proxycommand
This commit is contained in:
parent
20bdf3a5b1
commit
4c4aa502d4
@ -152,12 +152,19 @@ static void exec_proxy_cmd(void *user_data_cmd) {
|
|||||||
|
|
||||||
#ifdef ENABLE_CLI_PROXYCMD
|
#ifdef ENABLE_CLI_PROXYCMD
|
||||||
static void cli_proxy_cmd(int *sock_in, int *sock_out, pid_t *pid_out) {
|
static void cli_proxy_cmd(int *sock_in, int *sock_out, pid_t *pid_out) {
|
||||||
|
char * ex_cmd = NULL;
|
||||||
|
size_t ex_cmdlen;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
fill_passwd(cli_opts.own_user);
|
fill_passwd(cli_opts.own_user);
|
||||||
|
|
||||||
ret = spawn_command(exec_proxy_cmd, cli_opts.proxycmd,
|
ex_cmdlen = strlen(cli_opts.proxycmd) + 6; /* "exec " + command + '\0' */
|
||||||
|
ex_cmd = m_malloc(ex_cmdlen);
|
||||||
|
snprintf(ex_cmd, ex_cmdlen, "exec %s", cli_opts.proxycmd);
|
||||||
|
|
||||||
|
ret = spawn_command(exec_proxy_cmd, ex_cmd,
|
||||||
sock_out, sock_in, NULL, pid_out);
|
sock_out, sock_in, NULL, pid_out);
|
||||||
|
m_free(ex_cmd);
|
||||||
if (ret == DROPBEAR_FAILURE) {
|
if (ret == DROPBEAR_FAILURE) {
|
||||||
dropbear_exit("Failed running proxy command");
|
dropbear_exit("Failed running proxy command");
|
||||||
*sock_in = *sock_out = -1;
|
*sock_in = *sock_out = -1;
|
||||||
|
@ -114,7 +114,8 @@ Disconnect the session if no traffic is transmitted or received for \fIidle_time
|
|||||||
.B \-J \fIproxy_command
|
.B \-J \fIproxy_command
|
||||||
Use the standard input/output of the program \fIproxy_command\fR rather than using
|
Use the standard input/output of the program \fIproxy_command\fR rather than using
|
||||||
a normal TCP connection. A hostname should be still be provided, as this is used for
|
a normal TCP connection. A hostname should be still be provided, as this is used for
|
||||||
comparing saved hostkeys.
|
comparing saved hostkeys. This command will be executed as "exec proxy_command ..." with the
|
||||||
|
default shell.
|
||||||
.TP
|
.TP
|
||||||
.B \-B \fIendhost:endport
|
.B \-B \fIendhost:endport
|
||||||
"Netcat-alike" mode, where Dropbear will connect to the given host, then create a
|
"Netcat-alike" mode, where Dropbear will connect to the given host, then create a
|
||||||
|
Loading…
Reference in New Issue
Block a user