aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ssh/src
AgeCommit message (Collapse)Author
2015-05-26ssh: Undocumented option 'compression' replaced by 'preferred_algorithms'Hans Nilsson
The 'compression' option was used in the test cases. The new option 'preferred_algorithms' is much more powerful and can be used as a replacement.
2015-05-26ssh: New option 'preferred_algorithms'Hans Nilsson
This option enables the user to define which algorithms that are to be used as well as their precedences in the negotiation between server and client.
2015-05-26ssh: Remove erroneous option 'role'Hans Nilsson
This option is set internaly but there is no reason to set it when calling a function.
2015-05-21Fix protocol violations during rekeyingSimon Cornish
In RFC 4253, sections 7.1 & 9 describe rekeying with special attention to the protocol messages that may be received and may not be sent during rekeying. This patch fixes a number of problems during rekeying caused by data & requests received from the network, and/or data & requests sent by the user.
2015-05-21Fix rekeying according to RFC 4253Simon Cornish
When in the connected state, an received KEXINIT message MUST be responded to with KEXINIT. After that, the client may continue with KEXDH_INIT (or similar). See the first paragraph on RFC 4253 sec. 9.
2015-05-18Merge branch 'maint'Zandra Hird
Conflicts: OTP_VERSION lib/ssh/doc/src/ssh.xml lib/ssh/vsn.mk
2015-05-13ssh: option for handling the SSH_MSG_DEBUG message's printoutsHans Nilsson
A fun could be given in the options that will be called whenever the SSH_MSG_DEBUG message arrives. This enables the user to format the printout or just discard it. The default is changed to not print the message. In RFC4253 printing is a SHOULD, but our new default is to protect logs from dos attacs.
2015-05-12ssh: Fix typoIngela Anderton Andin
Option height was misspelled in the code. Fix code but recognize the mispellt option for backwards compatible reasons.
2015-05-08ssh: Check e and f parameters in kexdhHans Nilsson
rfc 4253 says in section 8 that: "Values of 'e' or 'f' that are not in the range [1, p-1] MUST NOT be sent or accepted by either side. If this condition is violated, the key exchange fails." This commit implements the reception check.
2015-05-05Merge branch 'dotsimon/ssh_sftp_version_negotiation_timeout'Zandra Hird
OTP-12708
2015-04-30ssh: Fix bug causing rekeying once per minute after 1st Gbyte Thanks SimonHans Nilsson
The port stats are not accumulated so that once rekey_limit bytes (by default, 1GB) have been transmitted the connection will be rekeyed every minute, not after the next 1GB.
2015-04-23Fix ssh_sftp wait_for_version_negotiation timeoutSimon Cornish
This patch fixes a bug that causes an SFTP connection to always fail when {timeout, Timeout} option is used with ssh_sftp:start_channel. The bug is that the version negotiation timer is not cancelled upon reception of SSH_FXP_VERSION.
2015-04-23Merge branch 'maint'Zandra Hird
Conflicts: OTP_VERSION
2015-04-21ssh: added id_string option for server and clientHans Nilsson
For limiting Banner Grabbing attempts.
2015-04-15Merge branch 'ia/ssh/channel-gracefull-shutdown/OTP-12648'Ingela Anderton Andin
* ia/ssh/channel-gracefull-shutdown/OTP-12648: ssh: Shutdown sftp channel gracefully
2015-04-14ssh: Shutdown sftp channel gracefullyIngela Anderton Andin
If ssh_connection:subsystem/4 fails we do not want to crash but rather terminate gracefully.
2015-04-10Merge branch 'maint-17'Zandra Hird
Conflicts: OTP_VERSION
2015-04-07ssh: Reset upgrade instructions to defaultIngela Anderton Andin
2015-04-07ssh: Option minimal_remote_max_packet_size and test casesHans Nilsson
2015-04-07ssh: fix loop bug for zero maximum_packet_size.Hans Nilsson
A channel could be opened with the 'max packet size' set to 0. The behaviour is not defined in the ssh rfc:s, and openssh does not handle that case in some special way besides looping. The introduced solution just "keep quiet" but removes the eternal loop that caused Erlang to core dump.
2015-04-07ssh: Add ssh_info:print/1 to write onto a file descriptorHans Nilsson
2015-04-07ssh: Add {active, false} to ssh listen socketIngela Anderton Andin
The ssh acceptor process listens for connections and spawns a process to handle each new connection that it accepts. The ownership of the accepted socket will be transfered to the new process that will handle the incomming messages. Before the ownership is transfered the socket should be in {active, false} or the acceptor process may receive data aimed for the connection. As the accept socket inherits the listen options we set {active, false} there.
2015-04-07ssh: Change send_buf implementation from list to queueIngela Anderton Andin
A queue is the behaviour that we want, so this makes the code easier to understand and more effective.
2015-04-07ssh: Remove error reportIngela Anderton Andin
The error report was assumed to only happen if our code was wrongly implemented "internal error". However it would also occur when bad input was recived from the peer, and could hence cause extensive logging on DoS attacks.
2015-03-24ssh: Use new time APIErland Schönbeck
2015-03-23Merge branch 'maint'Erland Schönbeck
Conflicts: lib/ssh/test/ssh_basic_SUITE.erl
2015-03-20Merge branch 'rickard/time_api/OTP-11997'Rickard Green
* rickard/time_api/OTP-11997: (22 commits) Update primary bootstrap inets: Suppress deprecated warning on erlang:now/0 inets: Cleanup of multiple copies of functions Add inets_lib with common functions used by multiple modules inets: Update comments Suppress deprecated warning on erlang:now/0 Use new time API and be back-compatible in inets Remove unused functions and removed redundant test asn1 test SUITE: Eliminate use of now/0 Disable deprecated warning on erlang:now/0 in diameter_lib Use new time API and be back-compatible in ssh Replace all calls to now/0 in CT with new time API functions test_server: Replace usage of erlang:now() with usage of new API Replace usage of erlang:now() with usage of new API Replace usage of erlang:now() with usage of new API Replace usage of erlang:now() with usage of new API Replace usage of erlang:now() with usage of new API otp_SUITE: Warn for calls to erlang:now/0 Replace usage of erlang:now() with usage of new API Multiple timer wheels Erlang based BIF timer implementation for scalability Implement ethread events with timeout ... Conflicts: bootstrap/bin/start.boot bootstrap/bin/start_clean.boot bootstrap/lib/compiler/ebin/beam_asm.beam bootstrap/lib/compiler/ebin/compile.beam bootstrap/lib/kernel/ebin/auth.beam bootstrap/lib/kernel/ebin/dist_util.beam bootstrap/lib/kernel/ebin/global.beam bootstrap/lib/kernel/ebin/hipe_unified_loader.beam bootstrap/lib/kernel/ebin/inet_db.beam bootstrap/lib/kernel/ebin/inet_dns.beam bootstrap/lib/kernel/ebin/inet_res.beam bootstrap/lib/kernel/ebin/os.beam bootstrap/lib/kernel/ebin/pg2.beam bootstrap/lib/stdlib/ebin/dets.beam bootstrap/lib/stdlib/ebin/dets_utils.beam bootstrap/lib/stdlib/ebin/erl_tar.beam bootstrap/lib/stdlib/ebin/escript.beam bootstrap/lib/stdlib/ebin/file_sorter.beam bootstrap/lib/stdlib/ebin/otp_internal.beam bootstrap/lib/stdlib/ebin/qlc.beam bootstrap/lib/stdlib/ebin/random.beam bootstrap/lib/stdlib/ebin/supervisor.beam bootstrap/lib/stdlib/ebin/timer.beam erts/aclocal.m4 erts/emulator/beam/bif.c erts/emulator/beam/erl_bif_info.c erts/emulator/beam/erl_db_hash.c erts/emulator/beam/erl_init.c erts/emulator/beam/erl_process.h erts/emulator/beam/erl_thr_progress.c erts/emulator/beam/utils.c erts/emulator/sys/unix/sys.c erts/preloaded/ebin/erlang.beam erts/preloaded/ebin/erts_internal.beam erts/preloaded/ebin/init.beam erts/preloaded/src/erts_internal.erl lib/common_test/test/ct_hooks_SUITE_data/cth/tests/empty_cth.erl lib/diameter/src/base/diameter_lib.erl lib/kernel/src/os.erl lib/ssh/test/ssh_basic_SUITE.erl system/doc/efficiency_guide/advanced.xml
2015-03-20Use new time API and be back-compatible in sshErland Schönbeck
Conflicts: lib/ssh/test/ssh_basic_SUITE.erl
2015-03-16Revert "Use new time API and be back-compatible in ssh"Erland Schönbeck
This reverts commit af972aaf14a5f53510e692f48f672f7e6805ee6d. Conflicts: lib/ssh/test/ssh_basic_SUITE.erl
2015-03-09Merge branch 'maint'Erland Schönbeck
Conflicts: erts/test/otp_SUITE.erl
2015-02-25Use new time API and be back-compatible in sshErland Schönbeck
otp_SUITE: Ignore undefined functions in ssh
2015-02-05Merge branch 'maint'Hans Nilsson
* maint: Fix ssh:connect erroneus error msg at timeout
2015-02-05Fix ssh:connect erroneus error msg at timeoutHans Nilsson
2015-01-26Merge branch 'maint'Ingela Anderton Andin
2015-01-23ssh: Add some more flagsIngela Anderton Andin
2015-01-23ssh: Correct Sftp flag handlingIngela Anderton Andin
Function name was somewhat confusing and when trying to find a better name for it we realised it did not work as intended.
2015-01-23ssh: Add handling of sftp v3 flagsIngela Anderton Andin
2014-12-29Merge branch 'lemenkov/use_os_getenv_2'Marcus Arendt
* lemenkov/use_os_getenv_2: fix missing include Start using os:getenv/2 fun Introduce os:getenv/2
2014-12-17Merge branch 'maint'Ingela Anderton Andin
2014-12-17ssh: Improve errorhandling in ssh_connection.erlIngela Anderton Andin
If a channel is closed by the peer while using a function with call semantics in ssh_connection.erl return {error, closed}. Document that the functions can return {error, timeout | closed} and not only ssh_request_status()
2014-12-15Start using os:getenv/2 funPeter Lemenkov
See #535 Signed-off-by: Peter Lemenkov <[email protected]>
2014-12-09Merge branch 'maint'Hans Nilsson
2014-12-09ssh: Fix syntax error in .appupHans Nilsson
2014-12-08Merge branch 'maint'Hans Nilsson
2014-12-08ssh: Fix .app and .appupHans Nilsson
2014-12-05Merge branch 'maint'Marcus Arendt
2014-12-05Revert "ssh: Corrected ret val from ssh_connection:subsystem/4."Marcus Arendt
This reverts commit d086394ebd3595d431835af80709977a6c1c7c89.
2014-12-02Merge branch 'maint'Ingela Anderton Andin
2014-12-02ssh: Add soft upgrade for ptty_allocIngela Anderton Andin
2014-12-02Merge branch 'maint'Hans Nilsson