cargo fmt

This commit is contained in:
Alexander Krotov
2019-12-14 22:28:15 +01:00
parent ad700b45d0
commit 3f49492ccf
2 changed files with 73 additions and 72 deletions

View File

@@ -542,13 +542,14 @@ fn try_imap_one_param(context: &Context, param: &LoginParam) -> Option<bool> {
param.imap_certificate_checks param.imap_certificate_checks
); );
info!(context, "Trying: {}", inf); info!(context, "Trying: {}", inf);
if task::block_on(context if task::block_on(
.inbox_thread context
.read() .inbox_thread
.unwrap() .read()
.imap .unwrap()
.connect(context, &param)) .imap
{ .connect(context, &param),
) {
info!(context, "success: {}", inf); info!(context, "success: {}", inf);
return Some(true); return Some(true);
} }

View File

@@ -349,79 +349,79 @@ impl Imap {
/// tries connecting to imap account using the specific login /// tries connecting to imap account using the specific login
/// parameters /// parameters
pub async fn connect(&self, context: &Context, lp: &LoginParam) -> bool { pub async fn connect(&self, context: &Context, lp: &LoginParam) -> bool {
if lp.mail_server.is_empty() || lp.mail_user.is_empty() || lp.mail_pw.is_empty() { if lp.mail_server.is_empty() || lp.mail_user.is_empty() || lp.mail_pw.is_empty() {
return false; return false;
} }
{ {
let addr = &lp.addr; let addr = &lp.addr;
let imap_server = &lp.mail_server; let imap_server = &lp.mail_server;
let imap_port = lp.mail_port as u16; let imap_port = lp.mail_port as u16;
let imap_user = &lp.mail_user; let imap_user = &lp.mail_user;
let imap_pw = &lp.mail_pw; let imap_pw = &lp.mail_pw;
let server_flags = lp.server_flags as usize; let server_flags = lp.server_flags as usize;
let mut config = self.config.write().await; let mut config = self.config.write().await;
config.addr = addr.to_string(); config.addr = addr.to_string();
config.imap_server = imap_server.to_string(); config.imap_server = imap_server.to_string();
config.imap_port = imap_port; config.imap_port = imap_port;
config.imap_user = imap_user.to_string(); config.imap_user = imap_user.to_string();
config.imap_pw = imap_pw.to_string(); config.imap_pw = imap_pw.to_string();
config.certificate_checks = lp.imap_certificate_checks; config.certificate_checks = lp.imap_certificate_checks;
config.server_flags = server_flags; config.server_flags = server_flags;
} }
if let Err(err) = self.setup_handle_if_needed(context).await { if let Err(err) = self.setup_handle_if_needed(context).await {
warn!(context, "failed to setup imap handle: {}", err); warn!(context, "failed to setup imap handle: {}", err);
self.free_connect_params().await; self.free_connect_params().await;
return false; return false;
} }
let teardown = match &mut *self.session.lock().await { let teardown = match &mut *self.session.lock().await {
Some(ref mut session) => match session.capabilities().await { Some(ref mut session) => match session.capabilities().await {
Ok(caps) => { Ok(caps) => {
if !context.sql.is_open() { if !context.sql.is_open() {
warn!(context, "IMAP-LOGIN as {} ok but ABORTING", lp.mail_user,); warn!(context, "IMAP-LOGIN as {} ok but ABORTING", lp.mail_user,);
true
} else {
let can_idle = caps.has_str("IDLE");
let has_xlist = caps.has_str("XLIST");
let caps_list = caps.iter().fold(String::new(), |s, c| {
if let Capability::Atom(x) = c {
s + &format!(" {}", x)
} else {
s + &format!(" {:?}", c)
}
});
self.config.write().await.can_idle = can_idle;
self.config.write().await.has_xlist = has_xlist;
*self.connected.lock().await = true;
emit_event!(
context,
Event::ImapConnected(format!(
"IMAP-LOGIN as {}, capabilities: {}",
lp.mail_user, caps_list,
))
);
false
}
}
Err(err) => {
info!(context, "CAPABILITY command error: {}", err);
true true
} else {
let can_idle = caps.has_str("IDLE");
let has_xlist = caps.has_str("XLIST");
let caps_list = caps.iter().fold(String::new(), |s, c| {
if let Capability::Atom(x) = c {
s + &format!(" {}", x)
} else {
s + &format!(" {:?}", c)
}
});
self.config.write().await.can_idle = can_idle;
self.config.write().await.has_xlist = has_xlist;
*self.connected.lock().await = true;
emit_event!(
context,
Event::ImapConnected(format!(
"IMAP-LOGIN as {}, capabilities: {}",
lp.mail_user, caps_list,
))
);
false
} }
}, }
None => true, Err(err) => {
}; info!(context, "CAPABILITY command error: {}", err);
true
}
},
None => true,
};
if teardown { if teardown {
self.disconnect(context); self.disconnect(context);
false false
} else { } else {
true true
} }
} }
pub fn disconnect(&self, context: &Context) { pub fn disconnect(&self, context: &Context) {