Wrap ctx.reject() and catch throws

This commit is contained in:
Bryan Ashby 2018-12-24 15:14:37 -07:00
parent c6e176f5bd
commit 73e8b0454e
1 changed files with 12 additions and 4 deletions

View File

@ -49,8 +49,16 @@ function SSHClient(clientConn) {
self.log.trace( { method : ctx.method, username : username, newUser : self.isNewUser }, 'SSH authentication attempt');
const safeContextReject = (param) => {
try {
return ctx.reject(param);
} catch(e) {
return;
}
};
function terminateConnection() {
ctx.reject();
safeContextReject();
return clientConn.end();
}
@ -106,19 +114,19 @@ function SSHClient(clientConn) {
return handleSpecialError(err, username);
}
return ctx.reject(SSHClient.ValidAuthMethods);
return safeContextReject(SSHClient.ValidAuthMethods);
}
ctx.accept();
});
} else {
if(-1 === SSHClient.ValidAuthMethods.indexOf(ctx.method)) {
return ctx.reject(SSHClient.ValidAuthMethods);
return safeContextReject(SSHClient.ValidAuthMethods);
}
if(0 === username.length) {
// :TODO: can we display something here?
return ctx.reject();
return safeContextReject();
}
const interactivePrompt = { prompt : `${ctx.username}'s password: `, echo : false };