Reconnection

This commit is contained in:
Alex Emmet 2026-05-21 22:17:30 +02:00
commit eb5db17652
2 changed files with 15 additions and 0 deletions

View file

@ -160,6 +160,12 @@ impl OmegaConnection {
handle.abort();
}
// Recreate shutdown_tx if it was taken by stop()
if self.shutdown_tx.lock().await.is_none() {
let (shutdown_tx, _) = watch::channel(false);
*self.shutdown_tx.lock().await = Some(shutdown_tx);
}
// Set reconnect flag
*self.reconnect_on_close.write().await = true;

View file

@ -356,6 +356,15 @@ impl GeneralConnection {
expected,
response
);
let err_msg = CommunicationValue::new(CommunicationType::error)
.with_id(cv.get_id())
.add_data(
DataTypes::message,
DataValue::Str(
"Challenge response mismatch — authentication rejected".to_string(),
),
);
let _ = self.sender.send(&err_msg).await;
}
} else {
log_err!(