Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 222178
Collapse All | Expand All

(-)src/org/eclipse/jsch/internal/core/ResponsiveSocketFactory.java (-2 lines)
Lines 50-57 Link Here
50
    // Null out the monitor so we don't hold onto anything
50
    // Null out the monitor so we don't hold onto anything
51
    // (i.e. the SSH2 session will keep a handle to the socket factory around
51
    // (i.e. the SSH2 session will keep a handle to the socket factory around
52
    monitor = new NullProgressMonitor();
52
    monitor = new NullProgressMonitor();
53
    // Set the socket timeout
54
    socket.setSoTimeout(timeout);
55
    return socket;
53
    return socket;
56
  }
54
  }
57
  
55
  
(-)src/org/eclipse/jsch/internal/core/Utils.java (+17 lines)
Lines 80-85 Link Here
80
    config.put("PreferredAuthentications", //$NON-NLS-1$ 
80
    config.put("PreferredAuthentications", //$NON-NLS-1$ 
81
        "gssapi-with-mic,publickey,password,keyboard-interactive"); //$NON-NLS-1$ 
81
        "gssapi-with-mic,publickey,password,keyboard-interactive"); //$NON-NLS-1$ 
82
    session.setConfig(config);
82
    session.setConfig(config);
83
    
84
    Preferences preferences=JSchCorePlugin.getPlugin().getPluginPreferences();
85
    String _interval=preferences.getString(IConstants.KEY_SERVERALIVEINTERVAL);
86
    try{
87
      int interval=Integer.parseInt(_interval);
88
      if(interval!=0){
89
        session.setServerAliveInterval(interval*1000);
90
        session.setServerAliveCountMax(3);
91
      }
92
      else{
93
        session.setServerAliveCountMax(0);
94
      }
95
    }
96
    catch(NumberFormatException e){
97
      // This exception must not be thrown.
98
    }
99
    
83
    return session;
100
    return session;
84
  }
101
  }
85
102
(-)src/org/eclipse/jsch/internal/core/IConstants.java (+4 lines)
Lines 28-33 Link Here
28
  
28
  
29
  public static final  String KEY_SSH2HOME="SSH2HOME"; //$NON-NLS-1$
29
  public static final  String KEY_SSH2HOME="SSH2HOME"; //$NON-NLS-1$
30
  public static final  String KEY_PRIVATEKEY="PRIVATEKEY"; //$NON-NLS-1$
30
  public static final  String KEY_PRIVATEKEY="PRIVATEKEY"; //$NON-NLS-1$
31
  public static final  String KEY_SERVERALIVEINTERVAL="SERVERALIVEINTERVAL"; //$NON-NLS-1$
31
32
32
  public static final  String PROXY_TYPE_SOCKS5="SOCKS5"; //$NON-NLS-1$
33
  public static final  String PROXY_TYPE_SOCKS5="SOCKS5"; //$NON-NLS-1$
33
  public static final  String PROXY_TYPE_HTTP="HTTP"; //$NON-NLS-1$
34
  public static final  String PROXY_TYPE_HTTP="HTTP"; //$NON-NLS-1$
Lines 40-45 Link Here
40
  
41
  
41
  public static final int SSH_DEFAULT_PORT=22;
42
  public static final int SSH_DEFAULT_PORT=22;
42
  
43
  
44
  public static final  String SERVERALIVEINTERVAL_DEFAULT="0"; //$NON-NLS-1$
45
46
  
43
  public final String PREF_USE_PROXY="proxyEnabled"; //$NON-NLS-1$
47
  public final String PREF_USE_PROXY="proxyEnabled"; //$NON-NLS-1$
44
  public final String PREF_PROXY_TYPE="proxyType"; //$NON-NLS-1$
48
  public final String PREF_PROXY_TYPE="proxyType"; //$NON-NLS-1$
45
  public final String PREF_PROXY_HOST="proxyHost"; //$NON-NLS-1$
49
  public final String PREF_PROXY_HOST="proxyHost"; //$NON-NLS-1$
(-)src/org/eclipse/jsch/internal/core/JSchProvider.java (-1 lines)
Lines 105-111 Link Here
105
        int port=session.getPort();
105
        int port=session.getPort();
106
        session=Utils.createSession(getJSch(), user, host, port);
106
        session=Utils.createSession(getJSch(), user, host, port);
107
        session.setUserInfo(ui);
107
        session.setUserInfo(ui);
108
        session.setTimeout(timeout);
109
        connect(session, timeout, monitor);
108
        connect(session, timeout, monitor);
110
        return;
109
        return;
111
      }
110
      }
(-)src/org/eclipse/jsch/internal/core/PreferenceInitializer.java (+1 lines)
Lines 34-39 Link Here
34
    IEclipsePreferences defaultNode=new DefaultScope().getNode(JSchCorePlugin.ID);
34
    IEclipsePreferences defaultNode=new DefaultScope().getNode(JSchCorePlugin.ID);
35
    defaultNode.put(IConstants.KEY_SSH2HOME, SSH_HOME_DEFAULT);
35
    defaultNode.put(IConstants.KEY_SSH2HOME, SSH_HOME_DEFAULT);
36
    defaultNode.put(IConstants.KEY_PRIVATEKEY, IConstants.PRIVATE_KEYS_DEFAULT);
36
    defaultNode.put(IConstants.KEY_PRIVATEKEY, IConstants.PRIVATE_KEYS_DEFAULT);
37
    defaultNode.put(IConstants.KEY_SERVERALIVEINTERVAL, IConstants.SERVERALIVEINTERVAL_DEFAULT);
37
    Utils.migrateSSH2Preferences();
38
    Utils.migrateSSH2Preferences();
38
  }
39
  }
39
40
(-)src/org/eclipse/jsch/internal/ui/messages.properties (+2 lines)
Lines 73-78 Link Here
73
CVSSSH2PreferencePage_136=Fingerprint
73
CVSSSH2PreferencePage_136=Fingerprint
74
CVSSSH2PreferencePage_138=&Remove
74
CVSSSH2PreferencePage_138=&Remove
75
CVSSSH2PreferencePage_139=Keys of known hosts:
75
CVSSSH2PreferencePage_139=Keys of known hosts:
76
CVSSSH2PreferencePage_140=&KeepAlive(seconds):
77
CVSSSH2PreferencePage_141=invalid value for keep-alive: 
76
UserInfoPrompter_0=SSH2 Message
78
UserInfoPrompter_0=SSH2 Message
77
UserInfoPrompter_1=SSH2 Message
79
UserInfoPrompter_1=SSH2 Message
78
KeyboardInteractiveDialog_0=Keyboard Interactive authentication for {0}: {1}
80
KeyboardInteractiveDialog_0=Keyboard Interactive authentication for {0}: {1}
(-)src/org/eclipse/jsch/internal/ui/Messages.java (+2 lines)
Lines 83-88 Link Here
83
  public static String CVSSSH2PreferencePage_136;
83
  public static String CVSSSH2PreferencePage_136;
84
  public static String CVSSSH2PreferencePage_138;
84
  public static String CVSSSH2PreferencePage_138;
85
  public static String CVSSSH2PreferencePage_139;
85
  public static String CVSSSH2PreferencePage_139;
86
  public static String CVSSSH2PreferencePage_140;
87
  public static String CVSSSH2PreferencePage_141;
86
  public static String KeyboardInteractiveDialog_0;
88
  public static String KeyboardInteractiveDialog_0;
87
  public static String KeyboardInteractiveDialog_1;
89
  public static String KeyboardInteractiveDialog_1;
88
  public static String KeyboardInteractiveDialog_2;
90
  public static String KeyboardInteractiveDialog_2;
(-)src/org/eclipse/jsch/internal/ui/preference/PreferencePage.java (+38 lines)
Lines 44-51 Link Here
44
44
45
  private Label ssh2HomeLabel;
45
  private Label ssh2HomeLabel;
46
  private Label privateKeyLabel;
46
  private Label privateKeyLabel;
47
  private Label keepAliveLabel;
47
  Text ssh2HomeText;
48
  Text ssh2HomeText;
48
  Text privateKeyText;
49
  Text privateKeyText;
50
  Text keepAliveText;
49
  private Button privateKeyAdd;
51
  private Button privateKeyAdd;
50
52
51
  private Button ssh2HomeBrowse;
53
  private Button ssh2HomeBrowse;
Lines 202-207 Link Here
202
      }
204
      }
203
    });
205
    });
204
206
207
    createSpacer(group, 3);
208
    
209
    keepAliveLabel=new Label(group, SWT.NONE);
210
    keepAliveLabel.setText(Messages.CVSSSH2PreferencePage_140);
211
212
    keepAliveText=new Text(group, SWT.SINGLE|SWT.BORDER);
213
    keepAliveText.setFont(group.getFont());
214
    gd=new GridData(GridData.FILL_HORIZONTAL);
215
    gd.horizontalSpan=1;
216
    keepAliveText.setLayoutData(gd);
217
    
205
    return group;
218
    return group;
206
  }
219
  }
207
220
Lines 970-975 Link Here
970
        .getString(org.eclipse.jsch.internal.core.IConstants.KEY_SSH2HOME));
983
        .getString(org.eclipse.jsch.internal.core.IConstants.KEY_SSH2HOME));
971
    privateKeyText.setText(preferences
984
    privateKeyText.setText(preferences
972
        .getString(org.eclipse.jsch.internal.core.IConstants.KEY_PRIVATEKEY));
985
        .getString(org.eclipse.jsch.internal.core.IConstants.KEY_PRIVATEKEY));
986
    keepAliveText.setText(preferences
987
        .getString(org.eclipse.jsch.internal.core.IConstants.KEY_SERVERALIVEINTERVAL));
973
    updateControls();
988
    updateControls();
974
  }
989
  }
975
990
Lines 989-994 Link Here
989
          }
1004
          }
990
        }
1005
        }
991
      }
1006
      }
1007
      
1008
      String keepalive=keepAliveText.getText();
1009
      int _keepalive=Integer.MAX_VALUE;
1010
      keepalive=keepalive.trim();
1011
      try{
1012
        _keepalive=Integer.parseInt(keepalive);
1013
        if(_keepalive<0)
1014
          _keepalive=Integer.MAX_VALUE;
1015
      }
1016
      catch(NumberFormatException e){
1017
        _keepalive=Integer.MAX_VALUE;
1018
      }
1019
      if(_keepalive==Integer.MAX_VALUE){
1020
        setErrorMessage(Messages.CVSSSH2PreferencePage_141+keepalive);
1021
        return false;
1022
      }
992
1023
993
      Preferences preferences=JSchCorePlugin.getPlugin().getPluginPreferences();
1024
      Preferences preferences=JSchCorePlugin.getPlugin().getPluginPreferences();
994
      preferences.setValue(
1025
      preferences.setValue(
Lines 996-1001 Link Here
996
      preferences.setValue(
1027
      preferences.setValue(
997
          org.eclipse.jsch.internal.core.IConstants.KEY_PRIVATEKEY,
1028
          org.eclipse.jsch.internal.core.IConstants.KEY_PRIVATEKEY,
998
          privateKeyText.getText());
1029
          privateKeyText.getText());
1030
      preferences.setValue(
1031
          org.eclipse.jsch.internal.core.IConstants.KEY_SERVERALIVEINTERVAL,
1032
          keepalive);
999
    }
1033
    }
1000
    JSchCorePlugin.getPlugin().setNeedToLoadKnownHosts(true);
1034
    JSchCorePlugin.getPlugin().setNeedToLoadKnownHosts(true);
1001
    JSchCorePlugin.getPlugin().setNeedToLoadKeys(true);
1035
    JSchCorePlugin.getPlugin().setNeedToLoadKeys(true);
Lines 1016-1021 Link Here
1016
    privateKeyText
1050
    privateKeyText
1017
        .setText(preferences
1051
        .setText(preferences
1018
            .getDefaultString(org.eclipse.jsch.internal.core.IConstants.KEY_PRIVATEKEY));
1052
            .getDefaultString(org.eclipse.jsch.internal.core.IConstants.KEY_PRIVATEKEY));
1053
    keepAliveText
1054
    .setText(preferences
1055
        .getDefaultString(org.eclipse.jsch.internal.core.IConstants.KEY_SERVERALIVEINTERVAL));
1056
1019
    updateControls();
1057
    updateControls();
1020
  }
1058
  }
1021
1059

Return to bug 222178