<div dir="ltr"><div style="font-family:arial,sans-serif;font-size:13px">Hi all,</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">I've been playing around with the SSH application a bit and found the following three weird behaviours. You can read also read this in Markdown at:</div>

<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px"><a href="https://gist.github.com/robertoaloi/8861758" target="_blank">https://gist.github.com/robertoaloi/8861758</a></div>

<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px"><div>### Misleading error message on ssh_sftp:start_channel/1 in case user does not have a shell</div>

<div><br></div><div>When starting a SFTP channel towards a system where user does not have a shell (i.e. it has `/bin/false` or equilvalent assigned in the `/etc/passwd` a misleading error message is returned to the user:</div>

<div><br></div><div>````</div><div>1> test:go(). </div><div>** exception exit: {normal,{gen_server,call,</div><div>                                       [<0.53.0>,</div><div>                                        {{timeout,infinity},</div>

<div>                                         wait_for_version_negotiation},</div><div>                                        infinity]}}</div><div>     in function  gen_server:call/3 (gen_server.erl, line 188)</div><div>

     in call from ssh_channel:call/3 (ssh_channel.erl, line 88)</div><div>     in call from ssh_sftp:start_channel/2 (ssh_sftp.erl, line 93)</div><div>     in call from test:connect/1 (test.erl, line 14)</div><div>````</div>

<div><br></div><div>Where:</div><div><br></div><div>````</div><div>-module(test).</div><div>-compile(export_all).</div><div><br></div><div>go() -></div><div>    ok = application:start(crypto),</div><div>    ok = application:start(asn1),</div>

<div>    ok = application:start(public_key),</div><div>    ok = application:start(ssh),</div><div>    connect("rabbitmq").</div><div><br></div><div>connect(Username) -></div><div>    {ok, SSHRef} = ssh:connect("localhost", 22, [{user, Username}]),</div>

<div>    {ok, _SFTPChannelRef} = ssh_sftp:start_channel(SSHRef),</div><div>    ok.</div><div><br></div><div>````</div><div><br></div><div>This has been experienced in both R16B03 and R15B03.</div><div><br></div><div>### Crash on SSH connect</div>

<div><br></div><div>On R16B03, when connecting via SSH on OS X Mavericks I get:</div><div><br></div><div>````</div><div>1> test:go().</div><div>** exception error: no match of right hand side value {error,"Internal error"}</div>

<div>     in function  test:connect/1 (test.erl, line 13)</div><div>3> </div><div>=ERROR REPORT==== 7-Feb-2014::13:38:06 ===</div><div>Erlang ssh connection handler failed with reason: function_clause </div><div>, Stacktace: [{ssh_connection_handler,userauth,</div>

<div>                  [{ssh_msg_userauth_pk_ok,<<>>, ...</div><div>````</div><div><br></div><div>### Internal Crash is not real when using the `key_cb` option</div><div><br></div><div>When using the 'key_cb' option on `ssh:connect/3` the user should implement a series of callback functions. Not implementing them and trying to connect results in an "internal error" which invites the user to send a bug report. The undef callback function should be catched and reported as a normal error, not an internal one.</div>

<div><br></div><div>````</div><div>please report this to <a href="mailto:erlang-bugs@erlang.org" target="_blank">erlang-bugs@erlang.org</a> </div><div>````</div></div><div style="font-family:arial,sans-serif;font-size:13px">

<br></div><div style="font-family:arial,sans-serif;font-size:13px">Hope this help,</div><div class="" style="font-family:arial,sans-serif;font-size:13px"><div id=":y3" class="" tabindex="0"><img class="" src="https://mail.google.com/mail/u/0/images/cleardot.gif"></div>

</div>-- <br>Roberto Aloi<br>---<br>Website: <a href="http://roberto-aloi.com" target="_blank">http://roberto-aloi.com</a><br>Twitter: @robertoaloi<br>
</div>