Commit Graph

340 Commits

Author SHA1 Message Date
levlam
c9f83caf9f Reset server time difference after a "MessageId is too high" error. 2023-05-14 21:58:54 +03:00
levlam
edf0aaaa2a Fix misprint in error message. 2023-05-14 01:41:23 +03:00
levlam
796a1f83c3 Support saving and loading of temporary auth keys. 2023-05-04 15:44:39 +03:00
levlam
78c41b9fef Use local variable for wakeup_at. 2023-04-20 17:24:30 +03:00
levlam
0c638d3531 Avoid duplicate session wake up time logging. 2023-04-20 17:19:38 +03:00
levlam
4b7c1aee03 Add and use Random::shuffle. 2023-04-19 10:02:34 +03:00
levlam
cd20d62c9c Rename Op::string to Op::str to avoid ambiguity. 2023-04-19 00:57:46 +03:00
levlam
afefdbcca0 Update another TLS ClientHello. 2023-04-18 18:24:57 +03:00
levlam
35327de43d Update TlsInit. 2023-04-18 13:32:48 +03:00
levlam
e2d3f2694f Improve future salts logging. 2023-04-03 19:55:12 +03:00
levlam
55223c394f Fix misprint. 2023-04-03 12:15:44 +03:00
levlam
fb4d0daa2f Improve names of some variables. 2023-04-03 01:24:43 +03:00
levlam
1673d2366b Log real pong/read time. 2023-03-14 15:45:01 +03:00
levlam
28e788995a Fix log message. 2023-03-14 15:30:43 +03:00
levlam
70bee089d4 Fix watchOS building. 2023-03-10 13:22:18 +03:00
levlam
aa5093b361 Don't call Callback::on_read for 0 size. 2023-03-08 18:16:08 +03:00
levlam
f670699c8c Improve logging in SessionConnection. 2023-03-08 18:10:07 +03:00
levlam
d2b15d353f Add more logging for invalid pointer alignment. 2023-03-08 13:02:17 +03:00
levlam
22fdc0258b Use "receive"/"have"/"loaded" instead of "got" and other log message improvements. 2023-02-26 14:22:31 +03:00
levlam
ffcc1719ef Improve log message spelling. 2023-02-26 13:41:49 +03:00
levlam
de1c6a0ecd Store last handshake query in string instead of BufferSlice. 2023-02-21 11:02:10 +03:00
levlam
5ed1d22d08 Fix watchOS compilation error. 2023-02-06 15:20:09 +03:00
levlam
0adcac246a Use explicit as_mutable_slice to get MutableSlice. 2023-02-02 17:40:47 +03:00
levlam
1588f0d687 Return after call to on_error. 2023-01-18 17:10:08 +03:00
levlam
d7ea7dfea7 Remove never used AbridgedTransport. 2023-01-10 22:03:17 +03:00
levlam
903d994799 Improve punctuation. 2023-01-02 15:38:04 +03:00
levlam
cf1984844b Update copyright year. 2023-01-01 00:28:08 +03:00
levlam
1f129ecade Simplify update logging. 2022-12-11 01:20:13 +03:00
levlam
8e196d2570 Increase limits for slow operations logging. 2022-09-23 22:29:18 +03:00
levlam
3a579dd5cb Improve warning on long RawConnection::flush. 2022-09-20 17:46:10 +03:00
levlam
74879d9726 Move PerfWarningTimer to SessionConnection::do_flush. 2022-09-19 21:33:23 +03:00
levlam
111018eadd Add logging for some slow operations. 2022-09-15 15:03:19 +03:00
levlam
49f8b1e14c Randomize ping delay for different connections. 2022-08-28 00:49:56 +03:00
levlam
abc9ed2cd9 Minor fixes. 2022-07-14 18:38:48 +03:00
levlam
32bac7bd24 Move Promise to tdutils. 2022-06-27 13:30:18 +03:00
levlam
1b5798393d Move FloodControlGlobal to tdutils. 2022-06-09 17:12:59 +03:00
levlam
a30ac1c277 Minor improvements. 2022-06-09 16:38:38 +03:00
Arseny Smirnov
7941672e79 add some kind of global limit for concurrent hanshakes 2022-06-09 11:10:38 +02:00
Arseny Smirnov
852fe4f24b Session: force ack when we received unknown answer 2022-05-03 17:17:36 +04:00
levlam
b4fda2d45a Use FlatHashMap in mtproto and td_json_client. 2022-02-09 16:05:53 +03:00
levlam
822257b90a Resend requests on CONNECTION_NOT_INITED and CONNECTION_LAYER_INVALID errors. 2022-02-07 22:05:01 +03:00
levlam
b1b945e239 Minor fixes. 2022-01-31 15:56:44 +03:00
Arseny Smirnov
452f60be0b SequenceDispatcher: support multiple chains 2022-01-28 17:06:54 +03:00
levlam
dd1e0af5dc Keep connection header for 3 seconds after successful response. 2022-01-06 21:19:07 +03:00
KnorpelSenf
789b9c0a55 Fix much typos 2022-01-25 16:07:36 +03:00
levlam
8085779cdc Update copyright year. 2022-01-01 03:35:39 +03:00
levlam
01fccc430f Use explicit cast instead of 1ll. 2021-12-31 09:36:24 +03:00
levlam
a6c0902ad7 Silence g++ warnings. 2021-12-01 16:01:27 +03:00
levlam
746c70900b Use different timeouts for different handshake parts. 2021-11-27 22:22:51 +03:00
levlam
b731414d42 Init some fields just in case. 2021-11-11 17:39:09 +03:00
levlam
2431afc722 Add more logging for CHECK. 2021-10-24 13:23:47 +03:00
levlam
c24501f2d9 Reduce "this" usages. 2021-10-23 21:17:00 +03:00
levlam
0c1469f7c6 Fix TransparentProxy::Callback. 2021-10-22 19:59:15 +03:00
levlam
495082b628 Simplify updateChatLastMessage creation. 2021-10-22 16:41:31 +03:00
levlam
9f44816a62 Minor improvements. 2021-10-21 12:51:16 +03:00
levlam
41cc287d66 Improve checks. 2021-10-20 00:54:49 +03:00
levlam
44a186c7c1 Minor improvements. 2021-10-18 19:26:14 +03:00
levlam
81b38d5607 Mark move constructors/assignment operators noexcept. 2021-10-18 14:36:15 +03:00
levlam
f35afe23c8 Minor warning fixes. 2021-10-18 12:57:13 +03:00
levlam
61c3a2bcf5 Remove TD_EXPERIMENTAL_WATCH_OS. 2021-09-24 13:41:22 +03:00
levlam
db18baa503 Unify include order. 2021-09-19 00:47:05 +03:00
levlam
74315e2e60 Add mtproto::ConnectionManager. 2021-09-16 19:09:39 +03:00
levlam
9651243eaa Add more checks that raw_connection_ isn't nullptr. 2021-09-16 16:20:07 +03:00
levlam
075d004b9f Replace getChatThemes with updateChatThemes. 2021-09-13 15:55:01 +03:00
levlam
45ebe775c5 Optimize SessionConnection::on_slice_packet using TlDowncastHelper. 2021-09-12 19:46:12 +03:00
levlam
55e69f65af Add separate on_update callback. 2021-09-10 16:31:04 +03:00
levlam
e6799e3054 Simplify rpc_error handling. 2021-09-10 16:12:56 +03:00
levlam
641f47a81c Use switch instead of if. 2021-09-10 16:08:46 +03:00
levlam
6beaf41231 Minor improvements. 2021-09-01 20:31:39 +03:00
levlam
3749e1f672 Add warning for very old updates. 2021-08-23 00:08:05 +03:00
levlam
6507fb7602 Use array-based MessageIdDuplicateChecker. 2021-08-22 22:08:46 +03:00
levlam
b3aa31d398 Minor cut_tail improvements. 2021-08-22 13:36:47 +03:00
levlam
4a3f56e6c1 Check that updates aren't received in rpc_result. 2021-08-22 13:23:21 +03:00
levlam
7faf7aeba7 Improve logging on too old update. 2021-08-22 13:16:10 +03:00
levlam
d154399d70 Optimize MessageIdDuplicateChecker::check. 2021-08-21 22:41:06 +03:00
levlam
43d9ba81ac Prefer std::unordered_map to std::map. 2021-08-21 21:42:07 +03:00
levlam
ff02c55075 Add checks for error code and message. 2021-07-26 20:04:43 +03:00
levlam
40cb97841a Pass error message as string. 2021-07-26 19:58:31 +03:00
levlam
0b74d17f8c Don't try to continue Handshake if timeout expired. 2021-07-22 19:23:08 +03:00
levlam
7f617254f0 Move HandshakeActor methods to cpp. 2021-07-22 19:03:34 +03:00
levlam
061ca24be9 Simplify AuthKeyHandshake constructor. 2021-07-19 05:09:20 +03:00
levlam
3109848164 Delete unused AuthKeyHandshake methods. 2021-07-19 05:01:14 +03:00
levlam
1f9c6c7352 Minor improvements. 2021-07-16 18:58:11 +03:00
levlam
46aa876259 Use is_*_bad instead of is_*_ok. 2021-07-11 02:21:01 +03:00
levlam
e9e2428237 Update server keys. 2021-07-08 16:39:34 +03:00
levlam
d23064812f Simplify rsa_key usage. 2021-07-06 18:31:43 +03:00
levlam
65e96c561c Add struct RsaKey. 2021-07-05 22:09:45 +03:00
levlam
c60693cc7e Improve AuthKeyHandshake private field names. 2021-07-05 21:26:43 +03:00
levlam
040e0deb31 Move DhCallback to a separate header. 2021-07-05 21:20:07 +03:00
levlam
61664b4044 Move remaining MTProto classes to namespace mtproto. 2021-07-05 21:04:23 +03:00
levlam
4404e47f75 Use TLObjectStorer to store Handshake objects. 2021-07-05 20:38:39 +03:00
levlam
397274daf7 Remove server_DH_params_fail. 2021-07-05 19:45:31 +03:00
levlam
370d443a9d Explicitly specify inheritance mode. 2021-07-04 18:22:20 +03:00
levlam
40c5d47717 Make inherited classes final if possible. 2021-07-04 05:58:54 +03:00
levlam
edfa5d1d98 Use final instead of override. 2021-07-03 23:51:36 +03:00
levlam
bed2650b4c Fix secret chat creation. 2021-07-02 03:25:09 +03:00
levlam
8a418e9e03 Use Status::move_as_error_suffix to keep error type. 2021-06-14 01:24:15 +03:00
levlam
69cd3e9ced Improve header name. 2021-06-02 16:22:30 +03:00
levlam
1554044a84 Simplify removing packet padding. 2021-06-02 01:50:00 +03:00
levlam
9cecc116f3 Prefer US spelling of "canceled". 2021-05-31 21:51:48 +03:00