diff options
author | George Hazan <ghazan@miranda.im> | 2021-01-08 14:54:51 +0300 |
---|---|---|
committer | George Hazan <ghazan@miranda.im> | 2021-01-08 14:54:51 +0300 |
commit | 64579d553e4089d55c136140bd0058696d2cf526 (patch) | |
tree | 7b7e6c5cd03b9060bd7080b5981938005436b432 /plugins | |
parent | dae0d079ad629d499034ff911e0b1a807c19fce0 (diff) |
another bunch of duplicate code moved to the core
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/Db3x_mmap/db3x_mmap.vcxproj | 1 | ||||
-rw-r--r-- | plugins/Db3x_mmap/db3x_mmap.vcxproj.filters | 3 | ||||
-rw-r--r-- | plugins/Db3x_mmap/res/db3x_mmap.rc | 46 | ||||
-rw-r--r-- | plugins/Db3x_mmap/src/dbcrypt.cpp | 32 | ||||
-rw-r--r-- | plugins/Db3x_mmap/src/dbintf.h | 3 | ||||
-rw-r--r-- | plugins/Db3x_mmap/src/stdafx.h | 2 | ||||
-rw-r--r-- | plugins/Db3x_mmap/src/ui.h | 55 | ||||
-rw-r--r-- | plugins/Dbx_mdbx/res/dbx_mdbx.rc | 13 | ||||
-rw-r--r-- | plugins/Dbx_mdbx/src/dbcrypt.cpp | 89 | ||||
-rw-r--r-- | plugins/Dbx_mdbx/src/dbintf.h | 3 | ||||
-rw-r--r-- | plugins/Dbx_mdbx/src/resource.h | 4 | ||||
-rw-r--r-- | plugins/Dbx_mdbx/src/ui.cpp | 6 | ||||
-rw-r--r-- | plugins/Dbx_sqlite/dbx_sqlite.vcxproj | 1 | ||||
-rw-r--r-- | plugins/Dbx_sqlite/dbx_sqlite.vcxproj.filters | 3 | ||||
-rw-r--r-- | plugins/Dbx_sqlite/res/dbx_sqlite.rc | 46 | ||||
-rw-r--r-- | plugins/Dbx_sqlite/src/dbcrypt.cpp | 11 | ||||
-rwxr-xr-x | plugins/Dbx_sqlite/src/dbintf.h | 2 | ||||
-rw-r--r-- | plugins/Dbx_sqlite/src/stdafx.h | 5 |
18 files changed, 43 insertions, 282 deletions
diff --git a/plugins/Db3x_mmap/db3x_mmap.vcxproj b/plugins/Db3x_mmap/db3x_mmap.vcxproj index ef77eb5831..4018dd621c 100644 --- a/plugins/Db3x_mmap/db3x_mmap.vcxproj +++ b/plugins/Db3x_mmap/db3x_mmap.vcxproj @@ -44,7 +44,6 @@ <ClInclude Include="src\dbintf.h" />
<ClInclude Include="src\resource.h" />
<ClInclude Include="src\stdafx.h" />
- <ClInclude Include="src\ui.h" />
<ClInclude Include="src\version.h" />
</ItemGroup>
<ItemGroup>
diff --git a/plugins/Db3x_mmap/db3x_mmap.vcxproj.filters b/plugins/Db3x_mmap/db3x_mmap.vcxproj.filters index 7b06c45b0b..2ffffc35c5 100644 --- a/plugins/Db3x_mmap/db3x_mmap.vcxproj.filters +++ b/plugins/Db3x_mmap/db3x_mmap.vcxproj.filters @@ -52,9 +52,6 @@ <ClInclude Include="src\stdafx.h">
<Filter>Header Files</Filter>
</ClInclude>
- <ClInclude Include="src\ui.h">
- <Filter>Header Files</Filter>
- </ClInclude>
<ClInclude Include="src\version.h">
<Filter>Header Files</Filter>
</ClInclude>
diff --git a/plugins/Db3x_mmap/res/db3x_mmap.rc b/plugins/Db3x_mmap/res/db3x_mmap.rc index 7b810e2ded..a2a65076cc 100644 --- a/plugins/Db3x_mmap/res/db3x_mmap.rc +++ b/plugins/Db3x_mmap/res/db3x_mmap.rc @@ -12,52 +12,6 @@ #undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
-// Русский (Россия) resources
-
-#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_RUS)
-LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
-#pragma code_page(1251)
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Dialog
-//
-
-IDD_SELECT_CRYPTOPROVIDER DIALOGEX 0, 0, 229, 76
-STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
-CAPTION "Select crypto provider"
-FONT 8, "MS Shell Dlg", 400, 0, 0x1
-BEGIN
- DEFPUSHBUTTON "OK",IDOK,113,55,50,14
- PUSHBUTTON "Cancel",IDCANCEL,172,55,50,14
- COMBOBOX IDC_SELECTCRYPT_COMBO,16,14,199,30,CBS_DROPDOWNLIST,WS_EX_WINDOWEDGE | WS_EX_CONTROLPARENT
- LTEXT "",IDC_CRYPTOPROVIDER_DESCR,18,34,197,14,NOT WS_GROUP
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// DESIGNINFO
-//
-
-#ifdef APSTUDIO_INVOKED
-GUIDELINES DESIGNINFO
-BEGIN
- IDD_SELECT_CRYPTOPROVIDER, DIALOG
- BEGIN
- LEFTMARGIN, 7
- RIGHTMARGIN, 222
- TOPMARGIN, 7
- BOTTOMMARGIN, 69
- END
-END
-#endif // APSTUDIO_INVOKED
-
-#endif // Русский (Россия) resources
-/////////////////////////////////////////////////////////////////////////////
-
-
-/////////////////////////////////////////////////////////////////////////////
// Английский (США) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
diff --git a/plugins/Db3x_mmap/src/dbcrypt.cpp b/plugins/Db3x_mmap/src/dbcrypt.cpp index c76f3feb4e..340464eed8 100644 --- a/plugins/Db3x_mmap/src/dbcrypt.cpp +++ b/plugins/Db3x_mmap/src/dbcrypt.cpp @@ -132,26 +132,10 @@ int CDb3Mmap::InitCrypt() DBVARIANT dbv = { 0 };
dbv.type = DBVT_BLOB;
if (GetContactSetting(0, "CryptoEngine", "Provider", &dbv)) {
- LBL_CreateProvider:
- CRYPTO_PROVIDER **ppProvs;
- int iNumProvs;
- Crypto_EnumProviders(&iNumProvs, &ppProvs);
- if (iNumProvs == 0)
+LBL_CreateProvider:
+ pProvider = SelectProvider();
+ if (pProvider == nullptr)
return 1;
-
- if (iNumProvs > 1)
- {
- CSelectCryptoDialog dlg(ppProvs, iNumProvs);
- dlg.DoModal();
- pProvider = dlg.GetSelected();
- }
- else pProvider = ppProvs[0];
-
- DBCONTACTWRITESETTING dbcws = { "CryptoEngine", "Provider" };
- dbcws.value.type = DBVT_BLOB;
- dbcws.value.pbVal = (PBYTE)pProvider->pszName;
- dbcws.value.cpbVal = (WORD)mir_strlen(pProvider->pszName) + 1;
- WriteContactSetting(0, &dbcws);
}
else {
if (dbv.type != DBVT_BLOB) { // old version, clean it up
@@ -225,6 +209,16 @@ void CDb3Mmap::StoreKey() SecureZeroMemory(pKey, iKeyLength);
}
+STDMETHODIMP_(BOOL) CDb3Mmap::StoreProvider(CRYPTO_PROVIDER *pProvider)
+{
+ DBCONTACTWRITESETTING dbcws = { "CryptoEngine", "Provider" };
+ dbcws.value.type = DBVT_BLOB;
+ dbcws.value.pbVal = (PBYTE)pProvider->pszName;
+ dbcws.value.cpbVal = (WORD)mir_strlen(pProvider->pszName) + 1;
+ WriteContactSetting(0, &dbcws);
+ return TRUE;
+}
+
void CDb3Mmap::SetPassword(const wchar_t *ptszPassword)
{
if (ptszPassword == nullptr || *ptszPassword == 0) {
diff --git a/plugins/Db3x_mmap/src/dbintf.h b/plugins/Db3x_mmap/src/dbintf.h index 70d60e80df..ea3a99c364 100644 --- a/plugins/Db3x_mmap/src/dbintf.h +++ b/plugins/Db3x_mmap/src/dbintf.h @@ -203,7 +203,6 @@ struct CDb3Mmap : public MDatabaseCommon, public MZeroedObject void WriteSignature(DBSignature&);
__forceinline HANDLE getFile() const { return m_hDbFile; }
- __forceinline bool isEncrypted() const { return m_bEncrypted; }
__forceinline bool usesPassword() const { return m_bUsesPassword; }
public:
@@ -232,6 +231,8 @@ public: STDMETHODIMP_(BOOL) EnumModuleNames(DBMODULEENUMPROC pFunc, void *pParam) override;
+ STDMETHODIMP_(BOOL) StoreProvider(CRYPTO_PROVIDER*);
+
STDMETHODIMP_(BOOL) GetContactSettingWorker(MCONTACT contactID, LPCSTR szModule, LPCSTR szSetting, DBVARIANT *dbv, int isStatic) override;
STDMETHODIMP_(BOOL) WriteContactSettingWorker(MCONTACT contactID, DBCONTACTWRITESETTING &dbcws) override;
STDMETHODIMP_(BOOL) DeleteContactSetting(MCONTACT contactID, LPCSTR szModule, LPCSTR szSetting) override;
diff --git a/plugins/Db3x_mmap/src/stdafx.h b/plugins/Db3x_mmap/src/stdafx.h index 354696969d..1c2844a671 100644 --- a/plugins/Db3x_mmap/src/stdafx.h +++ b/plugins/Db3x_mmap/src/stdafx.h @@ -65,8 +65,6 @@ struct CMPlugin : public PLUGIN<CMPlugin> extern LIST<CDb3Mmap> g_Dbs;
extern DBSignature dbSignatureU, dbSignatureE, dbSignatureIM, dbSignatureSA, dbSignatureSD;
-#include "ui.h"
-
#ifdef __GNUC__
#define mir_i64(x) (x##LL)
#else
diff --git a/plugins/Db3x_mmap/src/ui.h b/plugins/Db3x_mmap/src/ui.h deleted file mode 100644 index c52a479bc6..0000000000 --- a/plugins/Db3x_mmap/src/ui.h +++ /dev/null @@ -1,55 +0,0 @@ -#pragma once
-
-class CSelectCryptoDialog : public CDlgBase
-{
- CCtrlCombo m_combo;
- CCtrlData m_descr;
- CRYPTO_PROVIDER **m_provs;
- size_t m_provscount;
- CRYPTO_PROVIDER *m_selected;
-
-public:
- CSelectCryptoDialog(CRYPTO_PROVIDER **provs, size_t count) :
- CDlgBase(g_plugin, IDD_SELECT_CRYPTOPROVIDER),
- m_combo(this, IDC_SELECTCRYPT_COMBO),
- m_descr(this, IDC_CRYPTOPROVIDER_DESCR),
- m_provs(provs),
- m_provscount(count),
- m_selected(nullptr)
- {
- m_combo.OnChange = Callback(this, &CSelectCryptoDialog::OnComboChanged);
- }
-
- bool OnInitDialog() override
- {
- for (size_t i = 0; i < m_provscount; i++)
- {
- CRYPTO_PROVIDER *prov = m_provs[i];
- m_combo.AddStringA(prov->pszName, i);
- }
- m_combo.SetCurSel(0);
- SetDescr(m_provs[0]);
- return true;
- }
-
- bool OnApply() override
- {
- m_selected = m_provs[ m_combo.GetItemData(m_combo.GetCurSel()) ];
- return true;
- }
-
- void OnComboChanged(CCtrlCombo*)
- {
- SetDescr(m_provs[m_combo.GetItemData(m_combo.GetCurSel())]);
- }
-
- void SetDescr(CRYPTO_PROVIDER *prov)
- {
- m_descr.SetText(prov->szDescr.w);
- }
-
- inline CRYPTO_PROVIDER* GetSelected()
- {
- return m_selected;
- }
-};
\ No newline at end of file diff --git a/plugins/Dbx_mdbx/res/dbx_mdbx.rc b/plugins/Dbx_mdbx/res/dbx_mdbx.rc index 81d739e697..61530296f2 100644 --- a/plugins/Dbx_mdbx/res/dbx_mdbx.rc +++ b/plugins/Dbx_mdbx/res/dbx_mdbx.rc @@ -23,19 +23,6 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US // Dialog
//
-IDD_SELECT_CRYPTOPROVIDER DIALOGEX 0, 0, 229, 76
-STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
-CAPTION "Select crypto provider"
-FONT 8, "MS Shell Dlg", 400, 0, 0x1
-BEGIN
- DEFPUSHBUTTON "OK",IDOK,113,55,50,14
- PUSHBUTTON "Cancel",IDCANCEL,172,55,50,14
- COMBOBOX IDC_SELECTCRYPT_COMBO,16,12,199,30,CBS_DROPDOWNLIST | CBS_SORT | WS_TABSTOP
- LTEXT "",IDC_CRYPTOPROVIDER_DESCR,17,29,197,14,NOT WS_GROUP
- CONTROL "Total encryption (Recommended only for paranoid users)",IDC_CHECK_TOTALCRYPT,
- "Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,14,45,89,24
-END
-
IDD_LOGIN DIALOGEX 0, 0, 190, 86
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_TOPMOST | WS_EX_TOOLWINDOW
diff --git a/plugins/Dbx_mdbx/src/dbcrypt.cpp b/plugins/Dbx_mdbx/src/dbcrypt.cpp index 2f8f10ce7e..d20315b773 100644 --- a/plugins/Dbx_mdbx/src/dbcrypt.cpp +++ b/plugins/Dbx_mdbx/src/dbcrypt.cpp @@ -23,96 +23,19 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include "stdafx.h"
-class CSelectCryptoDialog : public CDlgBase
-{
- CCtrlCombo m_combo;
- CCtrlData m_descr;
- CCtrlCheck m_chkTotalCrypt;
- CRYPTO_PROVIDER **m_provs;
- size_t m_provscount;
- CRYPTO_PROVIDER *m_selected;
- bool m_bTotalEncryption;
-
- bool OnInitDialog() override
- {
- for (size_t i = 0; i < m_provscount; i++) {
- CRYPTO_PROVIDER *prov = m_provs[i];
- m_combo.AddStringA(prov->pszName, i);
- }
- m_combo.SetCurSel(0);
- m_descr.SetText(m_provs[0]->szDescr.w);
- return true;
- }
-
- bool OnApply() override
- {
- m_selected = m_provs[m_combo.GetItemData(m_combo.GetCurSel())];
- m_bTotalEncryption = m_chkTotalCrypt.GetState() != 0;
- return true;
- }
-
- void OnComboChanged(CCtrlCombo*)
- {
- m_descr.SetText(m_provs[m_combo.GetItemData(m_combo.GetCurSel())]->szDescr.w);
- }
-
-public:
- CSelectCryptoDialog(CRYPTO_PROVIDER **provs, size_t count) :
- CDlgBase(g_plugin, IDD_SELECT_CRYPTOPROVIDER),
- m_combo(this, IDC_SELECTCRYPT_COMBO),
- m_descr(this, IDC_CRYPTOPROVIDER_DESCR),
- m_chkTotalCrypt(this, IDC_CHECK_TOTALCRYPT),
- m_provs(provs),
- m_provscount(count),
- m_selected(nullptr)
- {
- m_combo.OnChange = Callback(this, &CSelectCryptoDialog::OnComboChanged);
- }
-
- inline CRYPTO_PROVIDER* GetSelected()
- { return m_selected;
- }
- inline bool TotalSelected()
- { return m_bTotalEncryption;
- }
-};
-
char DBKey_Crypto_Provider[] = "Provider";
char DBKey_Crypto_Key[] = "Key";
char DBKey_Crypto_IsEncrypted[] = "EncryptedDB";
-CRYPTO_PROVIDER* CDbxMDBX::SelectProvider()
+STDMETHODIMP_(BOOL) CDbxMDBX::StoreProvider(CRYPTO_PROVIDER *pProv)
{
- CRYPTO_PROVIDER **ppProvs, *pProv;
- int iNumProvs;
- Crypto_EnumProviders(&iNumProvs, &ppProvs);
-
- if (iNumProvs == 0)
- return nullptr;
-
- bool bTotalCrypt = false;
-
- if (iNumProvs > 1) {
- CSelectCryptoDialog dlg(ppProvs, iNumProvs);
- dlg.DoModal();
- pProv = dlg.GetSelected();
- bTotalCrypt = dlg.TotalSelected();
- }
- else pProv = ppProvs[0];
-
- {
- txn_ptr trnlck(this);
- MDBX_val key = { DBKey_Crypto_Provider, sizeof(DBKey_Crypto_Provider) }, value = { pProv->pszName, mir_strlen(pProv->pszName) + 1 };
- if (mdbx_put(trnlck, m_dbCrypto, &key, &value, MDBX_UPSERT) != MDBX_SUCCESS)
- return nullptr;
-
- key.iov_len = sizeof(DBKey_Crypto_IsEncrypted); key.iov_base = DBKey_Crypto_IsEncrypted; value.iov_len = sizeof(bool); value.iov_base = &bTotalCrypt;
- if (mdbx_put(trnlck, m_dbCrypto, &key, &value, MDBX_UPSERT) != MDBX_SUCCESS)
- return nullptr;
- }
+ txn_ptr trnlck(this);
+ MDBX_val key = { DBKey_Crypto_Provider, sizeof(DBKey_Crypto_Provider) }, value = { pProv->pszName, mir_strlen(pProv->pszName) + 1 };
+ if (mdbx_put(trnlck, m_dbCrypto, &key, &value, MDBX_UPSERT) != MDBX_SUCCESS)
+ return FALSE;
DBFlush();
- return pProv;
+ return TRUE;
}
/////////////////////////////////////////////////////////////////////////////////////////
diff --git a/plugins/Dbx_mdbx/src/dbintf.h b/plugins/Dbx_mdbx/src/dbintf.h index c802b05d3b..1003c31c7c 100644 --- a/plugins/Dbx_mdbx/src/dbintf.h +++ b/plugins/Dbx_mdbx/src/dbintf.h @@ -225,8 +225,6 @@ class CDbxMDBX : public MDatabaseCommon, public MIDatabaseChecker, public MZeroe MDBX_dbi m_dbCrypto;
int InitCrypt(void);
- CRYPTO_PROVIDER* SelectProvider();
-
void InitDialogs();
public:
@@ -283,6 +281,7 @@ public: STDMETHODIMP_(BOOL) MetaSplitHistory(DBCachedContact *ccMeta, DBCachedContact *ccSub) override;
STDMETHODIMP_(BOOL) MetaRemoveSubHistory(DBCachedContact *ccSub) override;
+ STDMETHODIMP_(BOOL) StoreProvider(CRYPTO_PROVIDER*);
STDMETHODIMP_(BOOL) Compact();
STDMETHODIMP_(BOOL) Backup(const wchar_t*);
diff --git a/plugins/Dbx_mdbx/src/resource.h b/plugins/Dbx_mdbx/src/resource.h index dfc3ffc748..a6c8f8644e 100644 --- a/plugins/Dbx_mdbx/src/resource.h +++ b/plugins/Dbx_mdbx/src/resource.h @@ -8,7 +8,6 @@ #define IDD_NEWPASS 103
#define IDD_CHANGEPASS 104
#define IDD_OPTIONS 105
-#define IDD_SELECT_CRYPTOPROVIDER 106
#define IDI_COMPACT 107
#define IDC_HEADERBAR 1001
#define IDC_LANG 1002
@@ -18,9 +17,6 @@ #define IDC_OLDPASS 1006
#define IDC_STANDARD 1007
#define IDC_TOTAL 1008
-#define IDC_SELECTCRYPT_COMBO 1010
-#define IDC_CRYPTOPROVIDER_DESCR 1011
-#define IDC_CHECK_TOTALCRYPT 1012
// Next default values for new objects
//
diff --git a/plugins/Dbx_mdbx/src/ui.cpp b/plugins/Dbx_mdbx/src/ui.cpp index 971f31c8db..6b7ce1fe83 100644 --- a/plugins/Dbx_mdbx/src/ui.cpp +++ b/plugins/Dbx_mdbx/src/ui.cpp @@ -43,13 +43,11 @@ void LanguageChanged(HWND hwndDlg) static bool CheckOldPassword(HWND hwndDlg, CDbxMDBX *db)
{
- if (db->usesPassword())
- {
+ if (db->usesPassword()) {
wchar_t buf[100];
GetDlgItemText(hwndDlg, IDC_OLDPASS, buf, _countof(buf));
pass_ptrA oldPass(mir_utf8encodeW(buf));
- if (!db->getCrypt()->checkPassword(oldPass))
- {
+ if (!db->getCrypt()->checkPassword(oldPass)) {
SetDlgItemText(hwndDlg, IDC_HEADERBAR, TranslateT("Wrong old password entered!"));
return false;
}
diff --git a/plugins/Dbx_sqlite/dbx_sqlite.vcxproj b/plugins/Dbx_sqlite/dbx_sqlite.vcxproj index 3cfd971be6..ef4e8a8b49 100644 --- a/plugins/Dbx_sqlite/dbx_sqlite.vcxproj +++ b/plugins/Dbx_sqlite/dbx_sqlite.vcxproj @@ -32,6 +32,7 @@ </ImportGroup> <ItemGroup> <ClCompile Include="src\dbcontacts.cpp" /> + <ClCompile Include="src\dbcrypt.cpp" /> <ClCompile Include="src\dbevents.cpp" /> <ClCompile Include="src\dbintf.cpp" /> <ClCompile Include="src\dbsettings.cpp" /> diff --git a/plugins/Dbx_sqlite/dbx_sqlite.vcxproj.filters b/plugins/Dbx_sqlite/dbx_sqlite.vcxproj.filters index e1d6d3b7b0..cda2246184 100644 --- a/plugins/Dbx_sqlite/dbx_sqlite.vcxproj.filters +++ b/plugins/Dbx_sqlite/dbx_sqlite.vcxproj.filters @@ -20,6 +20,9 @@ <ClCompile Include="src\stdafx.cxx"> <Filter>Source Files</Filter> </ClCompile> + <ClCompile Include="src\dbcrypt.cpp"> + <Filter>Source Files</Filter> + </ClCompile> </ItemGroup> <ItemGroup> <ClInclude Include="src\dbintf.h"> diff --git a/plugins/Dbx_sqlite/res/dbx_sqlite.rc b/plugins/Dbx_sqlite/res/dbx_sqlite.rc index 94f7d5811b..141e211876 100644 --- a/plugins/Dbx_sqlite/res/dbx_sqlite.rc +++ b/plugins/Dbx_sqlite/res/dbx_sqlite.rc @@ -12,52 +12,6 @@ #undef APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// -// Русский (Россия) resources - -#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_RUS) -LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT -#pragma code_page(1251) - -///////////////////////////////////////////////////////////////////////////// -// -// Dialog -// - -IDD_SELECT_CRYPTOPROVIDER DIALOGEX 0, 0, 229, 76 -STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU -CAPTION "Select crypto provider" -FONT 8, "MS Shell Dlg", 400, 0, 0x1 -BEGIN - DEFPUSHBUTTON "OK",IDOK,113,55,50,14 - PUSHBUTTON "Cancel",IDCANCEL,172,55,50,14 - COMBOBOX IDC_SELECTCRYPT_COMBO,16,14,199,30,CBS_DROPDOWNLIST,WS_EX_WINDOWEDGE | WS_EX_CONTROLPARENT - LTEXT "",IDC_CRYPTOPROVIDER_DESCR,18,34,197,14,NOT WS_GROUP -END - - -///////////////////////////////////////////////////////////////////////////// -// -// DESIGNINFO -// - -#ifdef APSTUDIO_INVOKED -GUIDELINES DESIGNINFO -BEGIN - IDD_SELECT_CRYPTOPROVIDER, DIALOG - BEGIN - LEFTMARGIN, 7 - RIGHTMARGIN, 222 - TOPMARGIN, 7 - BOTTOMMARGIN, 69 - END -END -#endif // APSTUDIO_INVOKED - -#endif // Русский (Россия) resources -///////////////////////////////////////////////////////////////////////////// - - -///////////////////////////////////////////////////////////////////////////// // Английский (США) resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) diff --git a/plugins/Dbx_sqlite/src/dbcrypt.cpp b/plugins/Dbx_sqlite/src/dbcrypt.cpp new file mode 100644 index 0000000000..f0dca5a0bc --- /dev/null +++ b/plugins/Dbx_sqlite/src/dbcrypt.cpp @@ -0,0 +1,11 @@ +#include "stdafx.h" + +STDMETHODIMP_(BOOL) CDbxSQLite::StoreProvider(CRYPTO_PROVIDER *pProvider) +{ + DBCONTACTWRITESETTING dbcws = { "CryptoEngine", "Provider" }; + dbcws.value.type = DBVT_BLOB; + dbcws.value.pbVal = (PBYTE)pProvider->pszName; + dbcws.value.cpbVal = (WORD)mir_strlen(pProvider->pszName) + 1; + WriteContactSetting(0, &dbcws); + return TRUE; +} diff --git a/plugins/Dbx_sqlite/src/dbintf.h b/plugins/Dbx_sqlite/src/dbintf.h index 9fb06f84d8..ca220289c0 100755 --- a/plugins/Dbx_sqlite/src/dbintf.h +++ b/plugins/Dbx_sqlite/src/dbintf.h @@ -91,6 +91,8 @@ public: STDMETHODIMP_(BOOL) EnumModuleNames(DBMODULEENUMPROC pFunc, void *pParam) override; + STDMETHODIMP_(BOOL) StoreProvider(CRYPTO_PROVIDER*); + STDMETHODIMP_(BOOL) WriteContactSettingWorker(MCONTACT contactID, DBCONTACTWRITESETTING &dbcws) override; STDMETHODIMP_(BOOL) DeleteContactSetting(MCONTACT contactID, LPCSTR szModule, LPCSTR szSetting) override; STDMETHODIMP_(BOOL) EnumContactSettings(MCONTACT hContact, DBSETTINGENUMPROC pfnEnumProc, const char *szModule, void *param) override; diff --git a/plugins/Dbx_sqlite/src/stdafx.h b/plugins/Dbx_sqlite/src/stdafx.h index d1cbb5ec17..edeed11711 100644 --- a/plugins/Dbx_sqlite/src/stdafx.h +++ b/plugins/Dbx_sqlite/src/stdafx.h @@ -6,12 +6,11 @@ #include <memory> #include <malloc.h> -#include <newpluginapi.h> #include <win2k.h> #include <assert.h> -#include <m_core.h> -#include <m_system.h> +#include <newpluginapi.h> +#include <m_crypto.h> #include <m_database.h> #include <m_protocols.h> #include <m_metacontacts.h> |