Juan Lang : crypt32: Support getting the inner content OID from a decoded signed message.

Alexandre Julliard julliard at wine.codeweavers.com
Tue Jul 31 07:54:38 CDT 2007


Module: wine
Branch: master
Commit: 4e0f33dada3257373f012a779538bae1b1331b15
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=4e0f33dada3257373f012a779538bae1b1331b15

Author: Juan Lang <juan.lang at gmail.com>
Date:   Mon Jul 30 12:10:27 2007 -0700

crypt32: Support getting the inner content OID from a decoded signed message.

---

 dlls/crypt32/msg.c       |    8 ++++++++
 dlls/crypt32/tests/msg.c |    1 -
 2 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/dlls/crypt32/msg.c b/dlls/crypt32/msg.c
index 54f0636..c0ddcae 100644
--- a/dlls/crypt32/msg.c
+++ b/dlls/crypt32/msg.c
@@ -1760,6 +1760,14 @@ static BOOL CDecodeSignedMsg_GetParam(CDecodeMsg *msg, DWORD dwParamType,
         else
             SetLastError(CRYPT_E_INVALID_MSG_TYPE);
         break;
+    case CMSG_INNER_CONTENT_TYPE_PARAM:
+        if (msg->u.signedInfo)
+            ret = CRYPT_CopyParam(pvData, pcbData,
+             msg->u.signedInfo->content.pszObjId,
+             strlen(msg->u.signedInfo->content.pszObjId) + 1);
+        else
+            SetLastError(CRYPT_E_INVALID_MSG_TYPE);
+        break;
     case CMSG_SIGNER_COUNT_PARAM:
         if (msg->u.signedInfo)
             ret = CRYPT_CopyParam(pvData, pcbData,
diff --git a/dlls/crypt32/tests/msg.c b/dlls/crypt32/tests/msg.c
index 28b11e5..dba0752 100644
--- a/dlls/crypt32/tests/msg.c
+++ b/dlls/crypt32/tests/msg.c
@@ -1978,7 +1978,6 @@ static void test_decode_msg_get_param(void)
     ok(ret, "CryptMsgUpdate failed: %08x\n", GetLastError());
     check_param("signed content", msg, CMSG_CONTENT_PARAM, msgData,
      sizeof(msgData));
-    todo_wine
     check_param("inner content", msg, CMSG_INNER_CONTENT_TYPE_PARAM,
      (const BYTE *)szOID_RSA_data, strlen(szOID_RSA_data) + 1);
     size = sizeof(value);




More information about the wine-cvs mailing list