X-Git-Url: http://git.bitcoin.ninja/index.cgi?p=ldk-c-bindings;a=blobdiff_plain;f=lightning-c-bindings%2Fdemo.cpp;h=b6a4c722f53aa3aefef8190abeea23cfbfe261ba;hp=a4281f56ca707e7c8f6ebd32ff7e463d9184acaf;hb=658e107370630688b53c663adc566fd814c6e974;hpb=22416bd8a74640dc70a49b5167afb28d747886e3 diff --git a/lightning-c-bindings/demo.cpp b/lightning-c-bindings/demo.cpp index a4281f5..b6a4c72 100644 --- a/lightning-c-bindings/demo.cpp +++ b/lightning-c-bindings/demo.cpp @@ -242,6 +242,14 @@ public: PeerManager_disconnect_by_node_id(&net1, ChannelManager_get_our_node_id(&cm2)); assert(!socket_connect(node1_handler, ChannelManager_get_our_node_id(&cm2), (sockaddr*)&listen_addr, sizeof(listen_addr))); + while (true) { + // Wait for the new connection handshake... + LDK::CVec_C2Tuple_PublicKeyCOption_NetAddressZZZ peers_1 = PeerManager_get_peer_node_ids(&net1); + LDK::CVec_C2Tuple_PublicKeyCOption_NetAddressZZZ peers_2 = PeerManager_get_peer_node_ids(&net2); + if (peers_1->datalen == 1 && peers_2->datalen == 1) { break; } + std::this_thread::yield(); + } + // Wait for all our sockets to disconnect (making sure we disconnect any new connections)... while (true) { PeerManager_disconnect_by_node_id(&net1, ChannelManager_get_our_node_id(&cm2));