aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ssh/src
diff options
context:
space:
mode:
authorIngela Anderton Andin <[email protected]>2013-11-11 09:54:29 +0100
committerIngela Anderton Andin <[email protected]>2013-11-13 10:58:20 +0100
commite6631f5a8bbf3218eaed1e973bfb42aa40902667 (patch)
tree370efcd61f818e7ef0466a895080c2902407fca6 /lib/ssh/src
parent422ed9ecd9c95c25964381b7ca2888a0320a8ee4 (diff)
downloadotp-e6631f5a8bbf3218eaed1e973bfb42aa40902667.tar.gz
otp-e6631f5a8bbf3218eaed1e973bfb42aa40902667.tar.bz2
otp-e6631f5a8bbf3218eaed1e973bfb42aa40902667.zip
ssh: Add option to disallow CLI
OTP-10976
Diffstat (limited to 'lib/ssh/src')
-rw-r--r--lib/ssh/src/ssh.erl2
-rw-r--r--lib/ssh/src/ssh_connection.erl2
2 files changed, 4 insertions, 0 deletions
diff --git a/lib/ssh/src/ssh.erl b/lib/ssh/src/ssh.erl
index 4e78c4e65a..2685b1553b 100644
--- a/lib/ssh/src/ssh.erl
+++ b/lib/ssh/src/ssh.erl
@@ -401,6 +401,8 @@ handle_ssh_option({subsystems, Value} = Opt) when is_list(Value) ->
Opt;
handle_ssh_option({ssh_cli, {Cb, _}}= Opt) when is_atom(Cb) ->
Opt;
+handle_ssh_option({ssh_cli, no_cli} = Opt) ->
+ Opt;
handle_ssh_option({shell, {Module, Function, _}} = Opt) when is_atom(Module),
is_atom(Function) ->
Opt;
diff --git a/lib/ssh/src/ssh_connection.erl b/lib/ssh/src/ssh_connection.erl
index d3760f8295..7016f349e8 100644
--- a/lib/ssh/src/ssh_connection.erl
+++ b/lib/ssh/src/ssh_connection.erl
@@ -933,6 +933,8 @@ child_spec(Callback, Id, Args, Exec) ->
Type = worker,
{Name, StartFunc, Restart, Shutdown, Type, [ssh_channel]}.
+start_cli(#connection{cli_spec = no_cli}, _) ->
+ {error, cli_disabled};
start_cli(#connection{cli_spec = {CbModule, Args}, exec = Exec,
sub_system_supervisor = SubSysSup}, ChannelId) ->
start_channel(CbModule, ChannelId, Args, SubSysSup, Exec).