Show potential room connections differently.

git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@4027 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
2022-11-09 03:51:31 +00:00
parent c1df77bb96
commit e49b54207a
6 changed files with 33 additions and 16 deletions

View File

@ -2476,7 +2476,7 @@ static void _tf_ssb_on_broadcast_listener_recv(uv_udp_t* handle, ssize_t nread,
tf_free(buf->base);
}
void tf_ssb_visit_broadcasts(tf_ssb_t* ssb, void (*callback)(const struct sockaddr_in* addr, tf_ssb_connection_t* tunnel, const uint8_t* pub, void* user_data), void* user_data)
void tf_ssb_visit_broadcasts(tf_ssb_t* ssb, void (*callback)(const char* host, const struct sockaddr_in* addr, tf_ssb_connection_t* tunnel, const uint8_t* pub, void* user_data), void* user_data)
{
time_t now = time(NULL);
tf_ssb_broadcast_t* next = NULL;
@ -2485,7 +2485,7 @@ void tf_ssb_visit_broadcasts(tf_ssb_t* ssb, void (*callback)(const struct sockad
next = node->next;
if (node->mtime - now < 60)
{
callback(&node->addr, node->tunnel_connection, node->pub, user_data);
callback(node->host, &node->addr, node->tunnel_connection, node->pub, user_data);
}
}
}

View File

@ -80,7 +80,7 @@ void tf_ssb_run(tf_ssb_t* ssb);
void tf_ssb_append_message_with_keys(tf_ssb_t* ssb, const char* author, const uint8_t* private_key, JSValue message);
bool tf_ssb_whoami(tf_ssb_t* ssb, char* out_id, size_t out_id_size);
void tf_ssb_visit_broadcasts(tf_ssb_t* ssb, void (*callback)(const struct sockaddr_in* addr, tf_ssb_connection_t* tunnel, const uint8_t* pub, void* user_data), void* user_data);
void tf_ssb_visit_broadcasts(tf_ssb_t* ssb, void (*callback)(const char* host, const struct sockaddr_in* addr, tf_ssb_connection_t* tunnel, const uint8_t* pub, void* user_data), void* user_data);
tf_ssb_connection_t* tf_ssb_get_connection(tf_ssb_t* ssb, const char* id);
const char** tf_ssb_get_connection_ids(tf_ssb_t* ssb);

View File

@ -341,13 +341,11 @@ typedef struct _broadcasts_t
int length;
} broadcasts_t;
static void _tf_ssb_broadcasts_visit(const struct sockaddr_in* addr, tf_ssb_connection_t* tunnel, const uint8_t* pub, void* user_data)
static void _tf_ssb_broadcasts_visit(const char* host, const struct sockaddr_in* addr, tf_ssb_connection_t* tunnel, const uint8_t* pub, void* user_data)
{
broadcasts_t* broadcasts = user_data;
JSValue entry = JS_NewObject(broadcasts->context);
char address[256];
char pubkey[k_id_base64_len];
uv_ip4_name(addr, address, sizeof(address));
tf_ssb_id_bin_to_str(pubkey, sizeof(pubkey), pub);
if (tunnel)
{
@ -355,7 +353,7 @@ static void _tf_ssb_broadcasts_visit(const struct sockaddr_in* addr, tf_ssb_conn
}
else
{
JS_SetPropertyStr(broadcasts->context, entry, "address", JS_NewString(broadcasts->context, address));
JS_SetPropertyStr(broadcasts->context, entry, "address", JS_NewString(broadcasts->context, host));
JS_SetPropertyStr(broadcasts->context, entry, "port", JS_NewInt32(broadcasts->context, ntohs(addr->sin_port)));
}
JS_SetPropertyStr(broadcasts->context, entry, "pubkey", JS_NewString(broadcasts->context, pubkey));

View File

@ -264,7 +264,7 @@ void tf_ssb_test_ssb(const tf_test_options_t* options)
sqlite3_close(db1);
}
static void _broadcasts_visit(const struct sockaddr_in* addr, tf_ssb_connection_t* tunnel, const uint8_t* pub, void* user_data)
static void _broadcasts_visit(const char* host, const struct sockaddr_in* addr, tf_ssb_connection_t* tunnel, const uint8_t* pub, void* user_data)
{
int* count = user_data;
(*count)++;