From 1122ef871c2439e07614f9d6060f1f56f460907a Mon Sep 17 00:00:00 2001
From: Erlang/OTP
+ SSH client does not any longer retry a bad password given
+ as option to ssh:connect et al.
+ Own Id: OTP-13674 Aux Id: TR-HU92273
+ SSH client does not any longer retry a bad password given
+ as option to ssh:connect et al.
+ Own Id: OTP-13674 Aux Id: TR-HU92273
+ Removed possible hanging risk for a certain timing
+ sequence when communicating client and server executes on
+ the same node.
+ Own Id: OTP-13715 Utility function that starts the applications
+
+
+
+
Stops the
Unicode filenames are supported if the emulator and the underlaying OS support it. See section DESCRIPTION in the
-
The shell and the cli both support unicode.
diff --git a/lib/ssh/doc/src/ssh_channel.xml b/lib/ssh/doc/src/ssh_channel.xml index 907b0b3bec..7b598494f7 100644 --- a/lib/ssh/doc/src/ssh_channel.xml +++ b/lib/ssh/doc/src/ssh_channel.xml @@ -139,7 +139,7 @@ enters the+ Upgrade of an established client connection could crash + because the ssh client supervisors children had wrong + type. This is fixed now.
++ Own Id: OTP-13782 Aux Id: seq13158
++ Partly checks the public key early in public key + authorization
++ Own Id: OTP-13847 Aux Id: + defensics-ssh3.1.0-190243,205277,219318
++ Corrected handling of SHA for ECDSA (Elliptic curve + public keys)
++ Own Id: OTP-13850 Aux Id: defensics-ssh3.1.0-214168
++ Problems found by test suites as well as by + Codenomicon/Defensics fixed: - reduce max random padding + to 15 bytes (Codenomicon/Defensics) - inclomplete pdu + handling (Codenomicon/Defensics) - badmatch in test suite + - non-blocking send fixes deadlock in + ssh_connection_SUITE:interrupted_send
++ Own Id: OTP-13854
++ Caller is now notified when a tcp close is received.
++ Own Id: OTP-13859 Aux Id: seq13177
++ Use application:ensure_all_started/2 instead of + hard-coding deps
++ Own Id: OTP-13843 Aux Id: PR-1147
++ Handle all possible exit values that should be + interpreted as {error, closed}. Failing to do so could + lead to unexpected crashes for users of the ssh + application.
++ Own Id: OTP-13932 Aux Id: seq13189
++ Intermittent ssh ERROR REPORT mentioning + nonblocking_sender
++ Own Id: OTP-13953 Aux Id: seq13199
++ If a client illegaly sends an info-line and then + immediatly closes the TCP-connection, a badmatch + exception was raised.
++ Own Id: OTP-13966
++ Re-negotiation problems with OpenSSH client solved.
++ Own Id: OTP-13972
+When
If the option value is has an
If the
+ A file read with an sftp client could loose data if the + packet_size is set to larger than 64k. This is corrected + now in such a way that the packet_size is silently + lowered if there is a risk for data loss.
++ Own Id: OTP-13857 Aux Id: ERL-238, OTP-13858
++ When user defined SSH shell REPL process exits with + reason normal, the SSH channel callback module should + report successful exit status to the SSH client. This + provides simple way for SSH clients to check for + successful completion of executed commands. (Thanks to + isvilen)
++ Own Id: OTP-13905 Aux Id: PR-1173
+
+ Extended the option
+ Own Id: OTP-13887 Aux Id: OTP-13888
+Comment: Defines hmac-sha2-256 and hmac-sha2-512
+ +When
If the
If the
If the
IP version to use.
Sets the user directory, that is, the directory containing
When
If the option value is has an
If the
This option guides the
If the
The option can be given in three different forms as seen above:
+
-module(ssh_echo_server).
--behaviour(ssh_subsystem).
+-behaviour(ssh_daemon_channel).
-record(state, {
n,
id,
--
cgit v1.2.3
From 5d560441709eb1faa6a223b237da65f1d70da6d2 Mon Sep 17 00:00:00 2001
From: Hans Nilsson
Date: Wed, 8 Mar 2017 18:34:43 +0100
Subject: ssh: documents ssh:daemon_info/1
---
lib/ssh/doc/src/ssh.xml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
(limited to 'lib/ssh/doc')
diff --git a/lib/ssh/doc/src/ssh.xml b/lib/ssh/doc/src/ssh.xml
index f6e26f5ee8..1f07e826ce 100644
--- a/lib/ssh/doc/src/ssh.xml
+++ b/lib/ssh/doc/src/ssh.xml
@@ -726,9 +726,10 @@
- daemon_info(Daemon) -> {ok, [{port,Port}]} | {error,Error}
+ daemon_info(Daemon) -> {ok, [DaemonInfo]} | {error,Error}
Get info about a daemon
+ DaemonInfo = {port,Port::pos_integer()} | {listen_address, any|ip_address()} | {profile,atom()}
Port = integer()
Error = bad_daemon_ref
--
cgit v1.2.3
From 26c3cd82529836cb5b6eefbf7f92f318fd91f847 Mon Sep 17 00:00:00 2001
From: Rickard Green
Date: Fri, 10 Mar 2017 15:00:46 +0100
Subject: Update copyright year
---
lib/ssh/doc/src/ssh.xml | 2 +-
lib/ssh/doc/src/using_ssh.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
(limited to 'lib/ssh/doc')
diff --git a/lib/ssh/doc/src/ssh.xml b/lib/ssh/doc/src/ssh.xml
index f6e26f5ee8..604b9f5bbb 100644
--- a/lib/ssh/doc/src/ssh.xml
+++ b/lib/ssh/doc/src/ssh.xml
@@ -4,7 +4,7 @@
- 2004 2016
+ 2004 2017
Ericsson AB. All Rights Reserved.
diff --git a/lib/ssh/doc/src/using_ssh.xml b/lib/ssh/doc/src/using_ssh.xml
index 864378b640..ab307624e6 100644
--- a/lib/ssh/doc/src/using_ssh.xml
+++ b/lib/ssh/doc/src/using_ssh.xml
@@ -5,7 +5,7 @@
2012
- 2016
+ 2017
Ericsson AB. All Rights Reserved.
--
cgit v1.2.3
From 4d658008be5a08ddadbe75ebadb9ef124436b76e Mon Sep 17 00:00:00 2001
From: Erlang/OTP
Date: Tue, 14 Mar 2017 15:59:23 +0100
Subject: Prepare release
---
lib/ssh/doc/src/notes.xml | 80 +++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 80 insertions(+)
(limited to 'lib/ssh/doc')
diff --git a/lib/ssh/doc/src/notes.xml b/lib/ssh/doc/src/notes.xml
index 1837350284..02a39f030c 100644
--- a/lib/ssh/doc/src/notes.xml
+++ b/lib/ssh/doc/src/notes.xml
@@ -30,6 +30,86 @@
notes.xml
+Ssh 4.4.1
+
+ Fixed Bugs and Malfunctions
+
+ -
+
+ Fix bug when opening connections. If the tcp setup
+ failed, that would in some cases not result in an error
+ return value.
+
+ Own Id: OTP-14108
+
+ -
+
+ Reduce information leakage in case of decryption errors.
+
+ Own Id: OTP-14109
+
+ -
+
+ The key exchange algorithm
+ diffie-hellman-group-exchange-sha* has a server-option
+ {dh_gex_limits,{Min,Max}} . There was a hostkey
+ signature validation error on the client side if the
+ option was used and the Min or the Max
+ differed from the corresponding values obtained from the
+ client.
+
+ This bug is now corrected.
+
+ Own Id: OTP-14166
+
+ -
+
+ The sftpd server now correctly uses root_dir and
+ cwd when resolving file paths if both are
+ provided. The cwd handling is also corrected.
+
+ Thanks to kape1395!
+
+ Own Id: OTP-14225 Aux Id: PR-1331, PR-1335
+
+ -
+
+ Ssh_cli used a function that does not handle non-utf8
+ unicode correctly.
+
+ Own Id: OTP-14230 Aux Id: ERL-364
+
+
+
+
+
+ Improvements and New Features
+
+ -
+
+ The implementation of the key exchange algorithms
+ diffie-hellman-group-exchange-sha* are optimized, up to a
+ factor of 11 for the slowest ( = biggest and safest)
+ group size.
+
+ Own Id: OTP-14169 Aux Id: seq-13261
+
+ -
+
+ The ssh host key fingerprint generation now also takes a
+ list of algorithms and returns a list of corresponding
+ fingerprints. See
+ public_key:ssh_hostkey_fingerprint/2 and the
+ option silently_accept_hosts in
+ ssh:connect .
+
+ Own Id: OTP-14223
+
+
+
+
+
+
Ssh 4.4
Fixed Bugs and Malfunctions
--
cgit v1.2.3
From eeac5af66b94596ba9a6c765c5f30383f7ed117a Mon Sep 17 00:00:00 2001
From: Hans Nilsson
Date: Fri, 17 Mar 2017 13:23:59 +0100
Subject: ssh: remove from doc
---
lib/ssh/doc/src/ssh.xml | 15 ---------------
1 file changed, 15 deletions(-)
(limited to 'lib/ssh/doc')
diff --git a/lib/ssh/doc/src/ssh.xml b/lib/ssh/doc/src/ssh.xml
index 1f07e826ce..968983c862 100644
--- a/lib/ssh/doc/src/ssh.xml
+++ b/lib/ssh/doc/src/ssh.xml
@@ -243,21 +243,6 @@
Peer is in the format of {Host,Port} .
This option will be removed in OTP 20, but is kept for compatibility. It is ignored if
- the preferred
Sets the preferred public key algorithm to use for user
- authentication. If the preferred algorithm fails,
- the other algorithm is tried. If
List of user (client) public key algorithms to try to use.
-- cgit v1.2.3 From 19427107ca9305a931dcaea8c2134017aa385fbd Mon Sep 17 00:00:00 2001 From: Erlang/OTP+ ssh:daemon_info/1 crashed if the listening IP was not + 'any'
++ Own Id: OTP-14298 Aux Id: seq13294
+Sets a time-out on a connection when no channels are active.
+ Defaults to
Provide a fun to implement your own logging of the SSH message SSH_MSG_DEBUG. The last three parameters are from the message, see RFC4253, section 11.3. The
RSA and DSA host keys are supported and are +
RSA, DSA and ECDSA host keys are supported and are
expected to be found in files named
Starts a server listening for SSH connections on the given
port. If the
Please note that by historical reasons both the
The rules for handling the two address passing options are:
+Options:
The rules for handling the two address passing options are:
Options:
-- cgit v1.2.3 From 83e20c62057ebc1d8064bf57b01be560cd244e1d Mon Sep 17 00:00:00 2001 From: Raimo Niskanen+ The internal handling of SSH options is re-written.
++ Previously there were no checks if a client option was + given to a daemon or vice versa. This is corrected now. + If your code has e.g. a client-only option in a call to + start a daemon, the call will fail.
++ *** POTENTIAL INCOMPATIBILITY ***
++ Own Id: OTP-12872
++ Modernization of diffie-hellman algorithms. Removed an + outdated weak algorithm and added stronger replacements + to keep interoperability with other ssh clients and + servers. The default ordering is also adjusted.
+
+ Retired: key-exchange
+ Added: key-exchange
+ *** POTENTIAL INCOMPATIBILITY ***
++ Own Id: OTP-14110
++ Modernized internal representation of sftp by use of + maps.
++ Own Id: OTP-14117
++ The draft-ietf-curdle-ssh-ext-info-05 and + draft-ietf-curdle-rsa-sha2-05 are (partially) + implemented.
+
+ The extension
+ Own Id: OTP-14193
++ Ssh:connect, ssh:shell and ssh:start_channel now accept + an IP-tuple as Host destination argument.
++ Own Id: OTP-14243
+
+ The function
+ Own Id: OTP-14259
+
+ Removed the option
+ *** POTENTIAL INCOMPATIBILITY ***
++ Own Id: OTP-14263
+
+ The ssh application is refactored regarding daemon
+ starting. The resolution of contradicting
+ *** POTENTIAL INCOMPATIBILITY ***
++ Own Id: OTP-14264
++ The supervisor code is refactored. The naming of + listening IP-Port-Profile tripples are slightly changed + to improve consistency in strange corner cases as + resolved by OTP-14264
++ Own Id: OTP-14267 Aux Id: OTP-14266
+
+ The
+ Own Id: OTP-14312
+- The internal handling of SSH options is re-written.
-- Previously there were no checks if a client option was - given to a daemon or vice versa. This is corrected now. - If your code has e.g. a client-only option in a call to - start a daemon, the call will fail.
-- *** POTENTIAL INCOMPATIBILITY ***
-- Own Id: OTP-12872
-- Modernization of diffie-hellman algorithms. Removed an - outdated weak algorithm and added stronger replacements - to keep interoperability with other ssh clients and - servers. The default ordering is also adjusted.
-
- Retired: key-exchange
- Added: key-exchange
- *** POTENTIAL INCOMPATIBILITY ***
-- Own Id: OTP-14110
-- Modernized internal representation of sftp by use of - maps.
-- Own Id: OTP-14117
-- The draft-ietf-curdle-ssh-ext-info-05 and - draft-ietf-curdle-rsa-sha2-05 are (partially) - implemented.
-
- The extension
- Own Id: OTP-14193
-- Ssh:connect, ssh:shell and ssh:start_channel now accept - an IP-tuple as Host destination argument.
-- Own Id: OTP-14243
-
- The function
- Own Id: OTP-14259
-
- Removed the option
- *** POTENTIAL INCOMPATIBILITY ***
-- Own Id: OTP-14263
-
- The ssh application is refactored regarding daemon
- starting. The resolution of contradicting
- *** POTENTIAL INCOMPATIBILITY ***
-- Own Id: OTP-14264
-- The supervisor code is refactored. The naming of - listening IP-Port-Profile tripples are slightly changed - to improve consistency in strange corner cases as - resolved by OTP-14264
-- Own Id: OTP-14267 Aux Id: OTP-14266
-
- The
- Own Id: OTP-14312
-Comma-separated string that determines which
+ authentication methods that the client shall support and
+ in which order they are tried. Defaults to
+
Provides a username. If this option is not given,
Provides a password for password authentication. @@ -307,6 +317,7 @@ password, if the password authentication method is attempted.
Module implementing the behaviour
If
Note that the client is free to use any order and to exclude methods.
List of user (client) public key algorithms to try to use.
-The default value is
-
The default value is the
If there is no public key of a specified type available, the corresponding entry is ignored. + Note that the available set is dependent on the underlying cryptolib and current user's public keys.
-If there is no public key of a specified type available, the corresponding entry is ignored.
+ The internal handling of SSH options is re-written.
++ Previously there were no checks if a client option was + given to a daemon or vice versa. This is corrected now. + If your code has e.g. a client-only option in a call to + start a daemon, the call will fail.
++ *** POTENTIAL INCOMPATIBILITY ***
++ Own Id: OTP-12872
++ Modernization of key exchange algorithms. See + draft-ietf-curdle-ssh-kex-sha2 for a discussion.
++ Removed an outdated weak algorithm and added stronger + replacements to keep interoperability with other modern + ssh clients and servers. The default ordering of the + algorithms is also adjusted.
+
+ Retired: The nowadays unsecure key-exchange
+
+ Added: The new stronger key-exchange
+
+ The questionable [RFC 6194] sha1-based algorithms
+
+ *** POTENTIAL INCOMPATIBILITY ***
++ Own Id: OTP-14110
++ Modernized internal representation of sftp by use of + maps.
++ Own Id: OTP-14117
+
+ The Extension Negotiation Mechanism and the extension
+
+ The related draft-ietf-curdle-rsa-sha2-05 is implemented
+ and introduces the signature algorithms
+
+ Own Id: OTP-14193
+
+ The functions
+ Own Id: OTP-14243
+
+ The function
+ Own Id: OTP-14259
+
+ Removed the option
+ *** POTENTIAL INCOMPATIBILITY ***
++ Own Id: OTP-14263
+
+ The SSH application is refactored regarding daemon
+ starting. The resolution of contradicting
+ *** POTENTIAL INCOMPATIBILITY ***
++ Own Id: OTP-14264
++ The supervisor code is refactored. The naming of + listening IP-Port-Profile triples are slightly changed to + improve consistency in strange corner cases as resolved + by OTP-14264
++ Own Id: OTP-14267 Aux Id: OTP-14266
+
+ The
+ Own Id: OTP-14312
++ Added test cases for IETF-CURDLE Extension Negotiation + (ext-info)
++ Own Id: OTP-14361
+
+ Testcases for IETF-CURDLE extension
+
+ Own Id: OTP-14362 Aux Id: OTP-14361
+
+ The option
+ Own Id: OTP-14399
+
+ Checks that a ECDSA public key (
+ Own Id: OTP-14410
+- The internal handling of SSH options is re-written.
-- Previously there were no checks if a client option was - given to a daemon or vice versa. This is corrected now. - If your code has e.g. a client-only option in a call to - start a daemon, the call will fail.
-- *** POTENTIAL INCOMPATIBILITY ***
-- Own Id: OTP-12872
-- Modernization of key exchange algorithms. See - draft-ietf-curdle-ssh-kex-sha2 for a discussion.
-- Removed an outdated weak algorithm and added stronger - replacements to keep interoperability with other modern - ssh clients and servers. The default ordering of the - algorithms is also adjusted.
-
- Retired: The nowadays unsecure key-exchange
-
- Added: The new stronger key-exchange
-
- The questionable [RFC 6194] sha1-based algorithms
-
- *** POTENTIAL INCOMPATIBILITY ***
-- Own Id: OTP-14110
-- Modernized internal representation of sftp by use of - maps.
-- Own Id: OTP-14117
-
- The Extension Negotiation Mechanism and the extension
-
- The related draft-ietf-curdle-rsa-sha2-05 is implemented
- and introduces the signature algorithms
-
- Own Id: OTP-14193
-
- The functions
- Own Id: OTP-14243
-
- The function
- Own Id: OTP-14259
-
- Removed the option
- *** POTENTIAL INCOMPATIBILITY ***
-- Own Id: OTP-14263
-
- The SSH application is refactored regarding daemon
- starting. The resolution of contradicting
- *** POTENTIAL INCOMPATIBILITY ***
-- Own Id: OTP-14264
-- The supervisor code is refactored. The naming of - listening IP-Port-Profile triples are slightly changed to - improve consistency in strange corner cases as resolved - by OTP-14264
-- Own Id: OTP-14267 Aux Id: OTP-14266
-
- The
- Own Id: OTP-14312
-- Added test cases for IETF-CURDLE Extension Negotiation - (ext-info)
-- Own Id: OTP-14361
-
- Testcases for IETF-CURDLE extension
-
- Own Id: OTP-14362 Aux Id: OTP-14361
-
- The option
- Own Id: OTP-14399
-
- Checks that a ECDSA public key (
- Own Id: OTP-14410
-See the text at the description of
Following the internet de-facto standard, the cipher and mac algorithm AEAD_AES_128_GCM is selected when the cipher aes128-gcm@openssh.com is negotiated. The cipher and mac algorithm AEAD_AES_256_GCM is selected when the cipher aes256-gcm@openssh.com is negotiated.
-See the text at the description of
Except
+Deviations:
+Implemented are:
+Tell the server that the client accepts extension negotiation. See
+
Currently implemented extension is
Default value is
Module implementing the behaviour
Send a list of extensions to the client if the client has asked for it. See
+
Currently implemented extension is sending
Default value is
Module implementing the behaviour The time-out is passed to the There are two ways to set a timeout for the underlying ssh connection: The value defaults to
+ The internal handling of SSH options is re-written.
+ Previously there were no checks if a client option was
+ given to a daemon or vice versa. This is corrected now.
+ If your code has e.g. a client-only option in a call to
+ start a daemon, the call will fail.
+ *** POTENTIAL INCOMPATIBILITY ***
+ Own Id: OTP-12872
+ Modernization of key exchange algorithms. See
+ draft-ietf-curdle-ssh-kex-sha2 for a discussion.
+ Removed an outdated weak algorithm and added stronger
+ replacements to keep interoperability with other modern
+ ssh clients and servers. The default ordering of the
+ algorithms is also adjusted.
+ Retired: The nowadays unsecure key-exchange
+
+ Added: The new stronger key-exchange
+
+ The questionable [RFC 6194] sha1-based algorithms
+
+ *** POTENTIAL INCOMPATIBILITY ***
+ Own Id: OTP-14110
+ Modernized internal representation of sftp by use of
+ maps.
+ Own Id: OTP-14117
+ The Extension Negotiation Mechanism and the extension
+
+ The related draft-ietf-curdle-rsa-sha2-05 is implemented
+ and introduces the signature algorithms
+
+ Own Id: OTP-14193
+ The 'timeout' and 'connect_timeout' handling in
+ ssh_sftp:start_channel documentation is clarified.
+ Own Id: OTP-14216
+ The functions
+ Own Id: OTP-14243
+ The function
+ Own Id: OTP-14259
+ Removed the option
+ *** POTENTIAL INCOMPATIBILITY ***
+ Own Id: OTP-14263
+ The SSH application is refactored regarding daemon
+ starting. The resolution of contradicting
+ *** POTENTIAL INCOMPATIBILITY ***
+ Own Id: OTP-14264
+ The supervisor code is refactored. The naming of
+ listening IP-Port-Profile triples are slightly changed to
+ improve consistency in strange corner cases as resolved
+ by OTP-14264
+ Own Id: OTP-14267 Aux Id: OTP-14266
+ The
+ Own Id: OTP-14312
+ Added test cases for IETF-CURDLE Extension Negotiation
+ (ext-info)
+ Own Id: OTP-14361
+ Testcases for IETF-CURDLE extension
+
+ Own Id: OTP-14362 Aux Id: OTP-14361
+ The option
+ Own Id: OTP-14399
+ Checks that a ECDSA public key (
+ Own Id: OTP-14410
+
+
+
+