diff --git a/td/telegram/AnimationsManager.cpp b/td/telegram/AnimationsManager.cpp index 456ee022..899d397b 100644 --- a/td/telegram/AnimationsManager.cpp +++ b/td/telegram/AnimationsManager.cpp @@ -15,6 +15,7 @@ #include "td/telegram/misc.h" #include "td/telegram/SecretChatActor.h" #include "td/telegram/Td.h" +#include "td/telegram/TdDb.h" #include "td/telegram/secret_api.h" #include "td/telegram/td_api.h" diff --git a/td/telegram/AudiosManager.cpp b/td/telegram/AudiosManager.cpp index 312bf014..32236519 100644 --- a/td/telegram/AudiosManager.cpp +++ b/td/telegram/AudiosManager.cpp @@ -7,7 +7,6 @@ #include "td/telegram/AudiosManager.h" #include "td/telegram/files/FileManager.h" -#include "td/telegram/Global.h" #include "td/telegram/Td.h" #include "td/telegram/secret_api.h" diff --git a/td/telegram/AuthManager.cpp b/td/telegram/AuthManager.cpp index 41bb8274..a1439147 100644 --- a/td/telegram/AuthManager.cpp +++ b/td/telegram/AuthManager.cpp @@ -20,6 +20,7 @@ #include "td/telegram/net/NetQueryDispatcher.h" #include "td/telegram/PasswordManager.h" #include "td/telegram/Td.h" +#include "td/telegram/TdDb.h" #include "td/telegram/UniqueId.h" #include "td/telegram/UpdatesManager.h" diff --git a/td/telegram/CallManager.cpp b/td/telegram/CallManager.cpp index f2dc7181..4eee4a03 100644 --- a/td/telegram/CallManager.cpp +++ b/td/telegram/CallManager.cpp @@ -6,8 +6,6 @@ // #include "td/telegram/CallManager.h" -#include "td/telegram/Global.h" - #include "td/utils/format.h" #include "td/utils/logging.h" #include "td/utils/misc.h" diff --git a/td/telegram/ConfigManager.cpp b/td/telegram/ConfigManager.cpp index b342453f..74f57168 100644 --- a/td/telegram/ConfigManager.cpp +++ b/td/telegram/ConfigManager.cpp @@ -18,6 +18,7 @@ #include "td/telegram/net/PublicRsaKeyShared.h" #include "td/telegram/net/Session.h" #include "td/telegram/StateManager.h" +#include "td/telegram/TdDb.h" #if !TD_EMSCRIPTEN //FIXME #include "td/net/HttpQuery.h" diff --git a/td/telegram/ContactsManager.cpp b/td/telegram/ContactsManager.cpp index accea57a..a8771a88 100644 --- a/td/telegram/ContactsManager.cpp +++ b/td/telegram/ContactsManager.cpp @@ -10,13 +10,6 @@ #include "td/telegram/telegram_api.h" #include "td/telegram/telegram_api.hpp" -#include "td/actor/PromiseFuture.h" -#include "td/actor/SleepActor.h" - -#include "td/db/binlog/BinlogEvent.h" -#include "td/db/binlog/BinlogHelper.h" -#include "td/db/SqliteKeyValueAsync.h" - #include "td/telegram/AuthManager.h" #include "td/telegram/ConfigShared.h" #include "td/telegram/files/FileManager.h" @@ -32,10 +25,18 @@ #include "td/telegram/SecretChatActor.h" #include "td/telegram/StickersManager.h" #include "td/telegram/Td.h" +#include "td/telegram/TdDb.h" #include "td/telegram/TopDialogManager.h" #include "td/telegram/UpdatesManager.h" #include "td/telegram/Version.h" +#include "td/actor/PromiseFuture.h" +#include "td/actor/SleepActor.h" + +#include "td/db/binlog/BinlogEvent.h" +#include "td/db/binlog/BinlogHelper.h" +#include "td/db/SqliteKeyValueAsync.h" + #include "td/utils/buffer.h" #include "td/utils/format.h" #include "td/utils/logging.h" diff --git a/td/telegram/DeviceTokenManager.cpp b/td/telegram/DeviceTokenManager.cpp index 864dc01e..26fbb52a 100644 --- a/td/telegram/DeviceTokenManager.cpp +++ b/td/telegram/DeviceTokenManager.cpp @@ -9,6 +9,7 @@ #include "td/telegram/Global.h" #include "td/telegram/misc.h" #include "td/telegram/net/NetQueryDispatcher.h" +#include "td/telegram/TdDb.h" #include "td/telegram/UserId.h" #include "td/telegram/td_api.hpp" diff --git a/td/telegram/DocumentsManager.cpp b/td/telegram/DocumentsManager.cpp index a6935f80..7c815d4a 100644 --- a/td/telegram/DocumentsManager.cpp +++ b/td/telegram/DocumentsManager.cpp @@ -10,7 +10,6 @@ #include "td/telegram/AudiosManager.h" #include "td/telegram/files/FileEncryptionKey.h" #include "td/telegram/files/FileManager.h" -#include "td/telegram/Global.h" #include "td/telegram/net/DcId.h" #include "td/telegram/Photo.h" #include "td/telegram/StickersManager.h" diff --git a/td/telegram/Global.h b/td/telegram/Global.h index ec4c2c09..d5c68d61 100644 --- a/td/telegram/Global.h +++ b/td/telegram/Global.h @@ -9,7 +9,6 @@ #include "td/telegram/DhConfig.h" #include "td/telegram/net/DcId.h" #include "td/telegram/net/NetQueryCreator.h" -#include "td/telegram/TdDb.h" #include "td/telegram/TdParameters.h" #include "td/actor/actor.h" @@ -49,6 +48,7 @@ class StateManager; class StickersManager; class StorageManager; class Td; +class TdDb; class TempAuthKeyWatchdog; class TopDialogManager; class UpdatesManager; diff --git a/td/telegram/HashtagHints.cpp b/td/telegram/HashtagHints.cpp index 3549a2da..523f657e 100644 --- a/td/telegram/HashtagHints.cpp +++ b/td/telegram/HashtagHints.cpp @@ -6,9 +6,11 @@ // #include "td/telegram/HashtagHints.h" +#include "td/telegram/Global.h" +#include "td/telegram/TdDb.h" + #include "td/db/Pmc.h" #include "td/db/SqliteKeyValueAsync.h" -#include "td/telegram/Global.h" #include "td/utils/logging.h" #include "td/utils/tl_helpers.h" diff --git a/td/telegram/InlineQueriesManager.cpp b/td/telegram/InlineQueriesManager.cpp index 987dc112..4119544b 100644 --- a/td/telegram/InlineQueriesManager.cpp +++ b/td/telegram/InlineQueriesManager.cpp @@ -31,6 +31,7 @@ #include "td/telegram/ReplyMarkup.h" #include "td/telegram/StickersManager.h" #include "td/telegram/Td.h" +#include "td/telegram/TdDb.h" #include "td/telegram/VideosManager.h" #include "td/telegram/VoiceNotesManager.h" diff --git a/td/telegram/MessagesManager.cpp b/td/telegram/MessagesManager.cpp index df67d47b..5bea1393 100644 --- a/td/telegram/MessagesManager.cpp +++ b/td/telegram/MessagesManager.cpp @@ -39,6 +39,7 @@ #include "td/telegram/SecretChatsManager.h" #include "td/telegram/SequenceDispatcher.h" #include "td/telegram/Td.h" +#include "td/telegram/TdDb.h" #include "td/telegram/TopDialogManager.h" #include "td/telegram/UpdatesManager.h" #include "td/telegram/WebPageId.h" diff --git a/td/telegram/NotificationSettings.hpp b/td/telegram/NotificationSettings.hpp index aacd49e0..880dca5d 100644 --- a/td/telegram/NotificationSettings.hpp +++ b/td/telegram/NotificationSettings.hpp @@ -6,6 +6,7 @@ // #pragma once +#include "td/telegram/Global.h" #include "td/telegram/NotificationSettings.h" #include "td/utils/tl_helpers.h" diff --git a/td/telegram/NotificationType.cpp b/td/telegram/NotificationType.cpp index e3974bd8..c7b4a7d9 100644 --- a/td/telegram/NotificationType.cpp +++ b/td/telegram/NotificationType.cpp @@ -6,6 +6,7 @@ // #include "td/telegram/NotificationType.h" +#include "td/telegram/Global.h" #include "td/telegram/MessagesManager.h" #include "td/telegram/Td.h" diff --git a/td/telegram/PasswordManager.cpp b/td/telegram/PasswordManager.cpp index cd86f858..1c83d4b0 100644 --- a/td/telegram/PasswordManager.cpp +++ b/td/telegram/PasswordManager.cpp @@ -11,6 +11,7 @@ #include "td/telegram/logevent/LogEvent.h" #include "td/telegram/net/NetQueryDispatcher.h" #include "td/telegram/SecureStorage.h" +#include "td/telegram/TdDb.h" #include "td/mtproto/crypto.h" diff --git a/td/telegram/Photo.cpp b/td/telegram/Photo.cpp index 68a0c373..17534742 100644 --- a/td/telegram/Photo.cpp +++ b/td/telegram/Photo.cpp @@ -11,7 +11,6 @@ #include "td/telegram/files/FileEncryptionKey.h" #include "td/telegram/files/FileManager.h" -#include "td/telegram/Global.h" #include "td/telegram/net/DcId.h" #include "td/utils/common.h" diff --git a/td/telegram/SecretChatActor.cpp b/td/telegram/SecretChatActor.cpp index be16ed6a..4227cbf2 100644 --- a/td/telegram/SecretChatActor.cpp +++ b/td/telegram/SecretChatActor.cpp @@ -16,6 +16,7 @@ #include "td/telegram/telegram_api.hpp" #include "td/db/binlog/BinlogHelper.h" +#include "td/db/binlog/BinlogInterface.h" #include "td/actor/MultiPromise.h" diff --git a/td/telegram/SecretChatsManager.cpp b/td/telegram/SecretChatsManager.cpp index e915c5f6..c40b0822 100644 --- a/td/telegram/SecretChatsManager.cpp +++ b/td/telegram/SecretChatsManager.cpp @@ -9,6 +9,7 @@ #include "td/telegram/ConfigShared.h" #include "td/telegram/ContactsManager.h" #include "td/telegram/DhCache.h" +#include "td/telegram/Global.h" #include "td/telegram/logevent/SecretChatEvent.h" #include "td/telegram/MessageId.h" #include "td/telegram/MessagesManager.h" @@ -16,6 +17,7 @@ #include "td/telegram/SequenceDispatcher.h" #include "td/telegram/StateManager.h" #include "td/telegram/Td.h" +#include "td/telegram/TdDb.h" #include "td/telegram/secret_api.h" #include "td/telegram/telegram_api.hpp" @@ -23,6 +25,7 @@ #include "td/actor/PromiseFuture.h" #include "td/db/binlog/BinlogEvent.h" +#include "td/db/binlog/BinlogInterface.h" #include "td/utils/format.h" #include "td/utils/logging.h" diff --git a/td/telegram/StickersManager.cpp b/td/telegram/StickersManager.cpp index 92bab247..8b2bcf00 100644 --- a/td/telegram/StickersManager.cpp +++ b/td/telegram/StickersManager.cpp @@ -24,6 +24,7 @@ #include "td/telegram/net/DcId.h" #include "td/telegram/StickersManager.hpp" #include "td/telegram/Td.h" +#include "td/telegram/TdDb.h" #include "td/actor/MultiPromise.h" #include "td/actor/PromiseFuture.h" diff --git a/td/telegram/StorageManager.cpp b/td/telegram/StorageManager.cpp index 6d7cbf06..3947fe5c 100644 --- a/td/telegram/StorageManager.cpp +++ b/td/telegram/StorageManager.cpp @@ -13,6 +13,7 @@ #include "td/telegram/Global.h" #include "td/telegram/logevent/LogEvent.h" #include "td/telegram/MessagesManager.h" +#include "td/telegram/TdDb.h" #include "td/utils/logging.h" #include "td/utils/misc.h" diff --git a/td/telegram/Td.cpp b/td/telegram/Td.cpp index b514a655..de4abc18 100644 --- a/td/telegram/Td.cpp +++ b/td/telegram/Td.cpp @@ -3259,7 +3259,7 @@ td_api::object_ptr Td::get_fake_authorization_state_ case State::WaitParameters: return td_api::make_object(); case State::Decrypt: - return td_api::make_object(encryption_info_.is_encrypted); + return td_api::make_object(is_database_encrypted_); case State::Run: UNREACHABLE(); return nullptr; @@ -4468,7 +4468,7 @@ Status Td::set_parameters(td_api::object_ptr parameters TRY_STATUS(fix_parameters(parameters_)); VLOG(td_init) << "Check binlog encryption..."; TRY_RESULT(encryption_info, TdDb::check_encryption(parameters_)); - encryption_info_ = std::move(encryption_info); + is_database_encrypted_ = encryption_info.is_encrypted; VLOG(td_init) << "Create Global"; set_context(std::make_shared()); @@ -4506,7 +4506,7 @@ Status Td::set_parameters(td_api::object_ptr parameters VLOG(td_init) << "Send authorizationStateWaitEncryptionKey"; send_closure(actor_id(this), &Td::send_update, td_api::make_object( - td_api::make_object(encryption_info_.is_encrypted))); + td_api::make_object(is_database_encrypted_))); VLOG(td_init) << "Finish set parameters"; return Status::OK(); } diff --git a/td/telegram/Td.h b/td/telegram/Td.h index 35c68c92..2fdab88f 100644 --- a/td/telegram/Td.h +++ b/td/telegram/Td.h @@ -10,7 +10,6 @@ #include "td/telegram/net/NetQuery.h" #include "td/telegram/StateManager.h" #include "td/telegram/TdCallback.h" -#include "td/telegram/TdDb.h" #include "td/telegram/TdParameters.h" #include "td/telegram/TermsOfService.h" @@ -20,6 +19,8 @@ #include "td/actor/PromiseFuture.h" #include "td/actor/Timeout.h" +#include "td/db/DbKey.h" + #include "td/utils/buffer.h" #include "td/utils/common.h" #include "td/utils/Container.h" @@ -245,7 +246,7 @@ class Td final : public NetQueryCallback { int close_flag_ = 0; enum class State : int32 { WaitParameters, Decrypt, Run, Close } state_ = State::WaitParameters; - EncryptionInfo encryption_info_; + bool is_database_encrypted_ = false; vector>> result_handlers_; enum : int8 { RequestActorIdType = 1, ActorIdType = 2 }; diff --git a/td/telegram/TdDb.cpp b/td/telegram/TdDb.cpp index 1149d848..1142ae8e 100644 --- a/td/telegram/TdDb.cpp +++ b/td/telegram/TdDb.cpp @@ -37,13 +37,13 @@ std::string get_sqlite_path(const TdParameters ¶meters) { return parameters.database_directory + db_name + ".sqlite"; } -Result check_encryption(string path) { +Result check_encryption(string path) { Binlog binlog; auto status = binlog.init(path, Binlog::Callback()); if (status.is_error() && status.code() != Binlog::Error::WrongPassword) { return Status::Error(400, status.message()); } - EncryptionInfo info; + TdDb::EncryptionInfo info; info.is_encrypted = binlog.get_info().wrong_password; binlog.close(false /*need_sync*/).ensure(); return info; @@ -420,7 +420,7 @@ Result> TdDb::open(int32 scheduler_id, const TdParameters ¶ TRY_STATUS(db->init(scheduler_id, parameters, std::move(key), events)); return std::move(db); } -Result TdDb::check_encryption(const TdParameters ¶meters) { +Result TdDb::check_encryption(const TdParameters ¶meters) { return ::td::check_encryption(get_binlog_path(parameters)); } void TdDb::change_key(DbKey key, Promise<> promise) { diff --git a/td/telegram/TdDb.h b/td/telegram/TdDb.h index 68136167..308d8d8e 100644 --- a/td/telegram/TdDb.h +++ b/td/telegram/TdDb.h @@ -37,10 +37,6 @@ class DialogDbSyncSafeInterface; class DialogDbAsyncInterface; class FileDbInterface; -struct EncryptionInfo { - bool is_encrypted{false}; -}; - class TdDb { public: TdDb(); @@ -59,9 +55,13 @@ class TdDb { vector web_page_events; vector to_messages_manager; }; - static Result> open(int32 scheduler_id, const TdParameters ¶meters, DbKey key, Events &events); + + struct EncryptionInfo { + bool is_encrypted{false}; + }; static Result check_encryption(const TdParameters ¶meters); + static Status destroy(const TdParameters ¶meters); std::shared_ptr get_file_db_shared(); @@ -74,9 +74,12 @@ class TdDb { SqliteKeyValue *get_sqlite_sync_pmc(); SqliteKeyValueAsyncInterface *get_sqlite_pmc(); + CSlice binlog_path() const; CSlice sqlite_path() const; + void flush_all(); + void close_all(Promise<> on_finished); void close_and_destroy_all(Promise<> on_finished); diff --git a/td/telegram/TopDialogManager.cpp b/td/telegram/TopDialogManager.cpp index 7ebae47a..f8af1b35 100644 --- a/td/telegram/TopDialogManager.cpp +++ b/td/telegram/TopDialogManager.cpp @@ -18,6 +18,7 @@ #include "td/telegram/net/NetQueryDispatcher.h" #include "td/telegram/StateManager.h" #include "td/telegram/Td.h" +#include "td/telegram/TdDb.h" #include "td/utils/misc.h" #include "td/utils/port/Clocks.h" diff --git a/td/telegram/UpdatesManager.cpp b/td/telegram/UpdatesManager.cpp index 71c3db3b..3a80e1b4 100644 --- a/td/telegram/UpdatesManager.cpp +++ b/td/telegram/UpdatesManager.cpp @@ -33,6 +33,7 @@ #include "td/telegram/StateManager.h" #include "td/telegram/StickersManager.h" #include "td/telegram/Td.h" +#include "td/telegram/TdDb.h" #include "td/telegram/WebPagesManager.h" #include "td/utils/buffer.h" diff --git a/td/telegram/VideosManager.cpp b/td/telegram/VideosManager.cpp index 45e8af4b..ce0f7d4d 100644 --- a/td/telegram/VideosManager.cpp +++ b/td/telegram/VideosManager.cpp @@ -12,7 +12,6 @@ #include "td/telegram/AuthManager.h" #include "td/telegram/files/FileManager.h" -#include "td/telegram/Global.h" #include "td/telegram/Td.h" #include "td/utils/logging.h" diff --git a/td/telegram/VoiceNotesManager.cpp b/td/telegram/VoiceNotesManager.cpp index 756526f0..61130792 100644 --- a/td/telegram/VoiceNotesManager.cpp +++ b/td/telegram/VoiceNotesManager.cpp @@ -11,7 +11,6 @@ #include "td/telegram/telegram_api.h" #include "td/telegram/files/FileManager.h" -#include "td/telegram/Global.h" #include "td/telegram/Td.h" #include "td/utils/buffer.h" diff --git a/td/telegram/WebPagesManager.cpp b/td/telegram/WebPagesManager.cpp index a5c0285e..f363206f 100644 --- a/td/telegram/WebPagesManager.cpp +++ b/td/telegram/WebPagesManager.cpp @@ -28,6 +28,7 @@ #include "td/telegram/StickersManager.h" #include "td/telegram/StickersManager.hpp" #include "td/telegram/Td.h" +#include "td/telegram/TdDb.h" #include "td/telegram/Version.h" #include "td/telegram/VideoNotesManager.h" #include "td/telegram/VideoNotesManager.hpp" diff --git a/td/telegram/files/FileLoaderUtils.cpp b/td/telegram/files/FileLoaderUtils.cpp index b3ba3649..27166a4d 100644 --- a/td/telegram/files/FileLoaderUtils.cpp +++ b/td/telegram/files/FileLoaderUtils.cpp @@ -8,6 +8,7 @@ #include "td/telegram/files/FileLocation.h" #include "td/telegram/Global.h" +#include "td/telegram/TdDb.h" #include "td/utils/common.h" #include "td/utils/filesystem.h" diff --git a/td/telegram/files/FileManager.cpp b/td/telegram/files/FileManager.cpp index 544b5f41..c811152b 100644 --- a/td/telegram/files/FileManager.cpp +++ b/td/telegram/files/FileManager.cpp @@ -13,6 +13,7 @@ #include "td/telegram/Global.h" #include "td/telegram/misc.h" #include "td/telegram/SecureStorage.h" +#include "td/telegram/TdDb.h" #include "td/utils/base64.h" #include "td/utils/format.h" diff --git a/td/telegram/files/FileStats.cpp b/td/telegram/files/FileStats.cpp index 639f8a5c..1886670d 100644 --- a/td/telegram/files/FileStats.cpp +++ b/td/telegram/files/FileStats.cpp @@ -9,7 +9,6 @@ #include "td/telegram/td_api.h" #include "td/telegram/files/FileLoaderUtils.h" -#include "td/telegram/Global.h" #include "td/utils/format.h" #include "td/utils/logging.h" diff --git a/td/telegram/files/FileStatsWorker.cpp b/td/telegram/files/FileStatsWorker.cpp index 3850752d..f9b46147 100644 --- a/td/telegram/files/FileStatsWorker.cpp +++ b/td/telegram/files/FileStatsWorker.cpp @@ -10,6 +10,7 @@ #include "td/telegram/files/FileDb.h" #include "td/telegram/files/FileLoaderUtils.h" #include "td/telegram/Global.h" +#include "td/telegram/TdDb.h" #include "td/db/SqliteKeyValue.h" diff --git a/td/telegram/net/AuthDataShared.cpp b/td/telegram/net/AuthDataShared.cpp index f9c5c162..8a9a8368 100644 --- a/td/telegram/net/AuthDataShared.cpp +++ b/td/telegram/net/AuthDataShared.cpp @@ -7,6 +7,7 @@ #include "td/telegram/net/AuthDataShared.h" #include "td/telegram/Global.h" +#include "td/telegram/TdDb.h" #include "td/utils/format.h" #include "td/utils/logging.h" diff --git a/td/telegram/net/ConnectionCreator.cpp b/td/telegram/net/ConnectionCreator.cpp index def24494..c4166af3 100644 --- a/td/telegram/net/ConnectionCreator.cpp +++ b/td/telegram/net/ConnectionCreator.cpp @@ -17,6 +17,7 @@ #include "td/telegram/net/NetQueryDispatcher.h" #include "td/telegram/net/NetType.h" #include "td/telegram/StateManager.h" +#include "td/telegram/TdDb.h" #include "td/mtproto/IStreamTransport.h" #include "td/mtproto/PingConnection.h" diff --git a/td/telegram/net/DcAuthManager.cpp b/td/telegram/net/DcAuthManager.cpp index d5a5b4f8..41ce5dff 100644 --- a/td/telegram/net/DcAuthManager.cpp +++ b/td/telegram/net/DcAuthManager.cpp @@ -13,6 +13,7 @@ #include "td/telegram/net/AuthDataShared.h" #include "td/telegram/net/NetQuery.h" #include "td/telegram/net/NetQueryDispatcher.h" +#include "td/telegram/TdDb.h" #include "td/telegram/UniqueId.h" #include "td/telegram/telegram_api.h" diff --git a/td/telegram/net/DcAuthManager.h b/td/telegram/net/DcAuthManager.h index e2f4da77..bf41fa64 100644 --- a/td/telegram/net/DcAuthManager.h +++ b/td/telegram/net/DcAuthManager.h @@ -6,7 +6,6 @@ // #pragma once -#include "td/telegram/Global.h" #include "td/telegram/net/AuthDataShared.h" #include "td/telegram/net/DcId.h" #include "td/telegram/net/NetQuery.h" diff --git a/td/telegram/net/NetQueryDispatcher.cpp b/td/telegram/net/NetQueryDispatcher.cpp index a3b79796..bbfc0c2d 100644 --- a/td/telegram/net/NetQueryDispatcher.cpp +++ b/td/telegram/net/NetQueryDispatcher.cpp @@ -16,6 +16,7 @@ #include "td/telegram/ConfigShared.h" #include "td/telegram/Global.h" #include "td/telegram/Td.h" +#include "td/telegram/TdDb.h" #include "td/db/Pmc.h" diff --git a/td/telegram/net/NetStatsManager.cpp b/td/telegram/net/NetStatsManager.cpp index 689e91eb..fab96e28 100644 --- a/td/telegram/net/NetStatsManager.cpp +++ b/td/telegram/net/NetStatsManager.cpp @@ -12,6 +12,7 @@ #include "td/telegram/Global.h" #include "td/telegram/logevent/LogEvent.h" #include "td/telegram/StateManager.h" +#include "td/telegram/TdDb.h" #include "td/telegram/Version.h" #include "td/utils/logging.h" diff --git a/td/telegram/net/PublicRsaKeyWatchdog.cpp b/td/telegram/net/PublicRsaKeyWatchdog.cpp index b3cecf52..957fed24 100644 --- a/td/telegram/net/PublicRsaKeyWatchdog.cpp +++ b/td/telegram/net/PublicRsaKeyWatchdog.cpp @@ -8,6 +8,7 @@ #include "td/telegram/Global.h" #include "td/telegram/net/DcId.h" +#include "td/telegram/TdDb.h" #include "td/telegram/telegram_api.h" diff --git a/tddb/td/db/binlog/BinlogInterface.h b/tddb/td/db/binlog/BinlogInterface.h index 6856048b..f5555777 100644 --- a/tddb/td/db/binlog/BinlogInterface.h +++ b/tddb/td/db/binlog/BinlogInterface.h @@ -15,6 +15,7 @@ #include "td/utils/common.h" namespace td { + class BinlogInterface { public: BinlogInterface() = default; @@ -51,4 +52,5 @@ class BinlogInterface { virtual void close_and_destroy_impl(Promise<> promise) = 0; virtual void add_raw_event_impl(uint64 id, BufferSlice &&raw_event, Promise<> promise, BinlogDebugInfo info) = 0; }; + } // namespace td diff --git a/test/secret.cpp b/test/secret.cpp index 5eede6d3..6e6ffcda 100644 --- a/test/secret.cpp +++ b/test/secret.cpp @@ -4,14 +4,6 @@ // Distributed under the Boost Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // -#include "td/actor/actor.h" -#include "td/actor/PromiseFuture.h" - -#include "td/db/binlog/detail/BinlogEventsProcessor.h" - -#include "td/mtproto/crypto.h" -#include "td/mtproto/utils.h" - #include "td/telegram/Global.h" #include "td/telegram/MessageId.h" #include "td/telegram/SecretChatActor.h" @@ -20,6 +12,17 @@ #include "td/telegram/secret_api.h" #include "td/telegram/telegram_api.h" +#include "td/actor/actor.h" +#include "td/actor/PromiseFuture.h" + +#include "td/db/binlog/BinlogInterface.h" +#include "td/db/binlog/detail/BinlogEventsProcessor.h" +#include "td/db/BinlogKeyValue.h" +#include "td/db/DbKey.h" + +#include "td/mtproto/crypto.h" +#include "td/mtproto/utils.h" + #include "td/tl/tl_object_parse.h" #include "td/tl/tl_object_store.h"