From ac3929126ffd550079c30c2ae120d640aaa0f25c Mon Sep 17 00:00:00 2001 From: George Hazan Date: Fri, 7 Jun 2024 16:28:48 +0300 Subject: Discord to be packed with libsodium --- protocols/Discord/discord.vcxproj | 4 ++++ protocols/Discord/discord.vcxproj.filters | 3 +++ protocols/Discord/src/main.cpp | 5 +++++ protocols/Discord/src/proto.h | 2 +- protocols/Discord/src/stdafx.h | 1 + protocols/Discord/src/voice.cpp | 6 ------ protocols/Discord/src/voice_client.cpp | 27 +++++++++++++++++++++++++++ tools/build_scripts/z2_PackPluginUpdater.bat | 2 +- 8 files changed, 42 insertions(+), 8 deletions(-) create mode 100644 protocols/Discord/src/voice_client.cpp diff --git a/protocols/Discord/discord.vcxproj b/protocols/Discord/discord.vcxproj index dc4a3679bc..edf662c623 100644 --- a/protocols/Discord/discord.vcxproj +++ b/protocols/Discord/discord.vcxproj @@ -44,6 +44,7 @@ + @@ -53,6 +54,9 @@ {f6a9340e-b8d9-4c75-be30-47dc66d0abc7} + + {a185b162-6cb6-4502-b03f-b56f7699a8d9} + {e2a369cd-eda3-414f-8ad0-e732cd7ee68c} diff --git a/protocols/Discord/discord.vcxproj.filters b/protocols/Discord/discord.vcxproj.filters index 61ee857295..7316208d56 100644 --- a/protocols/Discord/discord.vcxproj.filters +++ b/protocols/Discord/discord.vcxproj.filters @@ -50,6 +50,9 @@ Source Files + + Source Files + diff --git a/protocols/Discord/src/main.cpp b/protocols/Discord/src/main.cpp index 17a10bf78e..023a7b7925 100644 --- a/protocols/Discord/src/main.cpp +++ b/protocols/Discord/src/main.cpp @@ -72,6 +72,11 @@ static int OnModulesLoaded(WPARAM, LPARAM) int CMPlugin::Load() { + if (sodium_init() < 0) { + Netlib_Log(0, "libsodium cannot be initialized"); + bVoiceEnabled = false; + } + HookEvent(ME_SYSTEM_MODULESLOADED, &OnModulesLoaded); g_plugin.registerIcon("Protocols/Discord", g_iconList); diff --git a/protocols/Discord/src/proto.h b/protocols/Discord/src/proto.h index 98a3b1343b..32dce00906 100644 --- a/protocols/Discord/src/proto.h +++ b/protocols/Discord/src/proto.h @@ -608,7 +608,7 @@ struct CMPlugin : public ACCPROTOPLUGIN { CMPlugin(); - bool bVoiceService = false; + bool bVoiceService = false, bVoiceEnabled = true; int Load() override; }; diff --git a/protocols/Discord/src/stdafx.h b/protocols/Discord/src/stdafx.h index 9987d6a256..95990b7dd2 100644 --- a/protocols/Discord/src/stdafx.h +++ b/protocols/Discord/src/stdafx.h @@ -51,6 +51,7 @@ #include #include "../../libs/zlib/src/zlib.h" +#include "../../libs/libsodium/src/include/sodium.h" extern IconItem g_iconList[]; diff --git a/protocols/Discord/src/voice.cpp b/protocols/Discord/src/voice.cpp index b30d7b166a..fad1728896 100644 --- a/protocols/Discord/src/voice.cpp +++ b/protocols/Discord/src/voice.cpp @@ -89,12 +89,6 @@ void CDiscordProto::TryVoiceStart(CDiscordGuild *pGuild) } } -void CDiscordProto::VoiceClientThread(void *param) -{ - auto *pCall = (CDiscordVoiceCall *)param; - pCall->startTime = time(0); -} - ///////////////////////////////////////////////////////////////////////////////////////// // call operations (voice & video) diff --git a/protocols/Discord/src/voice_client.cpp b/protocols/Discord/src/voice_client.cpp new file mode 100644 index 0000000000..e20f6c95a9 --- /dev/null +++ b/protocols/Discord/src/voice_client.cpp @@ -0,0 +1,27 @@ +/* +Copyright © 2016-22 Miranda NG team + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#include "stdafx.h" + +void CDiscordProto::VoiceClientThread(void *param) +{ + auto *pCall = (CDiscordVoiceCall *)param; + pCall->startTime = time(0); + + int nLoops = 0; + time_t lastLoopTime = time(0); +} diff --git a/tools/build_scripts/z2_PackPluginUpdater.bat b/tools/build_scripts/z2_PackPluginUpdater.bat index 460c65d0d4..517cf1c939 100644 --- a/tools/build_scripts/z2_PackPluginUpdater.bat +++ b/tools/build_scripts/z2_PackPluginUpdater.bat @@ -47,7 +47,7 @@ for /f %%a in ('dir plugins\*.dll /B /L') do ( if /I "%%a"=="CmdLine.dll" (%ZipIt% "%Arch%\Plugins\%%~na.zip" "MimCmd.exe") if /I "%%a"=="CurrencyRates.dll" (%ZipIt% "%Arch%\Plugins\%%~na.zip" "Icons\Proto_CurrencyRates.dll" "Plugins\CurrencyRates\*.xml" "Plugins\CurrencyRates\CurrencyRatesChart.exe") if /I "%%a"=="Dbx_mdbx.dll" (%ZipIt% "%Arch%\Plugins\%%~na.zip" "mdbx_chk.exe" "mdbx_dump.exe" "mdbx_load.exe" "Libs\libmdbx.mir") - if /I "%%a"=="Discord.dll" (%ZipIt% "%Arch%\Plugins\%%~na.zip" "Icons\Proto_Discord.dll") + if /I "%%a"=="Discord.dll" (%ZipIt% "%Arch%\Plugins\%%~na.zip" "Icons\Proto_Discord.dll" "Libs\libsodium.mir") if /I "%%a"=="Dummy.dll" (%ZipIt% "%Arch%\Plugins\%%~na.zip" "Icons\Proto_Dummy.dll") if /I "%%a"=="Facebook.dll" (%ZipIt% "%Arch%\Plugins\%%~na.zip" "Icons\Proto_Facebook.dll") if /I "%%a"=="FavContacts.dll" (%ZipIt% "%Arch%\Plugins\%%~na.zip" "Gadgets\favcontacts.gadget") -- cgit v1.2.3