parent
37bf023dbf
commit
63314fc867
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "rust-mqtt"
|
||||
version = "0.1.2"
|
||||
version = "0.1.3"
|
||||
authors = ["Ondrej Babec <ond.babec@gmail.com>"]
|
||||
edition = "2021"
|
||||
resolver = "2"
|
||||
|
@ -28,4 +28,5 @@ serial_test = "0.6.0"
|
|||
[features]
|
||||
default = ["std"]
|
||||
std = ["tokio", "log"]
|
||||
no_std = ["defmt"]
|
||||
no_std = ["defmt"]
|
||||
tls = []
|
|
@ -478,7 +478,7 @@ where
|
|||
}
|
||||
}
|
||||
|
||||
pub async fn send_ping_v5<'b>(&'b mut self) -> Result<(), ReasonCode> {
|
||||
async fn send_ping_v5<'b>(&'b mut self) -> Result<(), ReasonCode> {
|
||||
if self.connection.is_none() {
|
||||
return Err(ReasonCode::NetworkError);
|
||||
}
|
||||
|
@ -513,6 +513,7 @@ where
|
|||
}
|
||||
}
|
||||
|
||||
#[cfg(not(feature = "tls"))]
|
||||
async fn receive_packet<'c, T: NetworkConnection>(
|
||||
buffer: &mut [u8],
|
||||
buffer_len: usize,
|
||||
|
@ -548,7 +549,7 @@ async fn receive_packet<'c, T: NetworkConnection>(
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
trace!("Lenght done!");
|
||||
let rem_len_len = i;
|
||||
i = 0;
|
||||
if let Ok(l) = VariableByteIntegerDecoder::decode(rem_len.unwrap()) {
|
||||
|
@ -575,3 +576,23 @@ async fn receive_packet<'c, T: NetworkConnection>(
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(feature = "tls")]
|
||||
async fn receive_packet<'c, T: NetworkConnection>(
|
||||
buffer: &mut [u8],
|
||||
buffer_len: usize,
|
||||
recv_buffer: &mut [u8],
|
||||
conn: &'c mut T,
|
||||
) -> Result<usize, ReasonCode> {
|
||||
trace!("Reading packet");
|
||||
let mut writer = BuffWriter::new(buffer, buffer_len);
|
||||
let len = conn
|
||||
.receive(recv_buffer)
|
||||
.await?;
|
||||
if let Err(_e) = writer.insert_ref(len, &recv_buffer[writer.position..(writer.position + len)])
|
||||
{
|
||||
error!("Error occurred during write to buffer!");
|
||||
return Err(BuffError);
|
||||
}
|
||||
Ok(len)
|
||||
}
|
||||
|
|
|
@ -54,9 +54,7 @@ pub trait NetworkConnection {
|
|||
where
|
||||
Self: 'm;
|
||||
|
||||
type CloseFuture<'m>: Future<Output = Result<(), ReasonCode>>
|
||||
where
|
||||
Self: 'm;
|
||||
type CloseFuture<'m>: Future<Output = Result<(), ReasonCode>>;
|
||||
|
||||
fn send<'m>(&'m mut self, buffer: &'m [u8]) -> Self::SendFuture<'m>;
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user