google-nomulus/third_party/java/jsch/v0_1_44_google/README.google
2016-03-01 17:59:16 -05:00

63 lines
2.7 KiB
Text

Project URL: http://www.jcraft.com/jsch
URL: http://downloads.sourceforge.net/project/jsch/jsch/0.1.44/jsch-0.1.44.zip?use_mirror=cdnetworks-us-1
Version: 0.1.44
License: BSD
License File: LICENSE
Description:
JSCH is a library for making SSH and SFTP connections from Java.
Local Modifications:
Added three new features and one backport. Default behavior is preserved if
they aren't used.
* Define global ThreadFactory instance. This allows the library to be used on
App Engine, which doesn't allow apps to call `new Thread()`. To do this, you
must override `JSch.threadFactory` with something from GAE's ThreadManager.
Another global is also provided to disable calls to `Thread#setName` which
always crash on GAE, regardless of ThreadFactory.
Files edited:
* JSch.java - Defined new `threadFactory` and `useThreadNames` fields.
* Util.java - Updated thread creation code.
* ChannelDirectTCPIP.java - Updated thread creation code.
* ChannelSubsystem.java - Updated thread creation code.
* ChannelShell.java - Updated thread creation code.
* Session.java - Updated thread creation code.
* ChannelForwardedTCPIP.java - Updated thread creation code.
* ChannelExec.java - Updated thread creation code.
* Multiple pending requests with SFTP. Disabled by default. Call
SftpChannel.setMaxPendingRequests(n) with n > 1 to enable (64 is a reasonable
value). Can provide speed improvements of 10-20x if Periscope is disabled,
and approximately 7x if Periscope is enabled and write flushing is disabled.
Files edited:
* ChannelSftp.java - Added alternate methods (fastGet, fastRead) that use
new algorithm. If feature is enabled, the local window
size will be set to Integer.MAX_VALUE, since flow
control is already handled by SFTP, and some servers
don't work well with smaller windows.
* Disable flushing of writes. Flushing is enabled by default. Call
Session.setFlushingEnabled(false) before connecting to disable. Due to
Periscope latency, flushing must be disabled to take advantage of multiple
pending requests.
Files edited:
* Session.java - Added simple getter/setter for flushingEnabled boolean.
* IO.java - Added optional flushingEnabled constructor arg. Disabled
flushing when flushingEnabled is false.
* Added support for diffie-hellman-group14-sha1 key exchange algorithm to
maintain connections to servers using upgraded OpenSSL.
Files edited:
* JSch.java - Added diffie-hellman-group14-sha1 to kex config.
* DHG14.java - Added, patched from version 0.1.46.
* jce/DH.java - Modified to support DH groups >1024 bits by ignoring
JDK<8 exception and testing length of keys.