Dmitry Timoshkov : secur32: Implement DecryptMessage in the SSP/ AP wrapper.
Alexandre Julliard
julliard at winehq.org
Thu Feb 1 16:14:53 CST 2018
Module: wine
Branch: master
Commit: 6932541ea682172b2d8c1975e52d91fec486be19
URL: https://source.winehq.org/git/wine.git/?a=commit;h=6932541ea682172b2d8c1975e52d91fec486be19
Author: Dmitry Timoshkov <dmitry at baikal.ru>
Date: Thu Feb 1 18:04:28 2018 +0800
secur32: Implement DecryptMessage in the SSP/AP wrapper.
Signed-off-by: Dmitry Timoshkov <dmitry at baikal.ru>
Signed-off-by: Hans Leidekker <hans at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/secur32/lsa.c | 25 +++++++++++++++++++++++--
1 file changed, 23 insertions(+), 2 deletions(-)
diff --git a/dlls/secur32/lsa.c b/dlls/secur32/lsa.c
index b89052d..35df4ce 100644
--- a/dlls/secur32/lsa.c
+++ b/dlls/secur32/lsa.c
@@ -643,6 +643,27 @@ static SECURITY_STATUS WINAPI lsa_EncryptMessage(CtxtHandle *context, ULONG qual
return lsa_package->user_api->SealMessage(lsa_context, quality_of_protection, message, message_seq_no);
}
+static SECURITY_STATUS WINAPI lsa_DecryptMessage(CtxtHandle *context, SecBufferDesc *message,
+ ULONG message_seq_no, ULONG *quality_of_protection)
+{
+ struct lsa_package *lsa_package;
+ LSA_SEC_HANDLE lsa_context;
+
+ TRACE("%p %p %u %p)\n", context, message, message_seq_no, quality_of_protection);
+
+ if (!context) return SEC_E_INVALID_HANDLE;
+
+ lsa_package = (struct lsa_package *)context->dwUpper;
+ lsa_context = (LSA_SEC_HANDLE)context->dwLower;
+
+ if (!lsa_package) return SEC_E_INVALID_HANDLE;
+
+ if (!lsa_package->user_api || !lsa_package->user_api->UnsealMessage)
+ return SEC_E_UNSUPPORTED_FUNCTION;
+
+ return lsa_package->user_api->UnsealMessage(lsa_context, message, message_seq_no, quality_of_protection);
+}
+
static const SecurityFunctionTableW lsa_sspi_tableW =
{
1,
@@ -671,7 +692,7 @@ static const SecurityFunctionTableW lsa_sspi_tableW =
NULL, /* Reserved8 */
NULL, /* QuerySecurityContextToken */
lsa_EncryptMessage,
- NULL, /* DecryptMessage */
+ lsa_DecryptMessage,
NULL, /* SetContextAttributesW */
};
@@ -703,7 +724,7 @@ static const SecurityFunctionTableA lsa_sspi_tableA =
NULL, /* Reserved8 */
NULL, /* QuerySecurityContextToken */
lsa_EncryptMessage,
- NULL, /* DecryptMessage */
+ lsa_DecryptMessage,
NULL, /* SetContextAttributesA */
};
More information about the wine-cvs
mailing list