evgeny
d9eee4e520
Bound and safely serialize PM conversation snapshots
3 weeks ago
evgeny
e562896d63
Define asynchronous conversation snapshots for PM clients
3 weeks ago
evgeny
4cabbc32f5
Fit file chunks within the signed router packet limit
3 weeks ago
evgeny
139356bd18
Deliver DM history snapshots asynchronously as JSON events
3 weeks ago
evgeny
1cdead18de
Expose bounded DM history snapshots with text and media delivery state
3 weeks ago
evgeny
b47918fad5
Keep media publication and durable deletion off the event loop
3 weeks ago
evgeny
55c9d79a01
Integrate atomic media registration and orderly transfer/worker shutdown
3 weeks ago
evgeny
d7a12b24bf
Coordinate offline DM media custody and durable deletion on supernodes
3 weeks ago
evgeny
41fc5902be
Implement durable DM downloads, media-node custody, quota and expiry
3 weeks ago
evgeny
e47c7fb2ac
Allow file owners to revoke active transfers on custody expiry or deletion
3 weeks ago
evgeny
84c148acff
Prepare and publish target-encrypted DM files with exact media receipts
3 weeks ago
evgeny
d559cbf473
Add configurable seven-day DM custody TTL and reserved storage quota
3 weeks ago
evgeny
5e9a9059c8
Bind signed file descriptors to atomic DM enqueue and receive
3 weeks ago
evgeny
27fa3a4812
Define independent DM media metadata, receipts and custody contracts
3 weeks ago
evgeny
3d0ab35efe
Register file transfer and DM media services in the common core
3 weeks ago
evgeny
f39ba840b8
Add bounded signed file transfers with per-operation CM ownership
3 weeks ago
evgeny
0e0f611d3c
Check atomic DM enqueue rollback and explain sequence conflicts
3 weeks ago
evgeny
467d2e7605
Prepare DM media as authenticated records using target key
3 weeks ago
evgeny
10de4f1c71
Commit DM activity timestamps together with message state
3 weeks ago
evgeny
794d7b70f3
Authorize DM custody by signed group role instead of NAT type
3 weeks ago
evgeny
3cdb3e6580
Create DM router streams before checking queue capacity
3 weeks ago
evgeny
5800902a42
Deliver offline DM through durable supernode custody
3 weeks ago
evgeny
cc072cceb2
Persist DM outbox and verify exact delivery receipts
3 weeks ago
evgeny
67bbf80769
Fix DM CCM length setup and separate media nonces
3 weeks ago
evgeny
50e3db81ea
Separate playback backlog from adaptive call reserve
3 weeks ago
evgeny
d8745fd303
Measure call jitter from media delivery timestamps
3 weeks ago
evgeny
5487bc8c20
call: suppress loss tone until first received PCM
3 weeks ago
evgeny
426fc2f4e8
conn_mgr: verify route loss and document handle lifetime recovery
3 weeks ago
evgeny
a65ef30d78
conn_mgr: resume recovery when local sockets change
3 weeks ago
evgeny
8f5f2b089c
conn_mgr: keep demand alive across bounded recovery attempts
3 weeks ago
evgeny
111432aa64
conn_mgr: race connection probes and report call path with correct RTT
3 weeks ago
evgeny
1c51df039f
Fix call gap tone to follow 500ms of missing jitter PCM
3 weeks ago
evgeny
9e3a417059
Synchronize standby transitions and immediate keepalive phase announcements
3 weeks ago
evgeny
3c5c9604b3
Keep Android calls active independently of screen and UI
3 weeks ago
evgeny
2d21c53b4b
Improve call buffering, CM handle lifecycle and radio PTT controls
3 weeks ago
evgeny
7ebc282eb2
Prioritize supernodes in invites and update chat background and ringtone
3 weeks ago
evgeny
0d44ada922
Improve Android radio capture lifecycle, VAD and PTT controls
3 weeks ago
evgeny
52ffb91101
Fix TCP proxy use-after-free during synchronous close
3 weeks ago
evgeny
556b0bc7b7
call/radio: mic AGC compressor + selectable input device; proximity lock
4 weeks ago
evgeny
f12f61d7ee
call: add SpeexDSP AEC (acoustic echo cancellation) for desktop + Android
4 weeks ago
evgeny
1176411b79
radio: Silero VAD + auto-PTT; chatgui/android: app icon and background
4 weeks ago
evgeny
74ca98b38f
proxy: rename pcb guard, dedupe abort; tasks: FIN_WAIT_2 leak
4 weeks ago
evgeny
961a234d7d
proxy: detach lwIP pcb on local close, guard abort against freed pcb
...
При half-close (exit закрылся первым, браузер держит соединение) pcb уходил в
TIME_WAIT, а conn_finish ждал flow.fin_sent (доставку FIN в exit) — при backpressure
это не наступало, pc->pcb оставался висячим. Таймер TIME_WAIT освобождал pcb без
err_cb, и CLOSE_ALL давал double free. Теперь pcb отсоединяется по завершении
локальной стороны, а tcp_abort/tcp_close защищены проверкой memory_pool_is_freed.
4 weeks ago
evgeny
a73ae13df4
lwip/proxy: trace PCB lifetime in debug category, drop old noisy debug
4 weeks ago
evgeny
e1946b208d
Preserve proxy TCP streams across connect, backpressure and FIN
4 weeks ago
evgeny
09bc8c35c5
Release TUN proxy connections when lwIP aborts their PCB
4 weeks ago
evgeny
f19ff11b36
Scope TCP proxy streams and restart messages to their peer
4 weeks ago
evgeny
268243feeb
Isolate datagram proxy state and replies between instances and peers
4 weeks ago
evgeny
4be1e62251
Parse IPv4 options and reject malformed TUN proxy packets
4 weeks ago
evgeny
10b66e2ad0
Validate SOCKS5 authentication and destination addresses
4 weeks ago