summaryrefslogtreecommitdiff
path: root/src/modules/crypt
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/crypt')
-rw-r--r--src/modules/crypt/encrypt.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/modules/crypt/encrypt.cpp b/src/modules/crypt/encrypt.cpp
index ab73ac5671..4cb096e3ec 100644
--- a/src/modules/crypt/encrypt.cpp
+++ b/src/modules/crypt/encrypt.cpp
@@ -74,6 +74,15 @@ static INT_PTR srvRegister(WPARAM wParam, LPARAM lParam)
return 0;
}
+static INT_PTR srvEnumProviders(WPARAM wParam, LPARAM lParam)
+{
+ if (wParam && lParam) {
+ *(int*)wParam = arProviders.getCount();
+ *(CRYPTO_PROVIDER***)lParam = arProviders.getArray();
+ }
+ return 0;
+}
+
/////////////////////////////////////////////////////////////////////////////////////////
int InitCrypt(void)
@@ -82,6 +91,7 @@ int InitCrypt(void)
CreateServiceFunction(MS_DB_CRYPT_DECODESTRING, DecodeString);
CreateServiceFunction(MS_CRYPTO_REGISTER_ENGINE, srvRegister);
+ CreateServiceFunction(MS_CRYPTO_ENUM_PROVIDERS, srvEnumProviders);
return 0;
}