diff --git a/src/etcp_connections.c b/src/etcp_connections.c index 07987ced..f811a9ad 100644 --- a/src/etcp_connections.c +++ b/src/etcp_connections.c @@ -1679,10 +1679,13 @@ void etcp_connections_read_callback_socket(socket_t sock, void* arg) { } if (!conn) { struct ETCP_LINK* ol = etcp_link_find_by_addr(e_sock, &addr); - if (ol && ol->etcp && ol->etcp->peer_node_id == 0) { - conn = ol->etcp; - DEBUG_INFO(DEBUG_CATEGORY_CONNECTION, "[%s] reusing unindexed outbound conn for incoming INIT from peer=0x%016llx addr=%s", - conn->log_name, (unsigned long long)peer_id, sockaddr_storage_to_str(&addr).str); + if (ol && ol->etcp && ol->etcp->conn_queue_entry) { + struct conn_queue_entry* ce = (struct conn_queue_entry*)ol->etcp->conn_queue_entry->data; + if (ce->peer_node_id == 0) { + conn = ol->etcp; + DEBUG_INFO(DEBUG_CATEGORY_CONNECTION, "[%s] reusing unindexed outbound conn (q_key=0, peer=0x%016llx) for incoming INIT from %s", + conn->log_name, (unsigned long long)peer_id, sockaddr_storage_to_str(&addr).str); + } } }