From fba7600eddef9e8fa03a129065c161c7df50cddd Mon Sep 17 00:00:00 2001 From: Daniele Palaia Date: Thu, 2 Feb 2023 16:12:29 +0100 Subject: [PATCH] Replacing .unwrap with ? in mod.rs --- src/client/mod.rs | 8 +++----- src/error.rs | 11 ++++++++++- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/src/client/mod.rs b/src/client/mod.rs index 48ff211..7fa1ea0 100644 --- a/src/client/mod.rs +++ b/src/client/mod.rs @@ -396,13 +396,11 @@ impl Client { .danger_accept_invalid_certs(true) .danger_accept_invalid_hostnames(true); - let conn = tls_builder.build(); + let conn = tokio_native_tls::TlsConnector::from( tls_builder.build()?); - let conn = tokio_native_tls::TlsConnector::from(conn.unwrap()); + let stream = conn.connect(broker.host.as_str(), stream).await?; - let stream = conn.connect(broker.host.as_str(), stream).await; - - GenericTcpStream::SecureTcp(stream.unwrap()) + GenericTcpStream::SecureTcp(stream) } else { let stream = TcpStream::connect((broker.host.as_str(), broker.port)).await?; GenericTcpStream::Tcp(stream) diff --git a/src/error.rs b/src/error.rs index ffd1b00..f0cf189 100644 --- a/src/error.rs +++ b/src/error.rs @@ -8,15 +8,17 @@ use thiserror::Error; pub enum ClientError { #[error(transparent)] Io(#[from] std::io::Error), + #[error(transparent)] Protocol(#[from] ProtocolError), #[error("Cast Error: {0}")] CastError(String), - #[error(transparent)] GenericError(#[from] Box), #[error("Client already closed")] AlreadyClosed, + #[error("tls_error")] + Tls(tokio_native_tls::native_tls::Error), } #[derive(Error, Debug)] @@ -25,6 +27,7 @@ pub enum ProtocolError { Encode(EncodeError), #[error("Decode Error {0:?}")] Decode(DecodeError), + } impl From for ClientError { @@ -33,6 +36,12 @@ impl From for ClientError { } } +impl From for ClientError { + fn from(err: tokio_native_tls::native_tls::Error) -> Self { + ClientError::Tls(err) + } +} + impl From for ClientError { fn from(err: DecodeError) -> Self { ClientError::Protocol(ProtocolError::Decode(err))