Merge pull request #100 from TheBlueMatt/main
[ldk-c-bindings] / lightning-c-bindings / demo.cpp
index a4281f56ca707e7c8f6ebd32ff7e463d9184acaf..7c56dd769aae1eb4670bf66732c458e3e5bcab59 100644 (file)
@@ -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));
@@ -423,7 +431,7 @@ LDKCVec_u8Z custom_msg_bytes(const void *this_arg) {
 }
 LDKStr custom_msg_debug(const void *this_arg) {
        return LDKStr {
-               .chars = NULL, .len = 0, .chars_is_owned = false
+               .chars = (const unsigned char*) "Custom Message", .len = 14, .chars_is_owned = false
        };
 }