Juan Lang : crypt32: Add helper function to update signed message
data.
Alexandre Julliard
julliard at wine.codeweavers.com
Tue Aug 21 15:22:24 CDT 2007
Module: wine
Branch: master
Commit: de88fedcce46fa51e3b84e8819882c1faa75c386
URL: http://source.winehq.org/git/wine.git/?a=commit;h=de88fedcce46fa51e3b84e8819882c1faa75c386
Author: Juan Lang <juan.lang at gmail.com>
Date: Mon Aug 20 17:45:33 2007 -0700
crypt32: Add helper function to update signed message data.
---
dlls/crypt32/msg.c | 31 +++++++++++++++++--------------
1 files changed, 17 insertions(+), 14 deletions(-)
diff --git a/dlls/crypt32/msg.c b/dlls/crypt32/msg.c
index 6c33941..9eab762 100644
--- a/dlls/crypt32/msg.c
+++ b/dlls/crypt32/msg.c
@@ -1089,6 +1089,20 @@ static BOOL CSignedMsgData_Sign(CSignedMsgData *msg_data)
return ret;
}
+static BOOL CSignedMsgData_Update(CSignedMsgData *msg_data,
+ const BYTE *pbData, DWORD cbData, BOOL fFinal)
+{
+ BOOL ret = CSignedMsgData_UpdateHash(msg_data, pbData, cbData);
+
+ if (ret && fFinal)
+ {
+ ret = CSignedMsgData_UpdateAuthenticatedAttributes(msg_data);
+ if (ret)
+ ret = CSignedMsgData_Sign(msg_data);
+ }
+ return ret;
+}
+
static BOOL CSignedEncodeMsg_Update(HCRYPTMSG hCryptMsg, const BYTE *pbData,
DWORD cbData, BOOL fFinal)
{
@@ -1097,14 +1111,7 @@ static BOOL CSignedEncodeMsg_Update(HCRYPTMSG hCryptMsg, const BYTE *pbData,
if (msg->base.streamed || (msg->base.open_flags & CMSG_DETACHED_FLAG))
{
- ret = CSignedMsgData_UpdateHash(&msg->msg_data, pbData, cbData);
- if (ret && fFinal)
- {
- ret = CSignedMsgData_UpdateAuthenticatedAttributes(
- &msg->msg_data);
- if (ret)
- ret = CSignedMsgData_Sign(&msg->msg_data);
- }
+ ret = CSignedMsgData_Update(&msg->msg_data, pbData, cbData, fFinal);
if (msg->base.streamed)
FIXME("streamed partial stub\n");
}
@@ -1127,12 +1134,8 @@ static BOOL CSignedEncodeMsg_Update(HCRYPTMSG hCryptMsg, const BYTE *pbData,
else
ret = TRUE;
if (ret)
- ret = CSignedMsgData_UpdateHash(&msg->msg_data, pbData, cbData);
- if (ret)
- ret = CSignedMsgData_UpdateAuthenticatedAttributes(
- &msg->msg_data);
- if (ret)
- ret = CSignedMsgData_Sign(&msg->msg_data);
+ ret = CSignedMsgData_Update(&msg->msg_data, pbData, cbData,
+ fFinal);
}
}
return ret;
More information about the wine-cvs
mailing list