diff options
author | dec05eba <dec05eba@protonmail.com> | 2018-06-09 21:32:20 +0200 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2020-08-18 22:56:48 +0200 |
commit | 7b61bed0e0624fb33409c29dda5462029b42393b (patch) | |
tree | 47cb7738ade20b1e3a05d9e0a4aaa854f4b4eaea /src | |
parent | 58498260c6128151c805265232ad3467770493b7 (diff) |
Fix crash in send method, add debug
Diffstat (limited to 'src')
-rw-r--r-- | src/BootstrapNode.cpp | 9 | ||||
-rw-r--r-- | src/DirectConnection.cpp | 2 |
2 files changed, 8 insertions, 3 deletions
diff --git a/src/BootstrapNode.cpp b/src/BootstrapNode.cpp index f7fe738..9edf008 100644 --- a/src/BootstrapNode.cpp +++ b/src/BootstrapNode.cpp @@ -88,16 +88,21 @@ namespace sibs serializer.add((u16)newPeer->address.address.sin_port); std::shared_ptr<std::vector<u8>> serializerData = std::make_shared<std::vector<u8>>(std::move(serializer.getBuffer())); + auto sendCallbackFunc = [](PubSubResult result, const std::string &resultStr) + { + Log::debug("BootstrapNode::peerSubscribe send result: %d, result string: %s", result, resultStr.c_str()); + }; + sibs::SafeSerializer newPeerSerializer; newPeerSerializer.add(pubsubKey.data.data(), pubsubKey.data.size()); for(auto &peer : peers) { - connections.send(peer, serializerData); + connections.send(peer, serializerData, sendCallbackFunc); newPeerSerializer.add((u32)peer->address.address.sin_family); newPeerSerializer.add((u32)peer->address.address.sin_addr.s_addr); newPeerSerializer.add((u16)peer->address.address.sin_port); } peers.push_back(newPeer); - connections.send(newPeer, std::make_shared<std::vector<u8>>(std::move(newPeerSerializer.getBuffer()))); + connections.send(newPeer, std::make_shared<std::vector<u8>>(std::move(newPeerSerializer.getBuffer())), sendCallbackFunc); } } diff --git a/src/DirectConnection.cpp b/src/DirectConnection.cpp index 03fc27c..3108410 100644 --- a/src/DirectConnection.cpp +++ b/src/DirectConnection.cpp @@ -121,7 +121,7 @@ namespace sibs }).detach(); } - void DirectConnections::send(const std::shared_ptr<DirectConnectionPeer> &peer, std::shared_ptr<std::vector<u8>> data, PubSubSendDataCallback sendDataCallbackFunc) + void DirectConnections::send(const std::shared_ptr<DirectConnectionPeer> peer, std::shared_ptr<std::vector<u8>> data, PubSubSendDataCallback sendDataCallbackFunc) { // TODO: Replace this with light-weight threads (fibers)? std::thread([peer, data, sendDataCallbackFunc]() |