virNetLibsshAuthMethod: Drop 'password' field

The field was never populated so we can remove it and all the associated
logic.

Both for password authentication and fetching the password for the
public key we still can use the authentication callbacks.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jonathon Jongsma <jjongsma@redhat.com>
This commit is contained in:
Peter Krempa 2022-12-08 13:53:17 +01:00
parent bf5f65fead
commit 22e9e238d5

View File

@ -69,7 +69,6 @@ struct _virNetLibsshAuthMethod {
virNetLibsshAuthMethods method;
int ssh_flags; /* SSH_AUTH_METHOD_* for this auth method */
char *password;
char *filename;
int tries;
@ -129,8 +128,6 @@ virNetLibsshSessionDispose(void *obj)
}
for (i = 0; i < sess->nauths; i++) {
virSecureEraseString(sess->auths[i]->password);
g_free(sess->auths[i]->password);
g_free(sess->auths[i]->filename);
g_free(sess->auths[i]);
}
@ -456,7 +453,7 @@ virNetLibsshImportPrivkey(virNetLibsshSession *sess,
* failed or libssh did.
*/
virResetLastError();
ret = ssh_pki_import_privkey_file(priv->filename, priv->password,
ret = ssh_pki_import_privkey_file(priv->filename, NULL,
virNetLibsshAuthenticatePrivkeyCb,
sess, &key);
if (ret == SSH_EOF) {
@ -564,20 +561,13 @@ virNetLibsshAuthenticatePrivkey(virNetLibsshSession *sess,
* returns SSH_AUTH_* values
*/
static int
virNetLibsshAuthenticatePassword(virNetLibsshSession *sess,
virNetLibsshAuthMethod *priv)
virNetLibsshAuthenticatePassword(virNetLibsshSession *sess)
{
const char *errmsg;
int rc = SSH_AUTH_ERROR;
VIR_DEBUG("sess=%p", sess);
if (priv->password) {
/* tunnelled password authentication */
if ((rc = ssh_userauth_password(sess->session, NULL,
priv->password)) == 0)
return SSH_AUTH_SUCCESS;
} else {
/* password authentication with interactive password request */
if (!sess->cred || !sess->cred->cb) {
virReportError(VIR_ERR_LIBSSH, "%s",
@ -605,7 +595,6 @@ virNetLibsshAuthenticatePassword(virNetLibsshSession *sess,
else if (rc != SSH_AUTH_DENIED)
break;
}
}
/* error path */
errmsg = ssh_get_error(sess->session);
@ -809,7 +798,7 @@ virNetLibsshAuthenticate(virNetLibsshSession *sess)
break;
case VIR_NET_LIBSSH_AUTH_PASSWORD:
/* try to authenticate with password */
ret = virNetLibsshAuthenticatePassword(sess, auth);
ret = virNetLibsshAuthenticatePassword(sess);
break;
}