Browse Source

Ensure that ssh authentication is retried only in JGit

JGit wants to control retries during ssh authentication. But JSch by
default already retries 6 times. Hence disable retries in JSch. Without
this the credentials provider isn't reset if e.g. wrong credentials are
specified.

Bug: 430210
Change-Id: I6fa726a14a84b06411e7010608c7a1e2bfb8bfe8
stable-3.3
Christian Halstrick 11 years ago committed by Matthias Sohn
parent
commit
fc9b1fbf6b
  1. 3
      org.eclipse.jgit/src/org/eclipse/jgit/transport/JschConfigSessionFactory.java

3
org.eclipse.jgit/src/org/eclipse/jgit/transport/JschConfigSessionFactory.java

@ -148,6 +148,9 @@ public abstract class JschConfigSessionFactory extends SshSessionFactory {
FS fs, String user, final String pass, String host, int port, FS fs, String user, final String pass, String host, int port,
final OpenSshConfig.Host hc) throws JSchException { final OpenSshConfig.Host hc) throws JSchException {
final Session session = createSession(hc, user, host, port, fs); final Session session = createSession(hc, user, host, port, fs);
// We retry already in getSession() method. JSch must not retry
// on its own.
session.setConfig("MaxAuthTries", "1"); //$NON-NLS-1$ //$NON-NLS-2$
if (pass != null) if (pass != null)
session.setPassword(pass); session.setPassword(pass);
final String strictHostKeyCheckingPolicy = hc final String strictHostKeyCheckingPolicy = hc

Loading…
Cancel
Save