Skip to content

Commit

Permalink
Remove unnecessary clone for NetConfig
Browse files Browse the repository at this point in the history
  • Loading branch information
jintukumardas committed Dec 2, 2024
1 parent 9a63262 commit d0c3978
Show file tree
Hide file tree
Showing 5 changed files with 11 additions and 11 deletions.
4 changes: 2 additions & 2 deletions shardus_net/src/header/header_v1.rs
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ impl HeaderV1 {
}

// Deserialize a Vec<u8> cursor into a HeaderV1 struct
pub fn deserialize(cursor: &mut Cursor<Vec<u8>>, net_config: &NetConfig) -> Option<Self> {
pub fn deserialize(cursor: &mut Cursor<Vec<u8>>, net_config: NetConfig) -> Option<Self> {
// Deserialize uuid
let mut uuid_bytes = [0u8; 16];
cursor.read_exact(&mut uuid_bytes).ok()?;
Expand Down Expand Up @@ -154,7 +154,7 @@ mod tests {
};
let serialized = header.serialize();
let mut cursor = Cursor::new(serialized);
let deserialized = HeaderV1::deserialize(&mut cursor, &net_config).unwrap();
let deserialized = HeaderV1::deserialize(&mut cursor, net_config).unwrap();

assert_eq!(header.uuid, deserialized.uuid);
assert_eq!(header.message_length, deserialized.message_length);
Expand Down
4 changes: 2 additions & 2 deletions shardus_net/src/header_factory.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@ pub fn wrap_serialized_message(mut serialized_message: Vec<u8>) -> Vec<u8> {
buffer
}

pub fn header_deserialize_factory(version: u8, serialized_header_cursor: &mut Cursor<Vec<u8>>, net_config: &NetConfig) -> Option<Header> {
pub fn header_deserialize_factory(version: u8, serialized_header_cursor: &mut Cursor<Vec<u8>>, net_config: NetConfig) -> Option<Header> {
match version {
1 => {
let deserialized = HeaderV1::deserialize(serialized_header_cursor, &net_config)?;
let deserialized = HeaderV1::deserialize(serialized_header_cursor, net_config)?;
Some(Header::V1(deserialized))
}
_ => None,
Expand Down
2 changes: 1 addition & 1 deletion shardus_net/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ use crate::shardus_net_sender::Connection;

const ENABLE_COMPRESSION: bool = false;

#[derive(Clone)]
#[derive(Copy, Clone)]
pub struct NetConfig {
pub header_size_limit: usize,
pub payload_size_limit: usize,
Expand Down
2 changes: 1 addition & 1 deletion shardus_net/src/message.rs
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,7 @@ mod tests {
};
let serialized = message.serialize();
let mut cursor = Cursor::new(serialized);
let deserialized = Message::deserialize(&mut cursor, &net_config).unwrap();
let deserialized = Message::deserialize(&mut cursor, net_config).unwrap();

assert_eq!(message.header_version, deserialized.header_version);
assert_eq!(message.header, deserialized.header);
Expand Down
10 changes: 5 additions & 5 deletions shardus_net/src/shardus_net_listener.rs
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ impl ShardusNetListener {
}

pub fn listen(&self) -> UnboundedReceiver<(String, SocketAddr, Option<RequestMetadata>)> {
Self::spawn_listener(self.address, self.net_config.clone())
Self::spawn_listener(self.address, self.net_config)
}

fn spawn_listener(address: SocketAddr, net_config: NetConfig) -> UnboundedReceiver<(String, SocketAddr, Option<RequestMetadata>)> {
Expand Down Expand Up @@ -79,7 +79,7 @@ impl ShardusNetListener {
let net_config = net_config.clone();

RUNTIME.spawn(async move {
let result = Self::receive(socket, remote_addr, received_msg_tx, &net_config).await;
let result = Self::receive(socket, remote_addr, received_msg_tx, net_config).await;
match result {
Ok(_) => info!("Connection safely completed and shutdown with {}", remote_addr),
Err(err) => {
Expand All @@ -90,7 +90,7 @@ impl ShardusNetListener {
}
}

async fn receive(socket_stream: TcpStream, remote_addr: SocketAddr, received_msg_tx: UnboundedSender<(String, SocketAddr, Option<RequestMetadata>)>, net_config: &NetConfig) -> ListenerResult<()> {
async fn receive(socket_stream: TcpStream, remote_addr: SocketAddr, received_msg_tx: UnboundedSender<(String, SocketAddr, Option<RequestMetadata>)>, net_config: NetConfig) -> ListenerResult<()> {
let mut socket_stream: TcpStream = socket_stream;
while let Ok(msg_len) = socket_stream.read_u32().await {
if (msg_len as usize) > net_config.payload_size_limit {
Expand All @@ -116,15 +116,15 @@ impl ShardusNetListener {
let msg_bytes = &buffer[1..];

let mut cursor = Cursor::new(msg_bytes.to_vec());
let message = Message::deserialize(&mut cursor, net_config.clone()).expect("Failed to deserialize message");
let message = Message::deserialize(&mut cursor, net_config).expect("Failed to deserialize message");
if !message.verify(shardus_crypto::get_shardus_crypto_instance()) {
error!("Failed to verify message signature");
continue;
}
info!("Message verified!");

let header_cursor = &mut Cursor::new(message.header);
let header = header_deserialize_factory(message.header_version, header_cursor, &net_config).expect("Failed to deserialize header");
let header = header_deserialize_factory(message.header_version, header_cursor, net_config).expect("Failed to deserialize header");

let data = message.data;

Expand Down

0 comments on commit d0c3978

Please sign in to comment.