keepalive handshake: device_type + keepalive negotiation in UDP/TCP INIT
- Добавлен device_type (1 байт, CLIENT_TYPE_*) в INIT_REQUEST и INIT_RESPONSE - Добавлен keepalive_interval (2 байта) в INIT_RESPONSE - STCP handshake расширен с 43 до 46 байт (device_type+keepalive) - negotiate_keepalive(): оба desktop/server → min, иначе (есть mobile) → max - keepalive_interval вынесен в UTUN_INSTANCE для использования в handshake - stcp_client_connect() принимает device_type и keepalive_interval - peer_device_type/peer_keepalive_interval передаются через stcp_link в ETCP_LINK
This commit is contained in:
1 parent
43aca4a41b
commit
0f1bd3d120
37 files changed
+535
-309
No files matched your search
@@ -97,10 +97,10 @@ int main(void) {
|
||||
sin.sin_port = htons((uint16_t)55555);
|
||||
memcpy(&ts->local_addr, &sin, sizeof(sin));
|
||||
ts->interface_addr = ts->local_addr;
|
||||
ts->next = a->tcp_sockets; a->tcp_sockets = ts;
|
||||
ts->next = a->etcp_sockets; a->etcp_sockets = ts;
|
||||
fprintf(stderr, "Added TCP socket ts=%p next=%p\n", (void*)ts, (void*)ts->next); fflush(stderr);
|
||||
}
|
||||
fprintf(stderr, "tcp_sockets=%p etcp_sockets=%p\n", (void*)a->tcp_sockets, (void*)a->etcp_sockets); fflush(stderr);
|
||||
fprintf(stderr, "etcp_sockets=%p\n", (void*)a->etcp_sockets); fflush(stderr);
|
||||
|
||||
/* Get B's node_id and pubkey from its instance */
|
||||
struct UTUN_INSTANCE* b = utun_instance_create(ua, cb);
|
||||
|
||||
Reference in new issue
Block a user