Commit Graph

907 Commits

Author SHA1 Message Date
levlam
b342ec33e5 Likely add Solaris support. 2021-04-30 02:34:12 +03:00
levlam
f00d562c5b Silence expected warning. 2021-04-30 01:26:02 +03:00
levlam
e1fc85d610 Print warnings about unsupported OS/compiler only once. 2021-04-30 01:24:42 +03:00
Joshua M. Clulow
ed291840d3
add illumos support (#1501) 2021-04-29 16:40:08 +03:00
levlam
564b44d3b9 Fix ifdef check. 2021-04-08 22:17:55 +03:00
levlam
6e099908cf Don't use sendmsg on Android. 2021-04-08 14:55:54 +03:00
levlam
9bb79b4b27 Ignore invalid Unicode strings in C++/CX. 2021-04-08 14:43:47 +03:00
levlam
02c9caafc0 Fix FromApp building for UWP. 2021-04-04 23:40:05 +03:00
levlam
c36ed586e2 Fix MoveFileExFromAppW. 2021-04-04 02:58:59 +03:00
levlam
2ab94b9ca7 Add checks that SocketFd::read/write/writev return correct response. 2021-04-04 01:08:53 +03:00
levlam
e246201cf0 Add checks that FileFd::read/write/pread/pwrite/writev return correct response. 2021-04-04 00:47:30 +03:00
levlam
6285d98479 Fix writev on Windows. 2021-04-04 00:40:37 +03:00
levlam
40740597f7 Add ChainBufferReader::advance debug. 2021-04-02 16:30:10 +03:00
Arseny Smirnov
a51b63afdd more checks for watch os version 2021-03-29 16:26:11 +03:00
levlam
4df03c8491 Clamp float numbers before conversion to integers. 2021-03-28 22:33:22 +03:00
Arseny Smirnov
5c7b7d4c85 TD_EXPERIMENTAL_WATCH_OS cmake option 2021-03-26 18:04:25 +03:00
levlam
1c92315439 Fix lpad0 signature. 2021-03-15 18:39:02 +03:00
Arseny Smirnov
0c90ca3784 some cryptography draft 2021-02-10 23:25:28 +03:00
levlam
e031a2c6c1 Improve Slice::truncate usage. 2021-02-04 15:54:12 +03:00
levlam
9e37c85af3 Minor improvements. 2021-01-27 02:57:59 +03:00
levlam
fc2941763b Fix LibreSSL 3+ support. 2021-01-24 21:59:03 +03:00
levlam
62c18729f1 Fix td::unique. 2021-01-07 04:03:38 +03:00
levlam
82f0386e73 Move some functions from misc.h to algorithm.h. 2021-01-01 16:01:03 +03:00
levlam
52c1da0a70 Update copyright year. 2021-01-01 15:57:46 +03:00
levlam
677f4f6103 Add missing license. 2021-01-01 01:33:43 +03:00
levlam
192fd4862f Use td::unique. 2020-12-30 18:50:57 +03:00
levlam
18be33a18c Add td::unique helper method. 2020-12-30 18:17:22 +03:00
levlam
3c5c23aeec Improve error message. 2020-12-26 20:25:59 +03:00
levlam
c1a1fc881c Fix BufferedStdinImpl destruction. 2020-12-24 20:49:08 +03:00
levlam
47e413e0b8 Fix BufferedStdinImpl reference counter. 2020-12-24 19:17:06 +03:00
levlam
b582eb346a Undo move_as_native_fd changes. 2020-12-24 18:43:26 +03:00
levlam
1b92e2d57a Return back ScopeExit usage. 2020-12-24 17:16:56 +03:00
levlam
c1a16acd53 Don't check that Stdin/Stdout/Stderr are unlocked on exit. 2020-12-24 17:12:50 +03:00
levlam
0787c642ce Fix dlog_print usage on Tizen. 2020-12-23 19:38:58 +03:00
levlam
d628f9fa02 FromApp method fixes. 2020-12-23 18:08:34 +03:00
Fela Ameghino
7c14b3b881
Use *FromApp methods when available (#1303) 2020-12-23 11:25:27 +03:00
levlam
7d1e5bca55 Reimplement HMAC for OpenSSL 3.0.0. 2020-12-22 19:32:57 +03:00
levlam
abdc727a0f Improve OpenSSL 3.0 compatibility. 2020-12-22 17:46:56 +03:00
levlam
a093d36b3f Better fix for ThreadIdGuard destroy after exit. 2020-11-23 00:57:52 +03:00
levlam
4b687582c1 Do not try to use ThreadIdManager after exit. 2020-11-23 00:38:16 +03:00
levlam
77de5110f5 Ensure that Time::now never returns negative time. 2020-11-21 20:33:15 +03:00
levlam
6ae33a5c27 Fix OptionParser test on Windows. 2020-11-20 03:33:09 +03:00
levlam
57de0c4967 Fix some warnings. 2020-11-20 03:11:27 +03:00
levlam
34cf869c02 Don't use EVP_aes_256_ctr before OpenSSL 1.1.0. 2020-11-20 02:18:12 +03:00
levlam
15b1543e20 Implement OS detection in Emscripten. 2020-11-13 18:04:16 +03:00
levlam
6a2dba9e8c Disable IPV6_V6ONLY on IPv6 server sockets on Windows. 2020-11-10 23:08:54 +03:00
levlam
7febd4f9af Support binding of ServerSocket to IPv6 address. 2020-11-10 00:50:05 +03:00
levlam
f9a600c401 Minor fixes. 2020-11-08 14:00:36 +03:00
levlam
431b0bddbc Fix GCC warning. 2020-11-06 18:27:33 +03:00
levlam
7e82a54417 Fix std::is_trivially_copyable usage. 2020-11-06 18:27:19 +03:00
levlam
c1de6a7d8d Minor improvements.
GitOrigin-RevId: eb8b201d80405feb6972b2eabc7de30d40aa8b81
2020-11-02 00:43:57 +03:00
levlam
36763888d4 Improve Usage output in OptionParser.
GitOrigin-RevId: 8955f6ce0643fbf871b3f3781bd36568d490eb6c
2020-11-01 01:28:58 +03:00
levlam
da6d1d8d74 Add rpad.
GitOrigin-RevId: 5dbc3667ef3e4ffd35cce4a358b3b986ec9bd8f4
2020-10-30 16:21:13 +03:00
levlam
989491466d Add lpad function.
GitOrigin-RevId: d23ef15d200e2b199294de0d10a10e92d7389339
2020-10-22 12:22:35 +03:00
levlam
1ad0b068cd Improve oneline.
GitOrigin-RevId: 6cec8e407f0f5eedb367aea25864033a69e1d1e5
2020-10-22 12:09:32 +03:00
levlam
fa91220f88 Remove superflous "struct " specifiers.
GitOrigin-RevId: 317d66fad270e99c4c4e6bc14b172f4c2eec3d6d
2020-10-18 18:29:51 +03:00
levlam
fc5bf9ef06 Suppress SIGPIPE signals on write.
GitOrigin-RevId: 19ff2a079a4dc69535e34282bfb2c2f381856def
2020-10-18 18:12:32 +03:00
levlam
22be9b95bf Do not include set in broadly used format.h.
GitOrigin-RevId: 81c2113ef5bfe48868a3a2968efd6cadb1cfccf3
2020-10-11 21:31:01 +03:00
levlam
10a7edfbea Disable logging after program exit.
GitOrigin-RevId: 8ca24e1999fe95f171e18477baa2e56912a2e895
2020-10-11 14:45:22 +03:00
levlam
09f906f192 Protect access to some static variables using ExitGuard.
GitOrigin-RevId: 65c7510c60d585b90e90d09067c7dfdaf79c4cd3
2020-10-11 01:59:27 +03:00
levlam
7207d76a80 Add ExitGuard.
GitOrigin-RevId: f8f04daacbee00386e326eb3ca1ec3dfec19cbb0
2020-10-10 22:37:36 +03:00
levlam
35a9a93fc9 Fix std::...::erase return value usages.
GitOrigin-RevId: d9729ccd619e3b99554f1e1c2262d8826f0a8571
2020-10-08 23:04:40 +03:00
Arseny Smirnov
44e3c6fb58 Revert "Closure.h: use static_assert instead of LOG(FATAL)"
This reverts commit a17ebc84d49ce763ffa64c8db0f85638bb5ace63.

GitOrigin-RevId: deae227b726bdcaead7d7b49f2171a438f58e2c7
2020-10-09 19:56:05 +03:00
Arseny Smirnov
5926e00320 tdweb works with newest emsdk
GitOrigin-RevId: b52ab5d9e182e1a689933d7a44d3306f0c9151e5
2020-10-08 14:02:53 +03:00
Arseny Smirnov
958b16b8a3 Closure.h: use static_assert instead of LOG(FATAL)
GitOrigin-RevId: a17ebc84d49ce763ffa64c8db0f85638bb5ace63
2020-09-09 19:42:37 +03:00
levlam
582206d641 Use Random::fast_bool.
GitOrigin-RevId: 42da8a237c6dfbb6e72bc5b21482891b6c9d58b5
2020-10-08 12:56:08 +03:00
levlam
291a9ff43b Add Random::fast_bool.
GitOrigin-RevId: 1f7ec3d4a04dcadbdffde18994e7a29f3d22aedc
2020-10-08 12:47:03 +03:00
levlam
d2d0cb5cc0 Move log tags definitions out of logging.cpp.
GitOrigin-RevId: 0e74b94ec194f8ee678bb77a04d35df46702b330
2020-10-05 18:07:23 +03:00
levlam
16615d75e8 Fix integer conversion.
GitOrigin-RevId: 7ba9a274f6bff6733818596a676c5169bda24acf
2020-09-30 22:04:57 +03:00
levlam
0c1e5816d4 Fix CE.
GitOrigin-RevId: 642a7ef5ef39d8513acffb1d812546c2e7bd066d
2020-09-30 22:02:39 +03:00
levlam
705102cba0 Optimize AES CBC.
GitOrigin-RevId: f514011f11ebbea7b6198b9c905a61a990d4e4fe
2020-09-27 21:51:42 +03:00
levlam
9322bf68cd Move test functions implementation to cpp.
GitOrigin-RevId: eec1d208f410a3f546dfe230d1780ecdac02d3b4
2020-09-27 20:38:23 +03:00
levlam
a9a3acf135 Delete unused AesCtrCounterPack and XorBytes classes.
GitOrigin-RevId: 95906d3d54c16928a1250a511e1e66aa8e59c5c6
2020-09-27 15:47:22 +03:00
levlam
4d67801710 Use EVP_aes_256_ctr for AES CTR implementation.
GitOrigin-RevId: e9218b6eec8f5e4a11eea24324f6c8478f6f1293
2020-09-27 15:46:11 +03:00
levlam
2e50410dcc Allow to disable stderr redirect when logging to file.
GitOrigin-RevId: 7b91d362695cd73a640a9ed2a5d107b804536a16
2020-09-27 14:37:35 +03:00
levlam
90ee4bd63c Minor fixes.
GitOrigin-RevId: ef4e2cfe4f198caec26daf04423eb26afedde5bb
2020-09-24 19:15:42 +03:00
levlam
4357a24a1c Fix aes_ige_encrypt/aes_ige_decrypt.
GitOrigin-RevId: 7f4a7f86e1fbabe5bfe020fe95586a6030765977
2020-09-22 18:05:58 +03:00
levlam
21969e4d02 Fix print_int.
GitOrigin-RevId: caff5ca11c300aef7658a029028d252253c4176c
2020-09-20 22:51:03 +03:00
levlam
72b63e2533 Support Unicode command line arguments on Windows.
GitOrigin-RevId: c4e20183cac0e98964850fb6a78c020996489bc1
2020-09-14 23:32:13 +03:00
levlam
98adef1145 Move url_decode to tdutils.
GitOrigin-RevId: bd9ef4caa56996a96626b16998b423ab304b9ee6
2020-09-14 18:58:39 +03:00
levlam
16bd7bd98e Add checks that delete is not called for incomplete type.
GitOrigin-RevId: 19755ebbee56eb874e84fd8544899fd70a78df7f
2020-09-14 18:11:34 +03:00
levlam
0ad6ff0599 Add usage in OptionParser.
GitOrigin-RevId: 0a15b69eda345c0fbc503afc26c6787f5fbcaa8e
2020-09-14 17:04:45 +03:00
levlam
bc000b5a53 Add OptionParser::parse_string helper.
GitOrigin-RevId: 506b1d9c1b6cfb6029bb87e32a98f08b0d16b2d4
2020-09-14 14:51:52 +03:00
levlam
91942f29d3 Add OptionParser::parse_integer helper function.
GitOrigin-RevId: d202848b64c27bb260e189783722508684b633c5
2020-09-14 14:45:22 +03:00
levlam
b8e0201694 Align long options in OptionParser usage.
GitOrigin-RevId: 496c90e876c02ba923e3d7dac7e04a57b4e9766c
2020-09-14 14:33:42 +03:00
levlam
96835d417b Improve OptionParser error messages.
GitOrigin-RevId: 97795e0a64122986e78d01a34205317fc5bef835
2020-09-14 14:22:43 +03:00
levlam
d46fa34869 Fix Linux CE.
GitOrigin-RevId: 7758d3fe4cc16210338f739e2dcc748d55e808a5
2020-09-02 17:22:30 +03:00
levlam
07237a18be Fix Logger const-correctness.
GitOrigin-RevId: 437ed337638a9841f7695fd77b89191f1b36c584
2020-09-02 17:10:10 +03:00
levlam
2c4953386a Optimize logging of const strings.
GitOrigin-RevId: af8de902d07c4862a77e0d8050db47ee1ccacbf6
2020-08-20 22:28:00 +03:00
levlam
f266aa3912 Minor fixes.
GitOrigin-RevId: a4aacfa1ecab2718475d32bcbd99f9671ba7e982
2020-08-14 22:51:10 +03:00
Arseny Smirnov
9c40e37288 Clocks: use CLOCK_[BOOTTIME,MONOTONIC_RAW] for Clocks::monotonic
GitOrigin-RevId: 729311e1a7a36a9245ecdb5921b81c4834ec1dc6
2020-08-14 20:41:00 +03:00
Arseny Smirnov
775ef44ed8 Clocks: use CLOCK_[UPTIME|UPTIME_RAW|BOOTIME] when possible for Clocks::monotonic
GitOrigin-RevId: d0aeb9d98d54b298093cba3b2ca97c6ab16eba28
2020-08-14 19:51:45 +03:00
levlam
b6c915c2f8 Fix BufferSlice self-move.
GitOrigin-RevId: 904ea326cc860dd92c49d319fc5fabde22a35223
2020-08-11 07:23:25 +03:00
levlam
14014e3f3d Do nothing for 0 BufferSlice size change.
GitOrigin-RevId: 2a57325e4f8b7be83db671f561bce9a98de92622
2020-08-11 05:52:56 +03:00
levlam
fe5bf41980 Minor improvements.
GitOrigin-RevId: 45477784ae1840f217b9394e3d0cc56e1241f9ce
2020-08-07 22:14:42 +03:00
Arseny Smirnov
c48ef93e1e tdutils: add skip_eintr_timeout and use it for EventFd
GitOrigin-RevId: 716218731f914e89e6f1e542054298380441b522
2020-08-07 18:50:33 +03:00
levlam
e4ecebc6bb Do not include unused headers on Windows.
GitOrigin-RevId: bf9d0c15d6271019253fe4157c9db42c34528f7b
2020-08-07 11:59:21 +03:00
levlam
4455b66e8b Fix BufferSlice size statistics.
GitOrigin-RevId: 2dcfeb4981435b93106df5817c849df8a94ba14f
2020-08-05 03:21:10 +03:00
levlam
5749ddf33d Minor fixes.
GitOrigin-RevId: 6d9a609ab9c773d1e4f3fe81f84947e142e15f35
2020-08-04 22:48:23 +03:00
Arseny Smirnov
e75860b2ae BufferSlice: stats of total BufferSlices size
GitOrigin-RevId: df712161ba00c4f3d6eae9b6459c69ee046a9bda
2020-08-04 21:37:47 +03:00
Arseny Smirnov
f74d8ba023 tests: create Test instance only when it is needed
GitOrigin-RevId: 06bd6063018040bfee9e3081d77c24683940eb34
2020-08-04 15:22:16 +03:00
levlam
951e35e493 Minor logging speed up.
GitOrigin-RevId: a6c514665465d3527123a3847790a77e61ce534a
2020-08-04 01:39:52 +03:00
levlam
d6b2fc0e17 Improve MemoryLog buffer size checks.
GitOrigin-RevId: f7f270f7e2587aadb5d682aca4c7279dd27d770f
2020-08-04 01:23:48 +03:00
levlam
37e87bddf5 Improve MemoryLog.
GitOrigin-RevId: 8ba9661f6b673ca0082f7bd4d75b2046faed93fe
2020-08-04 01:19:45 +03:00
levlam
4cbc6035e7 Minor logging speed improvement.
GitOrigin-RevId: b09db1051a11e477f20bfb35fd9a37c9173a8c2a
2020-08-04 01:07:49 +03:00
levlam
4a0eeb5792 Significantly improve logging speed.
GitOrigin-RevId: 5ac20138653e0d43b729406296f6dc1c2d790dd7
2020-08-03 23:38:28 +03:00
levlam
f7011a3853 Remove legacy LogInterface::append method.
GitOrigin-RevId: 36869b2f405ed9af7b97845285d336b6dce1b480
2020-08-02 05:14:08 +03:00
Arseny Smirnov
bbea867145 TsList: make lock non-static again
GitOrigin-RevId: 7df7dee8bf609f928b351b448c9e132fb2118942
2020-07-31 16:07:07 +03:00
Arseny Smirnov
cacabaf6d1 NetQueryStats
GitOrigin-RevId: 5a04b322e12e2838b1d7f812fcf06bff4eefbace
2020-07-30 17:28:56 +03:00
levlam
2b685a2396 Use lowercase includes under MinGW.
GitOrigin-RevId: e3d10420725def0b9b05ecea0aecfffaa2d13ce9
2020-07-26 17:14:38 +03:00
levlam
b45f8ba3a0 Minor fixes.
GitOrigin-RevId: b7985efd4257bc9bb2b2672f94c5f5671e19dd0f
2020-07-26 14:24:30 +03:00
Arseny Smirnov
47d2e8276a SslStream: fix ByteFlow logic
GitOrigin-RevId: 37e5ecd1480e0bb3035ea5ce0f10261cedfd1612
2020-07-24 18:49:33 +03:00
Arseny Smirnov
2b52849b70 TsList: fix race in 'validate'
GitOrigin-RevId: 8006f9f6861557d9232008bc4dd6bb78f2173e3a
2020-07-24 12:32:27 +03:00
levlam
33ba70b3e4 Fix warning.
GitOrigin-RevId: 8e948bb9cf9c6f9441c3665579334eaa3e963408
2020-07-23 21:47:34 +03:00
levlam
a02f8d610d Speed up tests execution.
GitOrigin-RevId: 5bcac989d87a04ef8510c47232e3525c4e610073
2020-07-23 17:59:48 +03:00
Arseny Smirnov
c4921adcad Gzip: more tests (with watermark and memory limit)
GitOrigin-RevId: b8eacf5a27d646b9265d2fe43b847888ad58f5af
2020-07-23 16:39:13 +03:00
Arseny Smirnov
93e0a10ffb ByteFlow: bugfix and test improvement
GitOrigin-RevId: 53f684cc96c52cbde4cb2109670f57714724fccc
2020-07-23 14:39:28 +03:00
levlam
813e2b2961 Fix misprint.
GitOrigin-RevId: cec8d77edaf44c5527af694300118ad28748f5f4
2020-07-23 02:12:00 +03:00
levlam
f8fd7e410e Fix signal handler reset on Windows.
GitOrigin-RevId: 5ca829e660728b054ee6413ac4899e109827ea81
2020-07-22 23:18:54 +03:00
Arseny Smirnov
9ea1bc824f ByteFlow: backpressure draft
GitOrigin-RevId: 09adce82dd88fcf84f41e525e45b07da03acc0f6
2020-07-22 21:52:00 +03:00
levlam
8049a55081 Minor.
GitOrigin-RevId: 9ce34cfb96d0a86a71d95f1d12d8365d268285e0
2020-07-21 19:48:01 +03:00
Arseny Smirnov
38ef3a75cc PollableFd: explicit sync_with_poll
GitOrigin-RevId: 71fa35a594816e84e372ebcfa9d0077a13f26a62
2020-07-21 18:29:39 +03:00
levlam
ceb49d0143 Simplify parser.start_with usage.
GitOrigin-RevId: 465e51bba514259ebe15976d2612e1a46754a841
2020-07-21 14:24:55 +03:00
levlam
23534d218f Use static mutext in TsList.
GitOrigin-RevId: 00bd863b3d5499d463e838771fe5e4bc9b16a31e
2020-07-21 02:05:15 +03:00
levlam
6b00f2fe6b Update cache after profile photo deletion instead of dropping it.
GitOrigin-RevId: 0bb120eeececb7706016aec01accd4f6194deef4
2020-07-20 17:05:49 +03:00
levlam
01d768ff7e Use global namespaces in defines.
GitOrigin-RevId: f4bb51050ae51d4ff2baddd23dbd0e237f4b8283
2020-07-19 22:00:47 +03:00
levlam
37fa018c28 Increase max content size in HttpReader.
GitOrigin-RevId: c31b929989d4ab3d4baf6e487488a27b190a11c1
2020-07-19 13:17:05 +03:00
levlam
3f2e269162 Fix FloodControlStrict.
GitOrigin-RevId: 664841f3e58cce5bce3ad90ef42f23537dc07c16
2020-07-16 22:36:59 +03:00
levlam
060c01ace3 Minor improvements.
GitOrigin-RevId: b4e5073248377d84cb8acdf4a032970ec5cf5df9
2020-07-14 20:54:38 +03:00
Arseny Smirnov
9b98451c43 IPAddress: function to clear interface part of ipv6
GitOrigin-RevId: ff738e215e458bc9e7257e9a89c318fb01cdb345
2020-07-14 17:22:40 +03:00
levlam
76056bebf8 Fix ARM MSVC CE with "alignas(16) will be ignored" error.
GitOrigin-RevId: cd8c12dab843c5f8a1a93e71df75d6bb6fd5c573
2020-07-14 17:14:35 +03:00
levlam
06576b909b Fix warning.
GitOrigin-RevId: ae3d69f8c8353c996ac97e949cb473c08838ef68
2020-07-14 04:09:06 +03:00
levlam
7767842d4c Minor fixes.
GitOrigin-RevId: b9f67c5e5edf818610c1739533f01a7873e6e1b6
2020-07-14 03:37:04 +03:00
levlam
cae55c5a54 Fix misprint.
GitOrigin-RevId: 0659d2d6949a03234a0951aca8652dec9a692636
2020-07-13 23:13:41 +03:00
levlam
c89412e175 Minor improvements.
GitOrigin-RevId: 8942b7461a1c83f963510c9884cd003948967fd0
2020-07-13 21:49:07 +03:00
levlam
9f914e3607 Improve time output in tests.
GitOrigin-RevId: 0ec28f2963de5ad2389f8e8237797ef4aa049625
2020-07-13 15:59:19 +03:00
levlam
32d7822746 Remove LogOptions copying.
GitOrigin-RevId: 1483e8978387719a8b4b1736a1cf0c8a5b2e5301
2020-07-12 15:08:50 +03:00
levlam
a7bd0c3932 Add photo to *FullInfo.
GitOrigin-RevId: 21346a0880239abe428799fa58b9132abded6f13
2020-07-06 15:26:29 +03:00
levlam
93ab72b560 Fix test.
GitOrigin-RevId: a260847020eec7827b5aef453e42d9b8606ecae6
2020-07-04 03:05:45 +03:00
levlam
8872fbf6ac Fix tdutils after merge.
GitOrigin-RevId: 5b9a863e405a9e3782157570156fda71bf2bb589
2020-06-26 02:24:13 +03:00
Arseny Smirnov
fd6423dedf update tdutils from another project
GitOrigin-RevId: 79b8eb2ba229d733f82dbb17b8bd7f27471c9472
2020-06-24 14:47:36 +03:00
levlam
afcf7197ae Unify constant name style.
GitOrigin-RevId: 660f8aa17fa856c828e6c11ade6c497a82cb7612
2020-06-22 02:40:05 +03:00
levlam
4ae7bc23dc Add two ways for OS version detection on Darwin.
GitOrigin-RevId: cddea795e5d289b1fe15d88fc99db51e42c7138e
2020-06-20 02:39:33 +03:00
levlam
79808f6dd2 Add /etc/os-release support on Linux.
GitOrigin-RevId: 066c8dc879719539aff88cec1b7424824267bdbc
2020-06-20 01:16:29 +03:00
levlam
47229e1dab Add expected_non_option_count to OptionParser.
GitOrigin-RevId: 41bf15d9bddf1673c0c421ef9e5108a5678f9842
2020-06-19 06:00:01 +03:00
levlam
251318d2da Add OptionParser::add_check.
GitOrigin-RevId: dbf50403ba264ddf04b50197f0b54500c8f761ce
2020-06-19 05:50:18 +03:00
levlam
5aa609535e Simplify support for unchecked options in OptionParser.
GitOrigin-RevId: 5a913944b5a6cfecdfb96287e2c670be8ca18547
2020-06-19 04:44:38 +03:00
levlam
0877d7f716 Automatically detect operating system version.
GitOrigin-RevId: d693799fdbfe4919da5a70c141709f2db93063d7
2020-06-19 03:45:24 +03:00
levlam
2172c71191 Add uname.
GitOrigin-RevId: d63397a217f67714d621425e7c6d3ea1e1fa3c60
2020-06-19 03:08:42 +03:00
Arseny Smirnov
7e96f93605 remove usage of AES_ige_encrypt
GitOrigin-RevId: cceb1d42c69724e99da4a419e5cf2c06ad94a373
2020-06-18 12:34:22 +03:00
levlam
0275ecdcbc Fix "Try to" usages.
GitOrigin-RevId: 4ff6d26737f67180a1e9a1289f7f7fb428828b08
2020-06-18 05:02:18 +03:00
levlam
fae344a65d Improve error messages.
GitOrigin-RevId: 99d0bdaec60007ace41631804e36c17b0753ede2
2020-06-18 00:58:54 +03:00
levlam
f45d80fe16 Use AesIgeStateImpl in aes_ige_{en,de}ncrypt.
GitOrigin-RevId: 06a070fb116b8e56221b49adb9cc38ec7678e845
2020-06-18 00:01:37 +03:00
levlam
3464f04e57 Simplify AesCtrState more.
GitOrigin-RevId: 7601dc25f84a96828c333c30cab35eef5836d06c
2020-06-17 22:49:04 +03:00
levlam
cdbe6f5002 Simplify AesCtrState.
GitOrigin-RevId: adebb42480ac23fb48105b5c957847e0c9867612
2020-06-17 22:40:25 +03:00
levlam
225e15f618 Revert "use void* instead of pimpl idiom in AesCtrState and AesIgeState", because of huge struct increase in size and Ige decrypt slowdown.
This reverts commit cc1c175d078b179e7af730b8617165c6ea6193f3.

GitOrigin-RevId: 83814f455af356117a6fccd8b122d72a5d0bce28
2020-06-17 22:24:31 +03:00
Arseny Smirnov
95af3e74bd use void* instead of pimpl idiom in AesCtrState and AesIgeState
GitOrigin-RevId: cc1c175d078b179e7af730b8617165c6ea6193f3
2020-06-17 19:05:43 +03:00
levlam
50ce05a34f Add missing move construxtors.
GitOrigin-RevId: 10a6f44b68e7b0187a5d674c1716cf0277351103
2020-06-17 17:39:54 +03:00
levlam
7754e80572 Remove unneeded include.
GitOrigin-RevId: ed319647243bfd81cd95df3658566b395ce844c2
2020-06-17 06:49:10 +03:00
levlam
6fc62e47dd Fix build without OpenSSL.
GitOrigin-RevId: 81efca50dca3269bec82c9fdc48135f62865290e
2020-06-17 06:37:37 +03:00
levlam
4f8fd1781d Prettify OptionParser usage printing.
GitOrigin-RevId: f0b7c833e91d9eea49483bb93124babc190fa670
2020-06-17 06:09:53 +03:00
levlam
ce137620f5 Improve logging to PLAIN.
GitOrigin-RevId: 5fd64a3599e599a7ae27eecc284f0cd898db8aca
2020-06-17 05:51:36 +03:00
levlam
eea76cdcc0 Improve long-only options output.
GitOrigin-RevId: bd6b4bed622f5c9d751d3bb19cd56834645223b4
2020-06-17 05:35:55 +03:00
levlam
76b5981968 Simplify Evp.
GitOrigin-RevId: cb40344936761c730f1e97f5a76e872ace2a2cee
2020-06-17 04:11:57 +03:00
levlam
c46910d75f Add portable option parser.
GitOrigin-RevId: 0d4f7e2f5bec4826e1c12e3aa1aee642fcf6da07
2020-06-17 03:04:36 +03:00
levlam
4bb6fe7e78 Remove unsupported OptionsParser::Option::Type::OptionalArg.
GitOrigin-RevId: 3226257bf95366472c843cce0e4ca76d3f3cee5c
2020-06-16 18:11:32 +03:00
Arseny Smirnov
1a33df9d52 AesBlock::inc: use bswap64 for x64 and armv8
GitOrigin-RevId: 5842d5d9fd4a865bc0c786e31e3f62f1257d1d4d
2020-06-16 18:34:55 +03:00
Arseny Smirnov
4c288d9398 AesState::Impl -> Evp
GitOrigin-RevId: 536640cffeb4fac1cc6f5a3499554d685891f45e
2020-06-16 18:19:05 +03:00
Arseny Smirnov
005611e924 Refactor td::AesState::Impl
GitOrigin-RevId: 5731ddc8d85c912cbfb141bd4e5eefea22d8ab21
2020-06-16 17:57:19 +03:00
levlam
8eadeaf7b3 Use only AES CBC in AES IGE encrypt.
GitOrigin-RevId: 380af89f18a77afee0baf7ec739836b071f96ab5
2020-06-16 06:34:17 +03:00
levlam
f3ebae267d Implement AES IGE encrypt using AES CBC.
GitOrigin-RevId: ca803ca847a9c44e70687ade0f1ea25c0ee0ebb2
2020-06-16 06:16:09 +03:00
levlam
3442a88413 Unify constant names style.
GitOrigin-RevId: 6e4475366b94cea6ab0331d57f254311490bdee2
2020-06-16 05:10:16 +03:00
levlam
40ee207854 Improve AesIgeState.
GitOrigin-RevId: b0a1d8bad4be32e4f6fa9ff36f5a5bef2c464b26
2020-06-16 01:32:08 +03:00
levlam
e1515226be Simplify XorBytes.
GitOrigin-RevId: d20ae3c1d44d0a88068b42979685e5b1f9df0193
2020-06-16 01:13:45 +03:00
levlam
6a7dfc4f01 Minor AES improvements.
GitOrigin-RevId: 138384ad375735b9e889172cae919368c9976456
2020-06-15 23:20:44 +03:00
Arseny Smirnov
53b0a74f87 tdutils: revert tosimple AesBlock::inc implementation
GitOrigin-RevId: 7f894bb710e32b6573603f3500c35daf0752cf02
2020-06-15 22:38:31 +03:00
Arseny Smirnov
132caf5c8f tdutils: use new aes ige for long plaintext
GitOrigin-RevId: 4bd8ddd20508e235c0fb8b40ac42b9dcabfed30c
2020-06-15 19:23:40 +03:00
Arseny Smirnov
7e06d91739 tdutils: optimize aes ctr
GitOrigin-RevId: b24920ac38bb3b8e94ece87e7438a8b8b1b370c4
2020-06-15 18:59:56 +03:00
Arseny Smirnov
8845e18da9 tdutils: simplify aes ctr
GitOrigin-RevId: 557cc787f77e2f0af494e7dd46fa99e495a16925
2020-06-15 16:58:58 +03:00
Arseny Smirnov
0c0f6a7b7b tdutils: simplify aes ige
GitOrigin-RevId: bc99b8c159cc866875ef69e44cd1e88f5e5dffee
2020-06-15 16:43:02 +03:00
Arseny Smirnov
7e5a08f272 tdutils: new ige implementation
GitOrigin-RevId: c19b702e3cfcb1edb182839e67c410c7fc3edac5
2020-06-15 15:07:58 +03:00
levlam
0cf4fea1ff Remove enum usages for static constants creation.
GitOrigin-RevId: 2a88fd2cd961398a09403fe35a15ae56372a44f8
2020-06-15 04:52:56 +03:00
levlam
ea4841a37c Unify enum constant name style.
GitOrigin-RevId: 2e36eef9b54c23da0d1bc9beb7e07af8835f702d
2020-06-15 04:23:47 +03:00
levlam
715146c65c Move skip_eintr to a separate header.
GitOrigin-RevId: 80eeb583cd1a4351c5b72c7ec4021575dbc216a7
2020-06-15 03:50:38 +03:00
levlam
c8913e71af Add td::change_user.
GitOrigin-RevId: 8140b771e561d968d6fbf790249364190cb96d6c
2020-06-15 03:14:08 +03:00
levlam
7cd42fc518 Add set_resource_limit.
GitOrigin-RevId: 29cf122b31ff86ccc8f6c1fc3b71c28e89b8054f
2020-06-15 01:50:03 +03:00
levlam
18b8e87e74 Support cpu_stat on Windows.
GitOrigin-RevId: df9a2fa6d53fb1c19cd30f2da3354bc23b2f3aee
2020-06-14 04:01:02 +03:00
levlam
50a6b5da92 Minor cpu_stat improvements.
GitOrigin-RevId: ef6f8b0ed04ae88c9784260435e06a647babf0a1
2020-06-14 02:49:10 +03:00
levlam
6b1c2f797d Add mem_stat support on Windows.
GitOrigin-RevId: cf63e7fe53a00f2fa116472ed12f73492ad8bf29
2020-06-14 02:31:57 +03:00
levlam
8350cd2433 Initialize field just in case.
GitOrigin-RevId: 4707c1101a6699fe37f8c942b6b66cfdd0e7bc36
2020-06-13 21:04:29 +03:00
levlam
584a0309c5 Fix return code checks.
GitOrigin-RevId: a4ace29e0bf81441b207d234c2e190dcb777b0cb
2020-06-13 20:57:47 +03:00
levlam
2ed9cb3b75 Minor fixes.
GitOrigin-RevId: ce9058c2075281697cc41de2ab970dd11e189f77
2020-06-13 05:13:11 +03:00
levlam
c68481052a AES CTR improvements.
GitOrigin-RevId: c4ed8fdc883fdf7cc2ed10334d3bb9487d590d41
2020-06-13 04:45:40 +03:00
levlam
7ec6c794f8 Use fuzzy search for PHP 7.2 on OpenBSD.
GitOrigin-RevId: d2bb7efbc201666c0e1fe455abc8c69bcf4d782d
2020-06-12 22:08:44 +03:00
levlam
f6ef851fe2 AES fixes.
GitOrigin-RevId: bf30c8c381edb623fec0dfac1c494559f3f3739e
2020-06-12 19:43:58 +03:00
Arseny Smirnov
e913c3126b tdutils: optimize aes ctr
GitOrigin-RevId: 09c6df45c0bf2683507a0f279769471efc859ecb
2020-06-12 19:40:17 +03:00
Arseny Smirnov
c4ed5ce140 tdutils: aes experiments
GitOrigin-RevId: 1dd2812041778679fb1ef0462d9e8b1899181e0b
2020-06-12 18:06:40 +03:00
levlam
44689f81ff Minor improvements.
GitOrigin-RevId: 835275f0146586e4de5e18e9f01be29bb72ddf31
2020-06-10 03:42:00 +03:00
levlam
bed0bb69f0 Simplify List test.
GitOrigin-RevId: 7306a169794ecb1e24e3b256bed600dd7d1a698c
2020-06-10 03:01:23 +03:00
levlam
2a51b98453 Add TsList. Add List/TsList tests.
GitOrigin-RevId: 78a85d3d575fa320187119a23a1ac2e265c70344
2020-06-09 18:40:36 +03:00
levlam
2a623b0a50 Add some ListNode helper methods.
GitOrigin-RevId: b4e79174cac16752185cc8bfa2436b7393464289
2020-06-09 17:39:34 +03:00
levlam
cd451b7c45 Add List::init_from.
GitOrigin-RevId: 17a6f374ff0b568c6e2d056053539fb2947f22d3
2020-06-09 17:18:59 +03:00
levlam
64094b0a23 Add RandomSteps for tests.
GitOrigin-RevId: eb4e7c92987db765aab24ad9afd2f072e6665607
2020-06-09 05:17:39 +03:00
levlam
901d884910 Improve VectorQueue.
GitOrigin-RevId: c64b8598a3d492236be2c4d1f3ccb4addc14891e
2020-06-09 05:09:58 +03:00
levlam
f7f43c39a8 Add Span::back/rbegin/rend.
GitOrigin-RevId: 25bac5c0987e6c1f9b012c75c550110c07369684
2020-06-09 04:48:08 +03:00
levlam
b1419f9de5 Fix some includes.
GitOrigin-RevId: f4b44d2e91ca72b6090d7f1f35673e8268723241
2020-06-07 18:14:52 +03:00
levlam
de6d5359ed Use #pragma managed(push, off) around unmanaged includes in managed code.
GitOrigin-RevId: 1b8944dfa23e38f675aec0f25d78644baa27ab84
2020-06-06 22:51:45 +03:00
levlam
3788cd28f9 Clear OpenSSL errors after init.
GitOrigin-RevId: 0e74ffdada6d568645aef6496df3498e0638bbc0
2020-06-06 21:35:09 +03:00
levlam
ed615430e1 Move OpenSSL error hancling functions to tdutils.
GitOrigin-RevId: 6d45b5ee1077eca430802fb6258104b0371688fa
2020-06-06 21:31:47 +03:00
levlam
c36e8d6c78 Add storer for vector of pointers.
GitOrigin-RevId: 1e2573f0fcf33eec26f4a17860a406c2a99336bb
2020-05-25 02:40:00 +03:00
levlam
088a96ff15 Add some checks.
GitOrigin-RevId: 6c24e7d3d48ed823a45d6b106855f3a0f55a0db5
2020-05-19 15:11:21 +03:00
levlam
eb8fba8b28 Fix init_host_port.
GitOrigin-RevId: 30abb3480d906ebd7ea50a7feecf072be6e36641
2020-05-16 23:54:40 +03:00
levlam
5b18a56e03 Add IPAddress::get_ip_host and use it whenever appropriate.
GitOrigin-RevId: 7254ebd036463fe2c8b6262269cbee843b320421
2020-05-16 23:12:52 +03:00
levlam
9fe0d4bbd9 Do not remove brackets from HttpUrl IPv6 host.
GitOrigin-RevId: 59db5b747e66bd83cbfa81d4276af2aa1bb8b7ca
2020-05-16 22:53:19 +03:00
levlam
842e2033b7 Fix IP address verification in TLS certificate.
GitOrigin-RevId: 5275f8be34e9459a13a87e6fbd056754ceb515d4
2020-05-16 18:43:49 +03:00
levlam
7bdff46710 Do not send IP address in SNI.
GitOrigin-RevId: ff01b1f5f9219e34b0cacdf8acd49bf4e5a3daa2
2020-05-16 17:50:58 +03:00
levlam
e58d423af1 Add IPAddress::get_ip_address.
GitOrigin-RevId: 8b82c462f10d705412cb6cedc3d25d5fb95c59e2
2020-05-16 17:35:53 +03:00
levlam
705ab4d415 Supoort bracketed IPv6 in init_ipv6_port.
GitOrigin-RevId: 5452157d85fa5628a07e82fec20c92e8b0836508
2020-05-16 17:30:16 +03:00
levlam
06b053ff3e Add comment about IPAddress::get_ip_str unsafety.
GitOrigin-RevId: 29cd28bf9a6422cd0295c74f904ba380fc119570
2020-05-16 16:43:40 +03:00
levlam
54f9c77a20 Make ipv4_to_str/ipv6_to_str safe to use.
GitOrigin-RevId: 622c8f03c8791545922d3ae5f596f0a9699b91a9
2020-05-16 16:33:32 +03:00
levlam
bf963ccadf Make IPAddress::get_ipv6 safe to use.
GitOrigin-RevId: 47d50318abac4231efe63820902ba4d74b6dd03d
2020-05-16 16:11:03 +03:00
levlam
3b3b67b834 Do not try to parse http scheme further some reserved characters.
GitOrigin-RevId: 363ad7bf8022bddc6c3370abc6a8ee244d384759
2020-05-07 03:12:47 +03:00
levlam
7fd495a69c Optimize TlStorerToString.
GitOrigin-RevId: fe43727ec9a0ec777860c16fd6fcbd73a9fd4c09
2020-04-29 21:49:11 +03:00
levlam
851d23f06c Add messageDice.success_animation_frame_number.
GitOrigin-RevId: d0afff34c7d74fe5e06b008b7a8438be4aebe88b
2020-04-21 19:08:01 +03:00
levlam
822bc95d13 Reget users to restore their online status after removing them from privacy restrictions.
GitOrigin-RevId: e29832c5a056cdc5708c02ce31e77570ff335ced
2020-04-19 12:53:07 +03:00
levlam
5294bf8607 Update Unicode data to 13.0.0.
GitOrigin-RevId: f8ef2133797db0092be6ec98e45373bdde850567
2020-04-08 22:27:49 +03:00
levlam
77c7f4c660 Add Clocks::tz_offset.
GitOrigin-RevId: b1dcb9a8533f408961778eac7c7fa5db1bd2b920
2020-04-08 20:47:14 +03:00
levlam
b35862bd71 Simplify Clocks.
GitOrigin-RevId: 6684cd9d98efea14d00317d1975b58aa7e2c8a11
2020-04-08 02:39:51 +03:00
levlam
f9e8bbdff4 Fix undef of small with WIN32_LEAN_AND_MEAN defined.
GitOrigin-RevId: ca8ca03bdf62e9aaf2fe44078aa074296a3a949e
2020-04-01 00:36:01 +03:00
levlam
c7411004be Fix count_bits implementation.
GitOrigin-RevId: a6b56a2f9dbef462107787c852bacee6571df2c9
2020-03-31 23:21:42 +03:00
levlam
c4023a3f9b Use KB instead of kB for 1024 bytes.
GitOrigin-RevId: 163ebf3f28f5e6f6710b3ff85bdfc21996c67acb
2020-03-20 03:20:07 +03:00
levlam
9d1e3ed661 Add WIN32_LEAN_AND_MEAN during build on Windows (0% build time speed up).
GitOrigin-RevId: ebe9742fa94187434be37339862f11b750db44ac
2020-03-19 02:33:53 +03:00
levlam
a0c5c5900a Better rand_string parameter types.
GitOrigin-RevId: 2702375880663d3cfe1546b047e01ba02ffcd2ce
2020-03-15 02:01:22 +03:00
levlam
968689157c Make max_compression_ratio required parameter in gzencode.
GitOrigin-RevId: c787fdeae202d3b80944412e7db4209f35adcd07
2020-03-15 01:56:48 +03:00
levlam
1ed0ab3146 Improve logging on failed check.
GitOrigin-RevId: 3058af6fe76779e02eb6440fd1ab13ce07621785
2020-03-14 01:54:13 +03:00
levlam
d48faede71 Remove now unneeded BigNum::ensure_const_time method.
GitOrigin-RevId: ce34efc94f3e13f306592bed86a37f342a356a23
2020-03-10 18:31:13 +03:00
levlam
2df3de7b80 Improve logging.
GitOrigin-RevId: 8574b038e9682f8020d1508a7be7beef223e1b08
2020-03-10 04:37:46 +03:00
levlam
ae5588bf11 Make webPage.description a formatted text.
GitOrigin-RevId: b64cf0e915f9fdeeadc8cdee8280fcbb236c92bb
2020-03-02 16:05:18 +03:00
levlam
92df8f9827 Remove unneeded brackets.
GitOrigin-RevId: 0b8a2ae21d28e6c276db8b45ffb4d127800f5d73
2020-02-26 18:15:19 +03:00
levlam
e34058c16f Optimize TlBufferParser for empty strings.
GitOrigin-RevId: fb796f93d84a32c90f9420029b89e0f7fe169869
2020-02-23 22:44:14 +03:00
levlam
1313fb1543 Remove illegal MovableValue<void *> usage.
GitOrigin-RevId: 1daee39044131e396183ee20baa589b96ba27eb4
2020-01-30 22:11:04 +03:00
levlam
728d8d79f6 More enum class usages.
GitOrigin-RevId: 6680ce2276ced5b015a1f508f0b7b5f28b5f4a9b
2020-01-19 03:02:56 +03:00
levlam
7f4593e21b Simplify json_array usage.
GitOrigin-RevId: 991f180938424074b41a858b125268d5a10fc8ac
2020-01-16 04:32:02 +03:00
levlam
e09a295f7c Fix compilation error.
GitOrigin-RevId: ce8f9f5c1a28e69b716fa1b2427a1337436840e0
2020-01-11 03:51:44 +03:00
levlam
1703cee349 Common base64_decode implementation.
GitOrigin-RevId: 87bdf798a181799b2f51be9831d77fabf41e3820
2020-01-09 22:59:08 +03:00
levlam
09d359cdc4 Use exact size formula in base64_decode.
GitOrigin-RevId: 7515474fc70af351e7b886e870b0d3da453afdc8
2020-01-09 22:21:20 +03:00
levlam
7db7757d2d Simplify base64url_decode implementation.
GitOrigin-RevId: 873483e61cc54fad78a09aa8a143070c5e018dfb
2020-01-09 22:07:23 +03:00
levlam
529f925d40 Common base64_encode implementation.
GitOrigin-RevId: ed4f31cfc6f83e81f03bd8e71dc8d48ced530255
2020-01-09 21:05:43 +03:00
levlam
9ea68914cf Use get_character_table to get base64 char_to_value table everywhere.
GitOrigin-RevId: 192840280c280a82a1cb2f1eba9fb9983f6ffe52
2020-01-09 20:45:38 +03:00
levlam
d6dca91ff3 Add is_base64_characters functions.
GitOrigin-RevId: 5b3e8642e9d9788788ee1343af4eee9acf7dddc9
2020-01-09 20:18:53 +03:00