ZaStoGram/TMessagesProj/jni/tgnet
Repository files (latest commit first)
Filename Latest commit message Latest commit date
loop-uh dadaf092de
Some checks failed
ZaStoGram source guards / guards (push) Has been cancelled
Build three ZaStoGram APKs / build (arm64-v8a, ZaStoGram-standalone-arm64-v8a, Arm64, arm64) (push) Has been cancelled
Build three ZaStoGram APKs / build (armeabi-v7a, ZaStoGram-standalone-armeabi-v7a, Armv7, armv7) (push) Has been cancelled
Build three ZaStoGram APKs / build (x86, ZaStoGram-standalone-x86, X86, x86) (push) Has been cancelled
Резать WSS-кадры по границам MTProto-пакетов
Официальный релей разбирает только ПЕРВЫЙ MTProto-пакет каждого
WebSocket-кадра и молча выбрасывает всё, что идёт следом. Проверено
живыми соединениями 9 августа 2026: msgs_ack и req_DH_params, отправленные
двумя кадрами, дают server_DH_params_ok, а те же два пакета, склеенные в
один кадр, не получают ответа вовсе — ни ошибки, ни закрытия.

Именно это ломало создание ключа для датацентра: перед вторым шагом
рукопожатия клиент шлёт подтверждение (Handshake.cpp), байтовый транспорт
склеивал его со следующим пакетом, и рукопожатие висело вечно. Без ключа
все запросы к датацентру оставались в очереди, а картинки оттуда не
грузились при внешне рабочем соединении.

Предыдущий вывод «границы MTProto-пакетов роли не играют» был ошибочным:
он опирался на проверки, где в кадре был ровно один пакет, и потеря
второго была не видна. Теперь размеры пакетов записываются при постановке
в очередь, а кадр выпускается ровно по границе; страж это фиксирует.

Заодно страж прогрева прокси приведён к новой схеме дедупликации логов.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-09 14:22:17 +03:00
..
transport Перевести WSS на непрерывный байтовый поток 2026-08-08 19:43:26 +03:00
wss Гарантировать 64 байта в первом кадре WSS 2026-08-08 21:24:39 +03:00
ApiScheme.cpp update to 12.9.0 (6966) 2026-07-16 16:46:05 +04:00
ApiScheme.h update to 12.9.0 (6966) 2026-07-16 16:46:05 +04:00
BuffersStorage.cpp Add network debug logging with throttling and metrics 2026-06-27 20:03:11 +03:00
BuffersStorage.h Add network debug logging with throttling and metrics 2026-06-27 20:03:11 +03:00
ByteArray.cpp Update to 5.2.1 2019-01-23 20:03:33 +03:00
ByteArray.h Update to 4.9.0 2018-07-30 09:07:02 +07:00
ByteStream.cpp Update to 5.11.0 2019-09-10 13:56:11 +03:00
ByteStream.h Update to 4.9.0 2018-07-30 09:07:02 +07:00
Config.cpp Update to 5.2.1 2019-01-23 20:03:33 +03:00
Config.h Update to 4.9.0 2018-07-30 09:07:02 +07:00
Connection.cpp Резать WSS-кадры по границам MTProto-пакетов 2026-08-09 14:22:17 +03:00
Connection.h Isolate direct transport from MTProxy lifecycle 2026-08-05 16:18:41 +03:00
ConnectionSession.cpp Update to 5.2.1 2019-01-23 20:03:33 +03:00
ConnectionSession.h Update to 5.2.1 2019-01-23 20:03:33 +03:00
ConnectionsManager.cpp Не заливать лог запросами, ждущими ключ датацентра 2026-08-09 13:55:18 +03:00
ConnectionsManager.h Не заливать лог запросами, ждущими ключ датацентра 2026-08-09 13:55:18 +03:00
ConnectionSocket.cpp Резать WSS-кадры по границам MTProto-пакетов 2026-08-09 14:22:17 +03:00
ConnectionSocket.h Резать WSS-кадры по границам MTProto-пакетов 2026-08-09 14:22:17 +03:00
ConnectionSocketStateMachine.cpp Перевести WSS на непрерывный байтовый поток 2026-08-08 19:43:26 +03:00
ConnectionSocketStateMachine.h Резать WSS-кадры по границам MTProto-пакетов 2026-08-09 14:22:17 +03:00
Datacenter.cpp update to 11.9.1 (5900) 2025-05-01 02:05:36 +04:00
Datacenter.h Update to 8.8.2 2022-06-21 06:51:00 +04:00
Defines.h Proxy lifecycle ownership, plugin infra, editable forwarding 2026-07-04 17:38:27 +03:00
EventObject.cpp Update to 4.9.0 2018-07-30 09:07:02 +07:00
EventObject.h Update to 4.9.0 2018-07-30 09:07:02 +07:00
FileLog.cpp Extract mtproxy module with unified retry authority 2026-07-02 18:25:13 +03:00
FileLog.h Extract mtproxy module with unified retry authority 2026-07-02 18:25:13 +03:00
Handshake.cpp update to 11.9.1 (5900) 2025-05-01 02:05:36 +04:00
Handshake.h update to 10.13.1 (4845) 2024-06-03 10:21:03 +04:00
MTProtoScheme.cpp update to 11.8.0 (5771) 2025-03-10 17:15:31 +04:00
MTProtoScheme.h update to 11.8.0 (5771) 2025-03-10 17:15:31 +04:00
NativeByteBuffer.cpp update to 9.7.0 (3687) 2023-07-21 00:15:36 +04:00
NativeByteBuffer.h Update to 4.9.0 2018-07-30 09:07:02 +07:00
ProxyCheckInfo.cpp update to 9.5.5 2023-03-24 15:38:14 +04:00
ProxyCheckInfo.h Extract mtproxy module with unified retry authority 2026-07-02 18:25:13 +03:00
Request.cpp update to 11.2.3 (5335) 2024-10-18 00:04:16 +04:00
Request.h update to 11.8.0 (5771) 2025-03-10 17:15:31 +04:00
Timer.cpp Update to 5.2.1 2019-01-23 20:03:33 +03:00
Timer.h Update to 4.9.0 2018-07-30 09:07:02 +07:00
TLObject.cpp Update to 4.9.0 2018-07-30 09:07:02 +07:00
TLObject.h Update to 4.9.0 2018-07-30 09:07:02 +07:00