Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 344469 - Use a newer version of Jsch
Summary: Use a newer version of Jsch
Status: RESOLVED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Releng (show other bugs)
Version: 3.7   Edit
Hardware: PC Linux
: P3 enhancement with 1 vote (vote)
Target Milestone: 3.7.2   Edit
Assignee: John Arthorne CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-05-02 10:58 EDT by Chris Aniszczyk CLA
Modified: 2012-01-23 09:24 EST (History)
11 users (show)

See Also:


Attachments
patch (1.00 KB, patch)
2011-12-13 13:44 EST, Kim Moir CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Aniszczyk CLA 2011-05-02 10:58:55 EDT
Jsch 0.1.44 has been out for awhile. I noticed the platform ships 0.1.41, it would be nice to ship a newer version to take advantage of fixes. The first step would be to create a CQ that piggybacks on the Orbit CQ.

https://dev.eclipse.org/ipzilla/show_bug.cgi?id=4729
Comment 1 Chris Aniszczyk CLA 2011-05-02 10:59:46 EDT
Szymon, I believe Team uses Jsch, correct?
Comment 2 Kim Moir CLA 2011-05-02 11:07:42 EDT
I assume this request is for a post 3.7 build because we are in 3.7 shutdown mode and the deadline has passed for Indigo IP requests?
Comment 3 Chris Aniszczyk CLA 2011-05-02 11:14:32 EDT
This would be for 3.7

It would be nice of rampdown mode would consider the possibility of updating third party libraries that are out of date but available in Orbit.
Comment 4 Kim Moir CLA 2011-05-02 11:38:24 EDT
Asking John for comment as this is an unusual request.   Chris are there specific bug fixes in the newer version of jsch that you are looking for?  I think at this point, we are only looking at fixing P1 or P2 defects.
Comment 5 Chris Aniszczyk CLA 2011-05-02 11:40:18 EDT
It's more of a convenience for us within Red Hat since we ship the latest version of libraries and have to patch Eclipse a bit if the latest library doesn't ship. More information can be found on this bug...

https://bugs.eclipse.org/bugs/show_bug.cgi?id=336874

One thing to note is that EGit/JGit also ships with the latest version of JSch.
Comment 6 John Arthorne CLA 2011-05-02 16:17:34 EDT
I don't support upgrading third party libraries during our release candidates unless there is a critical bug we experience ourselves that it will fix. We should release what we have developed and tested on during the main dev cycle. 

Note the version number change is small, but jsch does introduce new features with only third segment changes, and there are a number of new features added between 0.1.41 and 0.1.44.

FWIW the eGit feature specifies 0.1.37 or greater:

<import plugin="com.jcraft.jsch" version="0.1.37" match="compatible"/>

I have eGit/jGit installed right now and I only see one copy of jsch in my install. Since it is a small library, it wouldn't be too bad if there were multiple copies anyway.

We could consider it for early in 3.6.1 though.
Comment 7 Kim Moir CLA 2011-05-02 16:22:18 EDT
Szymon, you could open a CQ so that the library is approved for our use once 3.7.1 development begins?
Comment 8 Chris Aniszczyk CLA 2011-05-02 16:39:23 EDT
(In reply to comment #6)
> I don't support upgrading third party libraries during our release candidates
> unless there is a critical bug we experience ourselves that it will fix. We
> should release what we have developed and tested on during the main dev cycle. 
> 
> Note the version number change is small, but jsch does introduce new features
> with only third segment changes, and there are a number of new features added
> between 0.1.41 and 0.1.44.
> 
> FWIW the eGit feature specifies 0.1.37 or greater:
> 
> <import plugin="com.jcraft.jsch" version="0.1.37" match="compatible"/>
> 
> I have eGit/jGit installed right now and I only see one copy of jsch in my
> install. Since it is a small library, it wouldn't be too bad if there were
> multiple copies anyway.

Ah, that's a bug on our part. Our POM specific 0.1.4... sigh...

We needed it for the 'Corrupted MAC on input' ssh issue.

It would be nice to see in 3.7.1, however, I think we should evaluate looking at upgrading minor third party libraries during the RC cycle. Things like apache commons codec and jsch are generally low risk imho.

Thanks John!
Comment 9 Paul Webster CLA 2011-06-22 09:53:04 EDT
Ooops, https://dev.eclipse.org/ipzilla/show_bug.cgi?id=5294

PW
Comment 10 luc CLA 2011-06-27 04:09:05 EDT
Well, there is at least one bug concerning Jsch 0.1.41: it does not handle the new encryption scheme openssh uses to store private keys.
This does affect the Egit project, see https://bugs.eclipse.org/bugs/show_bug.cgi?id=326526.

This problem is really annoying. On Linux systems, we have to find non-standard programs to generate keys Eclipse+Jsch will understand, and these keys are less secure than the one standard programs generate now.
Comment 11 John Arthorne CLA 2011-12-13 11:20:41 EST
So... it looks like this is actually fixed, but not intentionally. Both our maintenance and Juno stream builds contain jsch 0.1.44 binaries and jsch 0.1.44 source bundle. However our map file still states jsch 0.1.41. I suspect the newer version is available in some repository at build time so the builder is just grabbing the newer one already. Since we have already been running with jsch 0.1.44 for awhile, I think we can safely just update the orbit.map to refer to jsch 0.1.44 and call this done. I can make this change.
Comment 12 John Arthorne CLA 2011-12-13 11:40:48 EST
(In reply to comment #11)
> So... it looks like this is actually fixed, but not intentionally. Both our
> maintenance and Juno stream builds contain jsch 0.1.44 binaries and jsch 0.1.44
> source bundle.

Sigh, correction it is 4.2 M4 and 4.1.2 M-build that already contain 0.1.44. However it still stands that we have been running with this for awhile in our Juno stream so I think it is worth doing in 3.x stream to be consistent.

Change in master:

http://git.eclipse.org/c/platform/eclipse.platform.releng.maps.git/commit/?id=1932f1dd4d2efe76b8ac5076ff260934aec4bde6

Change in R3_7_maintenance:

http://git.eclipse.org/c/platform/eclipse.platform.releng.maps.git/commit/?h=R3_7_maintenance&id=4da74fadb51166d8af215267ee3d1c11be39674e
Comment 13 Kim Moir CLA 2011-12-13 12:00:25 EST
The doc options file also needs to be updated as well as the sdk build.properties.  I'll take care of this in the R3_7_maintenance and master branches.
Comment 14 Kim Moir CLA 2011-12-13 13:44:54 EST
Created attachment 208330 [details]
patch
Comment 16 Martin Oberhuber CLA 2012-01-23 09:19:21 EST
For reference, changes since JSch-0.1.41 (which we had in Eclipse Platform so far) are in the JSch Changelog http://www.jcraft.com/jsch/ChangeLog - The next Platform Update to JSch-0.1.45 is discussed in bug 360663 :

Changes since version 0.1.43:
- bugfix: hmac-md5-96 and hmac-sha1-96 are broken. FIXED.
- bugfix: working around OOME in parsing broken data from the remote. FIXED.
- bugfix: failed to send very long command for exec channels. FIXED.
- bugfix: in some case, failed to get the response 
	  for remote port-forwarding request.  FIXED.
- feature: support for private keys ciphered with aes192-cbc and aes128-cbc.

	
Changes since version 0.1.42:
- bugfix: the remote window size must be in unsigned int.  FIXED.
- bugfix: support for EBCDIC environment.  FIXED.
- bugfix: data may be written to the closed channel.  FIXED.
- bugfix: NPE in closing channels.  FIXED.
- bugfix: the private key file may include garbage data before its header.  FIXED.
- bugfix: the session down may not be detected during the re-keying process.  FIXED.
- change: try keyboard-interactive auth with the given password if UserInfo is not given.
- change: working around the wrong auth method list sent by some SSHD 
          in the partial auth success.
- change: working around the CPNI-957037 Plain-text Recovery Attack.
- change: in searching for [host]:non-default port in known_hosts, 
          host:22 should be also checked.
- change: updating copyright messages; 2009 -> 2010

	
Changes since version 0.1.41:
- bugfix: making exec request during re-keying process will cause 
	  the dead lock for the session.                        FIXED.
          Many thanks for PanLi at Prominic dot NET and www.prominic.net, 
	  US based hosting company.  Without their testing JSch with
  	  hundreds of hosts and their bug reports, this problem 
	  was not fixed.
- change: updating copyright messages; 2008 -> 2009