diff --git a/packages/api/src/utility/sshTunnel.js b/packages/api/src/utility/sshTunnel.js index aec723b65..da19aa1eb 100644 --- a/packages/api/src/utility/sshTunnel.js +++ b/packages/api/src/utility/sshTunnel.js @@ -43,19 +43,25 @@ function callForwardProcess(connection, tunnelConfig, tunnelCacheKey) { logger.error(extractErrorLogData(err), 'Error connecting SSH'); } return new Promise((resolve, reject) => { + let promiseHandled = false; subprocess.on('message', resp => { // @ts-ignore const { msgtype, errorMessage } = resp; if (msgtype == 'connected') { resolve(subprocess); + promiseHandled = true; } if (msgtype == 'error') { reject(new Error(errorMessage)); + promiseHandled = true; } }); subprocess.on('exit', code => { logger.info('SSH forward process exited'); delete sshTunnelCache[tunnelCacheKey]; + if (!promiseHandled) { + reject(new Error('SSH forward process exited, try to change "Local host address for SSH connections" in Settings/Connections')); + } }); }); } diff --git a/packages/web/src/settings/SettingsModal.svelte b/packages/web/src/settings/SettingsModal.svelte index c1a9d4173..41b24458a 100644 --- a/packages/web/src/settings/SettingsModal.svelte +++ b/packages/web/src/settings/SettingsModal.svelte @@ -211,7 +211,6 @@ ORDER BY { value: '127.0.0.1', label: '127.0.0.1 (IPv4)' }, { value: '::1', label: '::1 (IPv6)' }, { value: 'localhost', label: 'localhost (domain name)' }, - { value: 'testerror', label: 'testerror' }, ]} />