aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans Nilsson <[email protected]>2016-06-17 16:01:38 +0200
committerHans Nilsson <[email protected]>2016-06-22 12:31:32 +0200
commitc74cb8aaec77452f7c91ea5345c1b6120fe15224 (patch)
tree778a26e3f5aa008f01cf68a84de26056df16fbb9
parentd68b279981496c5293746524e00ff77fd8a8b84c (diff)
downloadotp-c74cb8aaec77452f7c91ea5345c1b6120fe15224.tar.gz
otp-c74cb8aaec77452f7c91ea5345c1b6120fe15224.tar.bz2
otp-c74cb8aaec77452f7c91ea5345c1b6120fe15224.zip
ssh: polishing of password prompt's linefeed
-rw-r--r--lib/ssh/src/ssh_auth.erl13
1 files changed, 7 insertions, 6 deletions
diff --git a/lib/ssh/src/ssh_auth.erl b/lib/ssh/src/ssh_auth.erl
index 07585dbacd..0c378d084b 100644
--- a/lib/ssh/src/ssh_auth.erl
+++ b/lib/ssh/src/ssh_auth.erl
@@ -528,17 +528,18 @@ keyboard_interact_get_responses(true, Fun, _Pwd, _IoCb, Name, Instr, PromptInfos
keyboard_interact_fun(Fun, Name, Instr, PromptInfos, NumPrompts).
keyboard_interact(IoCb, Name, Instr, Prompts, Opts) ->
- if Name /= "" -> IoCb:format("~s~n", [Name]);
- true -> ok
- end,
- if Instr /= "" -> IoCb:format("~s~n", [Instr]);
- true -> ok
- end,
+ write_if_nonempty(IoCb, Name),
+ write_if_nonempty(IoCb, Instr),
lists:map(fun({Prompt, true}) -> IoCb:read_line(Prompt, Opts);
({Prompt, false}) -> IoCb:read_password(Prompt, Opts)
end,
Prompts).
+write_if_nonempty(_, "") -> ok;
+write_if_nonempty(_, <<>>) -> ok;
+write_if_nonempty(IoCb, Text) -> IoCb:format("~s~n",[Text]).
+
+
keyboard_interact_fun(KbdInteractFun, Name, Instr, PromptInfos, NumPrompts) ->
Prompts = lists:map(fun({Prompt, _Echo}) -> Prompt end,
PromptInfos),