|
|
|
|
@ -104,10 +104,10 @@ void GuiBridgeReceiver::processPost(int eventType, QByteArray data) {
|
|
|
|
|
qPrintable(chId), (unsigned long long)author); |
|
|
|
|
if (g_msg_received_cb) g_msg_received_cb((const char*)d + 1, chLen, author); |
|
|
|
|
} else { |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_DEBUG, "gui_bridge: MSG_RECEIVED invalid data length %d", dlen); |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_CHAT, "gui_bridge: MSG_RECEIVED invalid data length %d", dlen); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_DEBUG, "gui_bridge: MSG_RECEIVED data too short %d", dlen); |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_CHAT, "gui_bridge: MSG_RECEIVED data too short %d", dlen); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
case GUI_EVT_CONNECT_RESULT: |
|
|
|
|
@ -118,7 +118,7 @@ void GuiBridgeReceiver::processPost(int eventType, QByteArray data) {
|
|
|
|
|
(unsigned long long)nodeId, (unsigned long long)channelId, result); |
|
|
|
|
if (g_connect_result_cb) g_connect_result_cb(nodeId, channelId, result); |
|
|
|
|
} else { |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_DEBUG, "gui_bridge: CONNECT_RESULT data too short %d", dlen); |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_CONNECTION, "gui_bridge: CONNECT_RESULT data too short %d", dlen); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
case GUI_EVT_NEW_PEER: |
|
|
|
|
@ -126,7 +126,7 @@ void GuiBridgeReceiver::processPost(int eventType, QByteArray data) {
|
|
|
|
|
uint64_t nodeId; memcpy(&nodeId, d, 8); |
|
|
|
|
DEBUG_INFO(DEBUG_CATEGORY_MEMBER_SYNC, "gui_bridge: NEW_PEER node=0x%016llx", (unsigned long long)nodeId); |
|
|
|
|
} else { |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_DEBUG, "gui_bridge: NEW_PEER data too short %d", dlen); |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_CONNECTION, "gui_bridge: NEW_PEER data too short %d", dlen); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
case GUI_EVT_CHANNEL_UPDATED: |
|
|
|
|
@ -138,7 +138,7 @@ void GuiBridgeReceiver::processPost(int eventType, QByteArray data) {
|
|
|
|
|
if (g_channel_updated_cb) g_channel_updated_cb((const char*)d + 1, chLen); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_DEBUG, "gui_bridge: CHANNEL_UPDATED data too short %d", dlen); |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_CHAT, "gui_bridge: CHANNEL_UPDATED data too short %d", dlen); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
case GUI_EVT_MY_NODE_ID: |
|
|
|
|
@ -186,7 +186,7 @@ void GuiBridgeReceiver::processPost(int eventType, QByteArray data) {
|
|
|
|
|
uint64_t nodeId; memcpy(&nodeId, d, 8); |
|
|
|
|
DEBUG_INFO(DEBUG_CATEGORY_MEMBER_SYNC, "gui_bridge: NODE_CHANGED node=0x%016llx — pubkey changed, connection closed", (unsigned long long)nodeId); |
|
|
|
|
} else { |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_DEBUG, "gui_bridge: NODE_CHANGED data too short %d", dlen); |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_CONNECTION, "gui_bridge: NODE_CHANGED data too short %d", dlen); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
case GUI_EVT_ATTACHMENT_DOWNLOADED: |
|
|
|
|
@ -194,7 +194,7 @@ void GuiBridgeReceiver::processPost(int eventType, QByteArray data) {
|
|
|
|
|
uint8_t chLen = d[0]; |
|
|
|
|
if (dlen >= 1 + chLen + 8) { |
|
|
|
|
int64_t msgId = 0; memcpy(&msgId, d + 1 + chLen, 8); |
|
|
|
|
DEBUG_INFO(DEBUG_CATEGORY_DEBUG, "gui_bridge: ATTACHMENT_DOWNLOADED ch=%.*s msgId=%lld", chLen, (const char*)d + 1, (long long)msgId); |
|
|
|
|
DEBUG_INFO(DEBUG_CATEGORY_MEDIA, "gui_bridge: ATTACHMENT_DOWNLOADED ch=%.*s msgId=%lld", chLen, (const char*)d + 1, (long long)msgId); |
|
|
|
|
if (g_attachment_downloaded_cb) g_attachment_downloaded_cb((const char*)d + 1, chLen, msgId); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
@ -205,7 +205,8 @@ void GuiBridgeReceiver::processPost(int eventType, QByteArray data) {
|
|
|
|
|
if (dlen >= 1 + chLen + 16) { |
|
|
|
|
int64_t msgId = 0; memcpy(&msgId, d + 1 + chLen, 8); |
|
|
|
|
int32_t bd = 0, nb = 0; memcpy(&bd, d + 1 + chLen + 8, 4); memcpy(&nb, d + 1 + chLen + 12, 4); |
|
|
|
|
DEBUG_INFO(DEBUG_CATEGORY_DEBUG, "gui_bridge: DOWNLOAD_PROGRESS ch=%.*s msgId=%lld %d/%d", chLen, (const char*)d + 1, (long long)msgId, bd, nb); |
|
|
|
|
DEBUG_DEBUG(DEBUG_CATEGORY_MEDIA, "gui_bridge: DOWNLOAD_PROGRESS ch=%.*s msgId=%lld %d/%d", |
|
|
|
|
chLen, (const char*)d + 1, (long long)msgId, bd, nb); |
|
|
|
|
if (g_download_progress_cb) g_download_progress_cb((const char*)d + 1, chLen, msgId, bd, nb); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
@ -379,7 +380,7 @@ void GuiBridgeReceiver::processPost(int eventType, QByteArray data) {
|
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
default: |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_DEBUG, "gui_bridge: unknown event type %d", eventType); |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_GENERAL, "gui_bridge: unknown event type %d", eventType); |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
@ -407,7 +408,7 @@ struct UTUN_INSTANCE* gui_bridge_get_inst(void) {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void gui_bridge_post(int event_type, const uint8_t* data, int data_len) { |
|
|
|
|
if (!g_receiver) { DEBUG_WARN(DEBUG_CATEGORY_DEBUG, "gui_bridge_post: g_receiver=NULL, dropping event %d", event_type); return; } |
|
|
|
|
if (!g_receiver) { DEBUG_WARN(DEBUG_CATEGORY_GENERAL, "gui_bridge_post: g_receiver=NULL, dropping event %d", event_type); return; } |
|
|
|
|
|
|
|
|
|
QByteArray d; |
|
|
|
|
if (data_len > 0) d = QByteArray((const char*)data, data_len); |
|
|
|
|
@ -420,7 +421,7 @@ void gui_bridge_post(int event_type, const uint8_t* data, int data_len) {
|
|
|
|
|
|
|
|
|
|
void gui_bridge_post_uasync_fn(void (*fn)(void*), void* arg) { |
|
|
|
|
if (!g_ua) { |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_DEBUG, "gui_bridge_post_uasync_fn: g_ua=NULL, post dropped"); |
|
|
|
|
DEBUG_WARN(DEBUG_CATEGORY_GENERAL, "gui_bridge_post_uasync_fn: g_ua=NULL, post dropped"); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
if (!fn) return; |
|
|
|
|
|