chat: invite-ссылки с несколькими адресами + ncd-адреса узлов (join)
This commit is contained in:
1 parent
d88dccfa19
commit
481872d5db
24 files changed
+517
-114
No files matched your search
@@ -312,6 +312,7 @@ void AccountList::onMemberDetailData(uint64_t nodeId, const uint8_t* data, int l
|
||||
lk.addr = QByteArray((const char*)p + 25, 16);
|
||||
memcpy(&lk.port, p + 41, 2);
|
||||
memcpy(lk.sockName, p + 43, 20); lk.sockName[19] = '\0';
|
||||
lk.isReality = p[63] != 0;
|
||||
p += MEMBER_DETAIL_LINK_SIZE;
|
||||
m_snapLinks.append(lk);
|
||||
}
|
||||
@@ -367,14 +368,17 @@ void AccountList::updateDetailDisplay() {
|
||||
/* ── Body ── */
|
||||
QStringList lines;
|
||||
|
||||
auto protoName = [](int protocol) -> QString {
|
||||
if (protocol & 0x04) return (protocol & 0x02) ? "TCP+REALITY" : "REALITY";
|
||||
switch (protocol) { case 1: return "UDP"; case 2: return "TCP"; default: return "?"; }
|
||||
};
|
||||
|
||||
if (!m_detailAddrs.isEmpty()) {
|
||||
lines.append("── Addresses ──");
|
||||
for (const auto& a : m_detailAddrs) {
|
||||
QString proto;
|
||||
switch (a.protocol) { case 1: proto = "UDP"; break; case 2: proto = "TCP"; break; default: proto = "?"; break; }
|
||||
lines.append(QString(" [sock%1] %2 %3 %4:%5 %6")
|
||||
.arg(a.socket_id)
|
||||
.arg(proto)
|
||||
.arg(protoName(a.protocol))
|
||||
.arg(a.ifname)
|
||||
.arg(addrStr(a.addr.constData(), a.family))
|
||||
.arg(a.port)
|
||||
@@ -389,7 +393,7 @@ void AccountList::updateDetailDisplay() {
|
||||
for (const auto& da : m_detailAddrs) {
|
||||
if (da.socket_id == s.sockId) { a = &da; break; }
|
||||
}
|
||||
QString proto = a ? (a->protocol == 2 ? "TCP" : "UDP") : "?";
|
||||
QString proto = a ? protoName(a->protocol) : "?";
|
||||
QString ip = a ? addrStr(a->addr.constData(), a->family) : "?";
|
||||
lines.append(QString(" [%1/%2] %3:%4 %5")
|
||||
.arg(s.linksUp).arg(s.linksDown)
|
||||
@@ -404,7 +408,7 @@ void AccountList::updateDetailDisplay() {
|
||||
QString c = up ? "#4CAF50" : "#E53935";
|
||||
lines.append(QString("<span style='color:%1;'>●</span> %2 %3:%4 %5 %6:%7")
|
||||
.arg(c)
|
||||
.arg(lk.isTcp ? "TCP" : "UDP")
|
||||
.arg(lk.isReality ? "TCP+REALITY" : (lk.isTcp ? "TCP" : "UDP"))
|
||||
.arg(addrStr(lk.localAddr.constData(), lk.localFamily)).arg(lk.localPort)
|
||||
.arg(lk.isServer ? "\u25c0" : "\u25b6")
|
||||
.arg(addrStr(lk.addr.constData(), lk.family)).arg(lk.port));
|
||||
|
||||
Reference in new issue
Block a user