mirror of
https://github.com/wez/wezterm.git
synced 2024-09-20 03:09:06 +03:00
ssh: improve diagnostics to debug failing integration test
This commit is contained in:
parent
e7ada56c48
commit
d6ef3c67c5
@ -2,7 +2,7 @@ use crate::session::SessionEvent;
|
|||||||
use anyhow::Context;
|
use anyhow::Context;
|
||||||
use libssh_rs as libssh;
|
use libssh_rs as libssh;
|
||||||
use smol::channel::{bounded, Sender};
|
use smol::channel::{bounded, Sender};
|
||||||
use std::collections::HashSet;
|
use std::collections::{HashMap, HashSet};
|
||||||
use std::path::{Path, PathBuf};
|
use std::path::{Path, PathBuf};
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
@ -161,12 +161,15 @@ impl crate::sessioninner::SessionInner {
|
|||||||
|
|
||||||
loop {
|
loop {
|
||||||
let auth_methods = sess.userauth_list(None)?;
|
let auth_methods = sess.userauth_list(None)?;
|
||||||
|
let mut status_by_method = HashMap::new();
|
||||||
|
|
||||||
if auth_methods.contains(AuthMethods::PUBLIC_KEY) {
|
if auth_methods.contains(AuthMethods::PUBLIC_KEY) {
|
||||||
match sess.userauth_public_key_auto(None, None)? {
|
match sess.userauth_public_key_auto(None, None)? {
|
||||||
AuthStatus::Success => return Ok(()),
|
AuthStatus::Success => return Ok(()),
|
||||||
AuthStatus::Partial => continue,
|
AuthStatus::Partial => continue,
|
||||||
_ => {}
|
status => {
|
||||||
|
status_by_method.insert(AuthMethods::PUBLIC_KEY, status);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -238,7 +241,11 @@ impl crate::sessioninner::SessionInner {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
anyhow::bail!("unhandled auth case; methods={:?}", auth_methods);
|
anyhow::bail!(
|
||||||
|
"unhandled auth case; methods={:?}, status={:?}",
|
||||||
|
auth_methods,
|
||||||
|
status_by_method
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user