|
@@ -1,8 +1,8 @@
|
|
|
// Code specific to the client in the client-server mode.
|
|
|
|
|
|
+use mgen::{log, updater::Updater, HandshakeRef, MessageHeader, SerializedMessage};
|
|
|
+
|
|
|
use futures::future::try_join_all;
|
|
|
-use mgen::updater::Updater;
|
|
|
-use mgen::{log, HandshakeRef, MessageHeader, SerializedMessage};
|
|
|
use rand_xoshiro::{rand_core::SeedableRng, Xoshiro256PlusPlus};
|
|
|
use serde::Deserialize;
|
|
|
use std::result::Result;
|
|
@@ -296,7 +296,13 @@ async fn socket_updater(
|
|
|
loop {
|
|
|
let stream: TcpStream = match connect(&str_params).await {
|
|
|
Ok(stream) => stream,
|
|
|
- Err(MessengerError::Recoverable(_)) => {
|
|
|
+ Err(MessengerError::Recoverable(e)) => {
|
|
|
+ log!(
|
|
|
+ "{},{},error,TCP,{:?}",
|
|
|
+ str_params.user,
|
|
|
+ str_params.recipient,
|
|
|
+ e
|
|
|
+ );
|
|
|
tokio::time::sleep(retry).await;
|
|
|
continue;
|
|
|
}
|
|
@@ -305,7 +311,13 @@ async fn socket_updater(
|
|
|
|
|
|
let mut stream = match connector.connect(tls_server_name.clone(), stream).await {
|
|
|
Ok(stream) => stream,
|
|
|
- Err(_) => {
|
|
|
+ Err(e) => {
|
|
|
+ log!(
|
|
|
+ "{},{},error,TLS,{:?}",
|
|
|
+ str_params.user,
|
|
|
+ str_params.recipient,
|
|
|
+ e
|
|
|
+ );
|
|
|
tokio::time::sleep(retry).await;
|
|
|
continue;
|
|
|
}
|
|
@@ -446,7 +458,7 @@ async fn spawn_threads(config: FullConfig) -> Result<(), MessengerError> {
|
|
|
);
|
|
|
let manager = manage_conversation(config, state_from_reader, state_to_writer);
|
|
|
|
|
|
- join!(reader, writer, uploader, updater, manager);
|
|
|
+ join!(reader, writer, uploader, updater, manager)?;
|
|
|
Ok(())
|
|
|
}
|
|
|
|
|
@@ -518,7 +530,7 @@ async fn main_worker() -> Result<(), Box<dyn std::error::Error>> {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- try_join_all(handles.into_iter()).await?;
|
|
|
+ try_join_all(handles).await?;
|
|
|
Ok(())
|
|
|
}
|
|
|
|