From b4804099272ea5b1241dfc483ace3ad7c322c7ca Mon Sep 17 00:00:00 2001 From: levlam Date: Sat, 15 Sep 2018 15:52:03 +0300 Subject: [PATCH] Do not allow changing of some options by unauthorized users or bots. GitOrigin-RevId: 0a86c99779a8df3e300ae798c0e0f46b1c7fe813 --- td/telegram/Td.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/td/telegram/Td.cpp b/td/telegram/Td.cpp index 9d3570a9..0ca73cab 100644 --- a/td/telegram/Td.cpp +++ b/td/telegram/Td.cpp @@ -6207,10 +6207,10 @@ void Td::on_request(uint64 id, td_api::setOption &request) { switch (request.name_[0]) { case 'd': - if (set_boolean_option("disable_contact_registered_notifications")) { + if (!auth_manager_->is_bot() && set_boolean_option("disable_contact_registered_notifications")) { return; } - if (set_boolean_option("disable_top_chats")) { + if (auth_manager_->is_authorized() && !auth_manager_->is_bot() && set_boolean_option("disable_top_chats")) { return; } break; @@ -6223,13 +6223,16 @@ void Td::on_request(uint64 id, td_api::setOption &request) { } break; case 'l': - if (set_string_option("language_pack_database_path", [](Slice value) { return true; })) { + if (!auth_manager_->is_bot() && + set_string_option("language_pack_database_path", [](Slice value) { return true; })) { return; } - if (set_string_option("localization_target", LanguagePackManager::check_language_pack_name)) { + if (!auth_manager_->is_bot() && + set_string_option("localization_target", LanguagePackManager::check_language_pack_name)) { return; } - if (set_string_option("language_pack_id", LanguagePackManager::check_language_code_name)) { + if (!auth_manager_->is_bot() && + set_string_option("language_pack_id", LanguagePackManager::check_language_code_name)) { return; } break;