1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440
|
ChangeLog of JSch
====================================================================
Last modified: Thu May 4 02:11:44 UTC 2006
Changes since version 0.1.27:
- bugfix: ChannelSftp.localAbsolutePath did not work correctly. FIXED.
- bugfix: ChannelSftp.chmod did not work for directory. FIXED.
- bugfix: ProxyHTTP had a bug in processing HTTP headers. FIXED.
- bugfix: messages before server's version string should be ignored. FIXED.
- feature: Environment Variable Passing.
Changes since version 0.1.26:
- bugfix: there was a session crash bug. That occurrence is rare, but
depends on the thread scheduling. FIXED.
- bugfix: problems in generating remote/local absolute paths on sftp. FIXED.
- bugfix: problems in handling cancel operations for sftp. FIXED.
- bugfix: ChannelX11s were not terminated for a wrong cookie. FIXED.
- bugfix: NoSuchAlgorithmException should be thrown if JCE is not
accessible. FIXED.
- bugfix: ProxyHTTP should check the return code from proxy. FIXED.
- bugfix: server's version string should be checked carefully. FIXED.
- feature: some more improvements on sftp uploading.
- feature: 'getUserName' method is added to Session class.
Changes since version 0.1.25:
- bugfix: infinite loop/hang on connection at unexpected error during
key-exchanging operation. FIXED
- bugfix: delays on sftp uploading. FIXED
- bugfix: failed to purge a host-key from its repository in some case. FIXED.
- feature: SOCKS4 proxy
Changes since version 0.1.24:
- bugfix: remote port forwarding is not established. FIXED.
- bugfix: failed to parse known_hosts file if it has a long public key blob.
FIXED.
- bugfix: sftp put/get operations keep failing. FIXED.
- bugfix: ChannelShell.setXForwarding always set xforwarding to be true. FIXED.
- change: ChannelShell.setPty is added.
- change: Proxy interface is free from session object.
- change: added examples/ScpToNoneCipher.java to demonstrate NONE Cipher switching.
- feature: added NONE Cipher switching support.
- feature: timeout check will be enabled for proxy connections.
Changes since version 0.1.23:
- bugfix: there was resource leak problems in closing local port forwardings.
FIXED.
- bugfix: there was a session crash problems in using aes-cbc cipher. FIXED.
- change: ChannelSession.setPtySize was redefined.
- feature: added SocketFactory for remote port forwarding.
Session.setPortForwardingR(int rport, String host, int lport,
SocketFactory sf)
- feature: added ServerSocketFactory for local port forwarding.
Session.setPortForwardingL(String boundaddress,
int lport, String host, int rport,
ServerSocketFactory ssf)
Changes since version 0.1.22:
- bugfix: there was a freeze problem at fails on key-exchanging. FIXED.
- bugfix: race-condition forcefully disconnects session in closing channels.
FIXED.
Changes since version 0.1.21:
- bugfix: there is a bug in read() method implementation for the
input-stream returned from ChannelSftp.get(). FIXED.
- bugfix: at fail on requesting for the remote port forwarding,
an exception should be thrown. FIXED.
- bugfix: SSH_MSG_CHANNEL_OPEN request for the X11 forwarding should not
be accepted if clients don not expect it. FIXED.
- bugfix: there is a problem in transferring large data(mote than 1GB)
to sshd from recent OpenSSH(3.6.1 or later). FIXED.
For security concerns, those sshd will re-key periodically and
jsch had failed to handle it.
- bugfix: 'exec', 'shell' and 'sftp' channels will fail if the acceptable
packet size by remote sshd is not so large. FIXED.
- bugfix: there are problems in 'InputStream ChannelSftp.get(String)'
and 'OutputStream put(String)'. FIXED.
- feature: added boolean flag 'dontclose' to
* setInputStream(),
* setOutputStream() and
* setExtOutputStream()
methods of Channel class.
- feature: added 'com.jcraft.jsch.ChannelSubsystem'
- feature: allowed to control the compression level in the packet compression.
Refer to 'examples/Compression.java'.
- change: modified 'com/jcraft/jsch/jce/KeyPairGenRSA.java' to be complied
on JDK 1.2.
- change: 'examples/ScpTo.java' and 'examples/ScpFrom.java' will use
'long' type for the file size instead of 'int'.
- change: 'Identity.getSignature' method will not expect 'session'.
- change: while waiting for socket connection establishment, Thread.join
will be used instead of Thread.sleep.
Changes since version 0.1.20:
- known issue: there are problems in 'InputStream ChannelSftp.get(String)'
and 'OutputStream put(String)'. They will be re-implemented
in the next release.
- bugfix: EOF packets should not be sent twice. This bug had crashed
the session on every channel close. FIXED.
- bugfix: at the fail on opening connection to remote sshd,
a misleading exception "invalid server's version string"
had been thrown. FIXED.
- bugfix: fixed a bug in hadling the size of remote channel window.
- bugfix: channels should not be closed even if EOF is received. FIXED.
- bugfix: fixed bugs in file name globing on sftp.
- change: to transfer packets efficiently, the size of internal buffer
for each channel has been increased.
- change: ChannelSftp.ls will return a vector of
com.jcraft.jsch.ChannelSftp.LsEntry. Sorry for inconveniences.
- feature: added ForwardedTCPIPDaemon. Refer to 'examples/Daemon.java',
which demonstrates to provide network services like inetd.
- feature: ChannelExec.setPty() method to request for assigning pseudo tty.
- feature: added ciphers "aes128-cbc", "aes192-cbc" and "aes256-cbc".
Refer to 'examples/AES.java'.
- feature: local port-forwarding settings can be dynamically deleted
by the bound address.
- feature: added 'Channel.isClosed()'. Channel.getExitStatus() should be
invoked after Channel.isClosed()==true.
Changes since version 0.1.19:
- ClassCastException while calling ChannelExec.finalize() method. FIXED.
Thanks to wswiatek at ais dot pl.
Changes since version 0.1.18:
- fixed problems related to thread-safety.
Thanks to Eric Meek at cs dot utk dot edu.
- At the lost of the network connectivity to the remote SSHD, clients
connected to the local port were never made aware of the
disconnection. FIXED.
- fixed confusions in handling EOFs from local input stream and
the input stream for remote process.
- 'com.jcraft.jsch.jce.AES128CBC' is added, but it is not be functional in
this release. It will work in the next release.
- Some sshd(Foxit-WAC-Serve) waits for SSH_MSG_NEWKEYS request before
sending it. FIXED.
- fixed a problem in connecting to Cisco Devices.
Thanks to Jason Jeffords at comcast dot net.
- changed the method 'add' of 'HostKeyRepository' interface.
- 'UIKeyborarInteracetive' will ignore empty prompt by sshd.
- added 'sendIgnore()' method to 'Session' class.
- added '-p' for scp command in 'examples/ScpTo.java' to preserve
modification times, access times, and modes from the original file.
Changes since version 0.1.17:
- added 'com.jcraft.jsch.HostKeyRepository' interface.
It will allow you to handle host keys in your own repository
(for example, RDB) instead of using 'known_hosts' file.
- added methods to get the finger-print of host keys.
refer to 'examples/KnownHosts.java'.
- improved 'known_hosts' file handling.
- comment lines will be kept.
- SSH1 host keys will be kept.
- each hostname can have multiple host keys.
- fixed a crash bug in processing private keys which have too long key-bits.
Changes since version 0.1.16:
- 'com.jcraft.jsch.jce.DHG1' and 'com.jcraft.jsch.jce.DHGEX' are moved to
'com.jcraft.jsch' package.
- added APIs to handle hostkeys included in 'known_hosts',
JSch.getHostKeys(),
JSch.removeHostKey()
- allowing to set timeout value in opening sockets,
Session.connect(int timeout)
Changes since version 0.1.15:
- adding support of setting mtime for remote files on sftp channel.
- setKnownHosts method of JSch class will accept InputStream.
- implementation of Basic password authentication for HTTP proxy.
- fixed a bug in checking which ssh protocol version remote sshd supports
- SSH_MSG_CHANNEL_OPEN_FAILURE will be handled correctly.
- methods in SftpATTRS class has been public.
- working around SIGBLOB bug hidden in older sshd.
Changes since version 0.1.14:
- fixed a crash bug in accepting keep-alive messages.
- the parent directory of 'known_hosts' file will be created
if it does not exist.
- the Subsystem channel support was removed.
Changes since version 0.1.13:
- added 'setClientVersion' method to Session class.
- fixed hung-up problem on SftpChannel in connecting to
the sshd, which does not support sftp.
- fixed OutOfMemory exception problem in decrypting a private key
with bad passphrase.
- fixed hung-up problem in communicating with the sshd,
whose window size is small.
- RuntimeExceptions will be thrown from jsch APIs.
- SSH_MSG_CHANNEL_SUCCESS and SSH_MSG_CHANNEL_FAILURE requests
have been supported.
Changes since version 0.1.12:
- added the partial authentication support.
- allowing to change the passphrase of a private key file
instead of creating a new private key.
- added 'examples/ChangePassphrase.java'
- the interface 'UIKeyboardInteractive' has been modified.
Changes since version 0.1.11:
- RSA keypair generation.
- added the method 'getFingerPrint' to KeyPair class,
which will return the finger print of the public key.
- fixed a bug in generating non-ciphered private key.
Changes since version 0.1.10:
- fixed a bug in the password authentication, sneaked in
0.1.9. By this bug, the password authentication had failed every time.
Changes since version 0.1.9:
- username and password can be in UTF-8 encoding.
- DSA keypair generation.
- added 'examples/KeyGen.java', which demonstrates
the DSA keypair generation.
Changes since version 0.1.8:
- fixed crash problems on the local port forwarding.
- fixed crash problems on the remote port forwarding.
- added setErrStream() and getErrStream() to ChannelExec.
- added keyboard-interactive authentication support.
- modified TripleDESCBC to support IBM's JDK 1.4.1.
- added 'examples/UserAuthKI.java', which demonstrates keyboard-interactive
authentication.
Changes since version 0.1.7:
- added APIs for sftp resume downloads and uploads.
The author greatly appreciates
elpernotador(webmaster at unlix dot com dot ar),
who motivated him to hack this functionality.
- 'examples/Sftp.java' demonstrates sftp resume functionality.
Please refer to "put-resume", "put-append", "get-resume" and
"get-append" command.
- added the support of 'window-change' request.
- fixed a freeze bug in 'Inputstream get(String src)' method of 'ChannelSftp'
class.
Changes since version 0.1.6:
- added 'int getExitStatus()' method to 'Channel' class.
- fixed crash bugs in closing channels for port forwarding.
- fixed glitches in managing forwarded ports.
Changes since version 0.1.5:
- fixed crash bugs in port forwarding.
- modified to use "ssh-rsa" for key-exchanging by the default.
- the port forwarding setting can be canceled dynamically.
- fixed a freeze bug in getting an empty file on sftp channel.
Changes since version 0.1.4:
- fixed a bug in managing local window size.
The local window should be consumed by CHANNEL_EXTENDED_DATA packet.
- checking the availability of the ssh session in opening channels.
In some case, ssh session had been freezed.
- java.io.File.separator will be refereed in generating local pathname
on sftp channel.
- absolute local pathname will be handled correctly on sftp channel.
Changes since version 0.1.3:
- fixed a serious bug, which had leaked resources related to
ChannelExec.
- added the older SFTP protocol(version 0, 1, 2) support.
- fixed a problem in the authentication step for FSecure's sshd.
- fixed a bug, which had broken Diffie-Hellman key exchange in some case.
- implemented the file name globbing for local files on sftp session.
- fixed a bug in the file name globbing.
- added an interface 'SftpProgressMonitor'.
- modified 'examples/Sftp.java' to demonstrate displaying progress-bar
in transferring files.
Changes since version 0.1.2:
- modified 'build.xml' to allow Ant users to compile jsch with debug
support (i.e. line-number tables) by overriding the property
javac.debug on the command line.
- added a property 'StrictHostKeyChecking'.
- added 'UserAuthNone' class to request a list of authentication methods on
remote sshd.
- channels will be managed in each sessions.
- added 'ChannelSubsystem', which allows users to use their own
implementations for subsystems.
- added 'isEOF()' method to 'Channel' class.
- supported key pair files in DOS file format.
Changes since version 0.1.1:
- added the file name globbing support on sftp session.
- fixed a bug in the public key authentication.
When there was not a public key in ~/.ssh/, that problem occurred.
- improved the 'setTimeout' method.
- fixed a typo in 'LICENSE.txt'
Changes since version 0.1.0:
- added 'rekey' method to 'Session' class for key re-exchanging.
- added 'rekey' and 'compression' command to 'examples/Sftp.java'.
- added new 'get' and 'put' methods to 'ChannelSftp'.
Those methods will operate I/O streams.
- methods in 'ChannelSftp' will throw 'SftpException'
- 'ChannelSftp.Ssh_exp_name' is added for the output of 'ls'.
Thanks to Graeme Vetterlein.
- added 'setTimeout' and 'getTimeout' methods to 'Session' class.
- guess will be done in the algorithm negotiation step.
- FSecure's DSA private key has been supported partially.
- hostkeys will be saved into 'known_hosts' file.
- fixed a bug in 'Util.toBase64' method.
- 'Identity' will reject unrecognized keys.
- 'build.xml' will check if jzlib is available or not.
Thanks to Stefan Bodewig.
- added javadoc target in 'build.xml'.
Thanks to Robert Anderson.
Changes since version 0.0.13:
- fixed a bug in connecting to Fsecure's sshd on Windows.
- the license is changed to BSD style.
Changes since version 0.0.12:
- fixed a bug in verifying DAS signatures.
- added 'SftpATTR' class, which allow you to get attributes of remote files on
sftp channel, and 'stat', 'lstat' method are added to 'ChannelSftp' class.
- added 'getInputStream' and 'getOutputStream' methods Channel class, which
return passive I/O streams.
- 'setIdentity' method is deleted from 'Session' class and
'addIdentity' method is added to 'JSch' class
- 'setUserName' method is deleted from 'Session' class and
'getSession' method of 'JSch' class is changed.
- 'isConnected' method is added to 'Session' class.
- 'UserInfo' interface is changed.
Changes since version 0.0.11:
- taking care of remote window size.
- adding 'disconnect' method to 'Channel' and 'Session' classes.
- signal sending support.
- 'mkdir' command for sftp.
- 'fromBase64' method has been moved to Util class and 'toBase64' method has
also been added to that class.
- 'KnownHosts' class for checking host-key in 'known_host' file.
- 'examples/KnownHosts.java' has been added.
- 'setUserName' and 'setPassword' methods have been added to Session class.
- 'UserInfo' interface has been changed.
- The implementation of compression has moved to 'com.jcraft.jsch.jcraft'
package.
- fixed a bug in handling 'SSH_MSG_CHANNEL_REQUET' request.
- fixed a bug in sending multiple requests on a single session.
Changes since version 0.0.10:
- Diffie-Hellman key exchange 'diffie-hellman-group1-sha1' is supported.
Refer to 'src/com/jcraft/jsch/jce/DHG1.java'.
Thanks to Mitsugu Kitano, whose feedback was very helpful.
- By the default, 'diffie-hellman-group1-sha1' will be used in the
key exchange step.
- The file attribute on 'SSH File Transfer Protocol' is supported.
Now, we can say JSch supports 'SSH File Transfer Protocol'.
- 'examples/Sftp.java' is updated.
'chgrp','chown','chmod' commands are supported.
Changes since version 0.0.9:
- SSH File Transfer Protocol is supported partially.
- 'examples/Sftp.java' is added.
This example is a tiny sftp command and supports 'cd','put','get','rm',etc.
- 'close' method is added to Channel interface.
- build.xml for examples is added.
Thanks to Ronald Broberg.
Changes since version 0.0.8:
- the tunneling through a SOCKS5 proxy is supported.
- 'examples/ScpFrom.java' is added.
- 'com.jcraft.jsch.UserInfo' interface is modified.
Changes since version 0.0.7:
- Packet comression is supported.
- 'examples/Compression.java' is added.
- JZlib is included.
Changes since version 0.0.6:
- RSA host key is supported.
- RSA public key authentication is supported.
Changes since version 0.0.5:
- DSA public key authentication is supported.
- examples/UserAuthPubKey.java is added.
- examples/ScpTo.java is added.
Changes since version 0.0.4:
- 3des-cbc is supported.
- hmac-sha1 is supported.
- hmac-md5-96 is supported.
- hmac-sha1-96 is supported.
Changes since version 0.0.3:
- port forwarding, similar to the -L option of SSH.
- examples/PortForwardingL.java is added.
- examples/StreamForwarding.java is added.
- examples/Exec.java is renamed as examples/Shell.java
- stream forwarding is added.
- ChannelSftp class is added for implementing filexfer.
- interfaces for jsch users are changed.
Changes since version 0.0.2:
- remote exec is supported.
- examples/Exec.java is added.
- build.xml and some scripts for Ant are added. (lbruand)
- Const class is added. (lbruand)
Changes since version 0.0.1:
- the tunneling via HTTP proxy is supported.
- port forwarding like option -R of ssh command.
the given port on the remote host will be forwarded to the given host
and port on the local side.
|