summaryrefslogtreecommitdiff
path: root/protocols
diff options
context:
space:
mode:
authorGeorge Hazan <george.hazan@gmail.com>2023-10-08 13:42:34 +0300
committerGeorge Hazan <george.hazan@gmail.com>2023-10-08 13:42:34 +0300
commit1572f78c8d183b01614b599f67d7cc29e3b77240 (patch)
tree7cd820ab5759e548cf29d0b69c1964b4a792367a /protocols
parente20a9e40fb858c666158fd9fa2219093ddcab08a (diff)
YAMN: unused code removed
Diffstat (limited to 'protocols')
-rw-r--r--protocols/YAMN/YAMN.vcxproj1
-rw-r--r--protocols/YAMN/YAMN.vcxproj.filters3
-rw-r--r--protocols/YAMN/src/filterplugin.cpp168
-rw-r--r--protocols/YAMN/src/proto/pop3/pop3comm.cpp53
-rw-r--r--protocols/YAMN/src/services.cpp10
-rw-r--r--protocols/YAMN/src/stdafx.h19
6 files changed, 29 insertions, 225 deletions
diff --git a/protocols/YAMN/YAMN.vcxproj b/protocols/YAMN/YAMN.vcxproj
index 203ab9c98b..0f6af4ca09 100644
--- a/protocols/YAMN/YAMN.vcxproj
+++ b/protocols/YAMN/YAMN.vcxproj
@@ -34,7 +34,6 @@
<PrecompiledHeaderFile>..\stdafx.h</PrecompiledHeaderFile>
</ClCompile>
<ClCompile Include="src\debug.cpp" />
- <ClCompile Include="src\filterplugin.cpp" />
<ClCompile Include="src\mails\decode.cpp">
<PrecompiledHeaderFile>..\stdafx.h</PrecompiledHeaderFile>
</ClCompile>
diff --git a/protocols/YAMN/YAMN.vcxproj.filters b/protocols/YAMN/YAMN.vcxproj.filters
index 0f2b3632b4..3d9a1b8eb9 100644
--- a/protocols/YAMN/YAMN.vcxproj.filters
+++ b/protocols/YAMN/YAMN.vcxproj.filters
@@ -14,9 +14,6 @@
<ClCompile Include="src\debug.cpp">
<Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="src\filterplugin.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
<ClCompile Include="src\mails\decode.cpp">
<Filter>Source Files</Filter>
</ClCompile>
diff --git a/protocols/YAMN/src/filterplugin.cpp b/protocols/YAMN/src/filterplugin.cpp
deleted file mode 100644
index 9d22962b8f..0000000000
--- a/protocols/YAMN/src/filterplugin.cpp
+++ /dev/null
@@ -1,168 +0,0 @@
-/*
- * YAMN plugin export functions for filtering
- *
- * (c) majvan 2002-2004
- */
-
-#include "stdafx.h"
-
- //--------------------------------------------------------------------------------------------------
- //--------------------------------------------------------------------------------------------------
-
-PYAMN_FILTERPLUGINQUEUE FirstFilterPlugin = nullptr;
-
-INT_PTR RegisterFilterPluginSvc(WPARAM, LPARAM);
-
-//Removes plugin from queue and deletes its structures
-INT_PTR UnregisterFilterPlugin(HYAMNFILTERPLUGIN Plugin);
-
-INT_PTR UnregisterFilterPluginSvc(WPARAM wParam, LPARAM lParam);
-
-//Removes all filter plugins
-INT_PTR UnregisterFilterPlugins();
-
-INT_PTR FilterMailSvc(WPARAM, LPARAM);
-
-//Sets imported functions for an plugin and therefore it starts plugin to be registered and running
-// Plugin- plugin, which wants to set its functions
-// Importance- importance of plugin (see m_filterplugin.h)
-// YAMNFilterFcn- pointer to imported functions
-// YAMNfilterFcnVer- version of YAMN_FILTERIMPORTFCN, use YAMN_FILTERIMPORTFCNVERSION
-// returns nonzero if success
-int WINAPI SetFilterPluginFcnImportFcn(HYAMNFILTERPLUGIN Plugin, uint32_t Importance, PYAMN_FILTERIMPORTFCN YAMNFilterFcn, uint32_t YAMNFilterFcnVer);
-
-struct CExportedFunctions FilterPluginExportedFcn[] =
-{
- {YAMN_SETFILTERPLUGINFCNIMPORTID, (void *)SetFilterPluginFcnImportFcn},
-};
-
-struct CExportedServices FilterPluginExportedSvc[] =
-{
- {MS_YAMN_REGISTERFILTERPLUGIN, RegisterFilterPluginSvc},
- {MS_YAMN_UNREGISTERFILTERPLUGIN, UnregisterFilterPluginSvc},
-};
-
-//--------------------------------------------------------------------------------------------------
-//--------------------------------------------------------------------------------------------------
-
-INT_PTR RegisterFilterPluginSvc(WPARAM wParam, LPARAM lParam)
-{
- PYAMN_FILTERREGISTRATION Registration = (PYAMN_FILTERREGISTRATION)wParam;
- HYAMNFILTERPLUGIN Plugin;
-
- if (lParam != YAMN_FILTERREGISTRATIONVERSION)
- return 0;
- if ((Registration->Name == nullptr) || (Registration->Ver == nullptr))
- return NULL;
- if (nullptr == (Plugin = new YAMN_FILTERPLUGIN))
- return NULL;
-
- Plugin->PluginInfo = Registration;
- Plugin->FilterFcn = nullptr;
- return (INT_PTR)Plugin;
-}
-
-INT_PTR UnregisterFilterPlugin(HYAMNFILTERPLUGIN Plugin)
-{
- PYAMN_FILTERPLUGINQUEUE Parser, Found;
-
- if (FirstFilterPlugin->Plugin == Plugin) {
- Found = FirstFilterPlugin;
- FirstFilterPlugin = FirstFilterPlugin->Next;
- }
- else {
- for (Parser = FirstFilterPlugin; (Parser->Next != nullptr) && (Plugin != Parser->Next->Plugin); Parser = Parser->Next);
- if (Parser->Next != nullptr) {
- Found = Parser->Next;
- Parser->Next = Parser->Next->Next;
- }
- else
- Found = nullptr;
- }
- if (Found != nullptr) {
- if (Plugin->FilterFcn->UnLoadFcn != nullptr)
- Plugin->FilterFcn->UnLoadFcn((void *)nullptr);
-
- delete Found->Plugin;
- delete Found;
- return 1;
- }
-
- return 0;
-}
-
-INT_PTR UnregisterFilterPluginSvc(WPARAM wParam, LPARAM)
-{
- HYAMNFILTERPLUGIN Plugin = (HYAMNFILTERPLUGIN)wParam;
-
- mir_cslock lck(PluginRegCS);
- UnregisterFilterPlugin(Plugin);
- return 1;
-}
-
-INT_PTR UnregisterFilterPlugins()
-{
- mir_cslock lck(PluginRegCS);
-
- // We remove protocols from the protocol list
- while (FirstFilterPlugin != nullptr)
- UnregisterFilterPlugin(FirstFilterPlugin->Plugin);
- return 1;
-}
-
-int WINAPI SetFilterPluginFcnImportFcn(HYAMNFILTERPLUGIN Plugin, uint32_t Importance, PYAMN_FILTERIMPORTFCN YAMNFilterFcn, uint32_t YAMNFilterFcnVer)
-{
- PYAMN_FILTERPLUGINQUEUE Parser, Previous;
-
- if (YAMNFilterFcnVer != YAMN_FILTERIMPORTFCNVERSION)
- return 0;
- if (YAMNFilterFcn == nullptr)
- return 0;
-
- Plugin->Importance = Importance;
- Plugin->FilterFcn = YAMNFilterFcn;
-
- mir_cslock lck(PluginRegCS);
-
- // We add protocol to the protocol list
- for (Previous = nullptr, Parser = FirstFilterPlugin; Parser != nullptr && Parser->Next != nullptr && Parser->Plugin->Importance <= Importance; Previous = Parser, Parser = Parser->Next);
-
- if (Previous == nullptr) { //insert to the beginnig of queue
- FirstFilterPlugin = new YAMN_FILTERPLUGINQUEUE;
- FirstFilterPlugin->Plugin = Plugin;
- FirstFilterPlugin->Next = Parser;
- }
- else {
- Previous->Next = new YAMN_FILTERPLUGINQUEUE;
- Previous = Previous->Next; //leave previous, go to actual plugin
- Previous->Plugin = Plugin;
- Previous->Next = Parser; //and in actual plugin set, that next plugin is the one we insert in front of
- }
- return 1;
-}
-
-INT_PTR FilterMailSvc(WPARAM wParam, LPARAM lParam)
-{
- CAccount *Account = (CAccount *)wParam;
- HYAMNMAIL Mail = (HYAMNMAIL)lParam;
- PYAMN_FILTERPLUGINQUEUE ActualPlugin;
-
- mir_cslock lck(PluginRegCS);
- SWriteGuard swa(Account->MessagesAccessSO);
-
- for (ActualPlugin = FirstFilterPlugin; ActualPlugin != nullptr; ActualPlugin = ActualPlugin->Next)
- if (ActualPlugin->Plugin->FilterFcn->FilterMailFcnPtr != nullptr)
- ActualPlugin->Plugin->FilterFcn->FilterMailFcnPtr(Account, YAMN_ACCOUNTVERSION, Mail, YAMN_MAILVERSION);
-
- Mail->Flags |= YAMN_MSG_FILTERED;
-
- //Set mail flags according to spamlevel settings
- if ((Mail->Flags & YAMN_MSG_SPAMMASK) > YAMN_MSG_SPAML1)
- Mail->Flags = Mail->Flags & ~(YAMN_MSG_BROWSER | YAMN_MSG_POPUP | YAMN_MSG_SYSTRAY | YAMN_MSG_SOUND | YAMN_MSG_APP | YAMN_MSG_NEVENT);
- if (YAMN_MSG_SPAML(Mail->Flags, YAMN_MSG_SPAML3) || YAMN_MSG_SPAML(Mail->Flags, YAMN_MSG_SPAML4))
- Mail->Flags = Mail->Flags | (YAMN_MSG_AUTODELETE | YAMN_MSG_DELETEOK); //set message to delete
- if (YAMN_MSG_SPAML(Mail->Flags, YAMN_MSG_SPAML3))
- Mail->Flags = Mail->Flags & ~(YAMN_MSG_MEMDELETE); //set message not to delete it immidiatelly from memory
-
- return 1;
-}
diff --git a/protocols/YAMN/src/proto/pop3/pop3comm.cpp b/protocols/YAMN/src/proto/pop3/pop3comm.cpp
index ba793cd9d3..9d65132475 100644
--- a/protocols/YAMN/src/proto/pop3/pop3comm.cpp
+++ b/protocols/YAMN/src/proto/pop3/pop3comm.cpp
@@ -405,7 +405,7 @@ DWORD WINAPI SynchroPOP3(struct CheckParam *WhichTemp)
CPOP3Account* ActualAccount;
CPop3Client *MyClient;
HYAMNMAIL NewMails = nullptr, MsgQueuePtr = nullptr;
- char *DataRX = nullptr, *Temp;
+ char *DataRX = nullptr;
int mboxsize, msgs, i;
SYSTEMTIME now;
LPVOID YAMNParam;
@@ -567,17 +567,19 @@ DWORD WINAPI SynchroPOP3(struct CheckParam *WhichTemp)
mir_snwprintf(accstatus, TranslateT("Reading body %s"), NewMsgsPtr->ID);
SetStatusFcn(ActualAccount, accstatus);
DataRX = MyClient->Top(MsgQueuePtr->Number, 100);
- if (DataRX != nullptr) {
- Temp = DataRX;
- while ((Temp < DataRX + MyClient->NetClient->Rcv) && (WS(Temp) || ENDLINE(Temp))) Temp++;
-
- if (OKLINE(DataRX))
- for (Temp = DataRX; (Temp < DataRX + MyClient->NetClient->Rcv) && (!ENDLINE(Temp)); Temp++);
- while ((Temp < DataRX + MyClient->NetClient->Rcv) && ENDLINE(Temp)) Temp++;
- }
- else
+ if (DataRX == nullptr)
continue;
- //delete all the headers of the old mail MsgQueuePtr->MailData->TranslatedHeader
+
+ char *Temp = DataRX;
+ while ((Temp < DataRX + MyClient->NetClient->Rcv) && (WS(Temp) || ENDLINE(Temp)))
+ Temp++;
+
+ if (OKLINE(DataRX))
+ for (Temp = DataRX; (Temp < DataRX + MyClient->NetClient->Rcv) && (!ENDLINE(Temp)); Temp++);
+ while ((Temp < DataRX + MyClient->NetClient->Rcv) && ENDLINE(Temp))
+ Temp++;
+
+ // delete all the headers of the old mail MsgQueuePtr->MailData->TranslatedHeader
struct CMimeItem *TH = MsgQueuePtr->MailData->TranslatedHeader;
if (TH) for (; MsgQueuePtr->MailData->TranslatedHeader != nullptr;) {
TH = TH->Next;
@@ -624,31 +626,26 @@ DWORD WINAPI SynchroPOP3(struct CheckParam *WhichTemp)
mir_snwprintf(accstatus, TranslateT("Reading new mail messages (%d%% done)"), 100 * i / msgs);
SetStatusFcn(ActualAccount, accstatus);
- if (DataRX != nullptr) {
- Temp = DataRX;
- while ((Temp < DataRX + MyClient->NetClient->Rcv) && (WS(Temp) || ENDLINE(Temp))) Temp++;
-
- if (OKLINE(DataRX))
- for (Temp = DataRX; (Temp < DataRX + MyClient->NetClient->Rcv) && (!ENDLINE(Temp)); Temp++);
- while ((Temp < DataRX + MyClient->NetClient->Rcv) && ENDLINE(Temp)) Temp++;
- }
- else
+ if (DataRX == nullptr)
continue;
+
+ char *Temp = DataRX;
+ while ((Temp < DataRX + MyClient->NetClient->Rcv) && (WS(Temp) || ENDLINE(Temp)))
+ Temp++;
- TranslateHeaderFcn(Temp, MyClient->NetClient->Rcv - (Temp - DataRX), &MsgQueuePtr->MailData->TranslatedHeader);
+ if (OKLINE(DataRX))
+ for (Temp = DataRX; (Temp < DataRX + MyClient->NetClient->Rcv) && (!ENDLINE(Temp)); Temp++);
+ while ((Temp < DataRX + MyClient->NetClient->Rcv) && ENDLINE(Temp))
+ Temp++;
+ TranslateHeaderFcn(Temp, MyClient->NetClient->Rcv - (Temp - DataRX), &MsgQueuePtr->MailData->TranslatedHeader);
#ifdef DEBUG_DECODE
DebugLog(DecodeFile, "</New mail>\n");
#endif
MsgQueuePtr->Flags |= YAMN_MSG_NORMALNEW;
- if (autoretr) MsgQueuePtr->Flags |= YAMN_MSG_BODYRECEIVED;
-
- //We are going to filter mail. Warning!- we must not be in read access neither write access to mails when calling this service
- //This is done, because the "NewMails" queue is not synchronised. It is because it is new queue. Only this thread uses new queue yet, it is not
- //connected to account mail queue.
- // CallService(MS_YAMN_FILTERMAIL,(WPARAM)ActualAccount,(LPARAM)MsgQueuePtr);
- FilterMailSvc((WPARAM)ActualAccount, (LPARAM)MsgQueuePtr);
+ if (autoretr)
+ MsgQueuePtr->Flags |= YAMN_MSG_BODYRECEIVED;
if (DataRX != nullptr)
free(DataRX);
diff --git a/protocols/YAMN/src/services.cpp b/protocols/YAMN/src/services.cpp
index 180b035a06..d1ce51c96a 100644
--- a/protocols/YAMN/src/services.cpp
+++ b/protocols/YAMN/src/services.cpp
@@ -254,7 +254,6 @@ int Shutdown(WPARAM, LPARAM)
KillTimer(nullptr, SecTimer);
UnregisterProtoPlugins();
- UnregisterFilterPlugins();
return 0;
}
@@ -321,15 +320,6 @@ void CreateServiceFunctions(void)
// Function deletes plugin account
CreateServiceFunction(MS_YAMN_DELETEACCOUNTMAIL, DeleteAccountMailSvc);
- // Function with which filter plugin can register
- CreateServiceFunction(MS_YAMN_REGISTERFILTERPLUGIN, RegisterFilterPluginSvc);
-
- // Function with which filter plugin can unregister
- CreateServiceFunction(MS_YAMN_UNREGISTERFILTERPLUGIN, UnregisterFilterPluginSvc);
-
- // Function filters mail
- CreateServiceFunction(MS_YAMN_FILTERMAIL, FilterMailSvc);
-
// Function contact list double click
CreateServiceFunction(MS_YAMN_CLISTDBLCLICK, ClistContactDoubleclicked);
diff --git a/protocols/YAMN/src/stdafx.h b/protocols/YAMN/src/stdafx.h
index 25dda0a5f5..0cfd60cda2 100644
--- a/protocols/YAMN/src/stdafx.h
+++ b/protocols/YAMN/src/stdafx.h
@@ -25,7 +25,6 @@
#include <m_toptoolbar.h>
#include <m_kbdnotify.h>
-#include <m_filterplugin.h>
#include <m_yamn.h>
#include <m_protoplugin.h>
#include <m_folders.h>
@@ -115,23 +114,16 @@ INT_PTR UnregisterProtocolPluginSvc(WPARAM, LPARAM);
INT_PTR GetFileNameSvc(WPARAM, LPARAM);
INT_PTR DeleteFileNameSvc(WPARAM, LPARAM);
-//From filterplugin.cpp
-//struct CExportedFunctions FilterPluginExported[];
-INT_PTR UnregisterFilterPlugins();
-INT_PTR RegisterFilterPluginSvc(WPARAM, LPARAM);
-INT_PTR UnregisterFilterPluginSvc(WPARAM, LPARAM);
-INT_PTR FilterMailSvc(WPARAM, LPARAM);
-
-//From mails.cpp (MIME)
-//struct CExportedFunctions MailExported[];
+// From mails.cpp (MIME)
+// struct CExportedFunctions MailExported[];
INT_PTR CreateAccountMailSvc(WPARAM wParam, LPARAM lParam);
INT_PTR DeleteAccountMailSvc(WPARAM wParam, LPARAM lParam);
INT_PTR LoadMailDataSvc(WPARAM wParam, LPARAM lParam);
INT_PTR UnloadMailDataSvc(WPARAM wParam, LPARAM);
INT_PTR SaveMailDataSvc(WPARAM wParam, LPARAM lParam);
-//From mime.cpp
-//void WINAPI ExtractHeaderFcn(char *,int,uint16_t,HYAMNMAIL); //already in MailExported
+// From mime.cpp
+// void WINAPI ExtractHeaderFcn(char *,int,uint16_t,HYAMNMAIL); //already in MailExported
struct _tcptable
{
char *NameBase, *NameSub;
@@ -206,9 +198,6 @@ extern YAMN_PROTOPLUGIN *POP3Plugin;
int DecodeQuotedPrintable(char *Src, char *Dst, int DstLen, BOOL isQ);
int DecodeBase64(char *Src, char *Dst, int DstLen);
-//From filterplugin.cpp
-extern PYAMN_FILTERPLUGINQUEUE FirstFilterPlugin;
-
//From protoplugin.cpp
extern YAMN_PROTOPLUGINQUEUE *FirstProtoPlugin;