From 3565289c19974ca874f87429cc74a87558249c8e Mon Sep 17 00:00:00 2001 From: dec05eba <0xdec05eba@gmail.com> Date: Fri, 19 Oct 2018 14:19:12 +0200 Subject: Use sendmsg and recvmsg instead of send and recv to receive one message at a time --- src/BootstrapNode.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'src/BootstrapNode.cpp') diff --git a/src/BootstrapNode.cpp b/src/BootstrapNode.cpp index 5c62e64..81df6d7 100644 --- a/src/BootstrapNode.cpp +++ b/src/BootstrapNode.cpp @@ -48,7 +48,6 @@ namespace sibs BootstrapNode::~BootstrapNode() { - std::lock_guard lock(connections.peersMutex); connections.alive = false; socket.reset(); acceptConnectionsThread.join(); @@ -94,7 +93,7 @@ namespace sibs { sibs::SafeDeserializer deserializer((const u8*)data, size); PubsubKey pubsubKey; - deserializer.extract(pubsubKey.data.data(), PUBSUB_KEY_LENGTH); + deserializer.extract(pubsubKey.data.data(), pubsubKey.data.size()); if(messageType == MessageType::SUBSCRIBE) { @@ -108,7 +107,7 @@ namespace sibs } sibs::SafeSerializer serializer; - serializer.add((u32)peer->address.address.sin_family); + serializer.add((u16)peer->address.address.sin_family); serializer.add((u32)peer->address.address.sin_addr.s_addr); serializer.add((u16)peer->address.address.sin_port); auto newPeerMessage = std::make_shared(MessageType::SUBSCRIBE); @@ -126,7 +125,7 @@ namespace sibs sibs::SafeSerializer newPeerSerializer; for(auto &existingPeer : peers) { - newPeerSerializer.add((u32)existingPeer->address.address.sin_family); + newPeerSerializer.add((u16)existingPeer->address.address.sin_family); newPeerSerializer.add((u32)existingPeer->address.address.sin_addr.s_addr); newPeerSerializer.add((u16)existingPeer->address.address.sin_port); } -- cgit v1.2.3