crypt32: Implement getting content for data messages opened to encode.
This commit is contained in:
parent
263f424c3b
commit
f75b86f02b
@ -118,8 +118,17 @@ static BOOL CDataEncodeMsg_GetParam(HCRYPTMSG hCryptMsg, DWORD dwParamType,
|
|||||||
switch (dwParamType)
|
switch (dwParamType)
|
||||||
{
|
{
|
||||||
case CMSG_CONTENT_PARAM:
|
case CMSG_CONTENT_PARAM:
|
||||||
FIXME("stub\n");
|
{
|
||||||
|
CRYPT_CONTENT_INFO info;
|
||||||
|
char rsa_data[] = "1.2.840.113549.1.7.1";
|
||||||
|
|
||||||
|
info.pszObjId = rsa_data;
|
||||||
|
info.Content.cbData = msg->bare_content_len;
|
||||||
|
info.Content.pbData = msg->bare_content;
|
||||||
|
ret = CryptEncodeObject(X509_ASN_ENCODING, PKCS_CONTENT_INFO, &info,
|
||||||
|
pvData, pcbData);
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
case CMSG_BARE_CONTENT_PARAM:
|
case CMSG_BARE_CONTENT_PARAM:
|
||||||
if (!pvData)
|
if (!pvData)
|
||||||
{
|
{
|
||||||
|
@ -384,7 +384,6 @@ static void test_data_msg_get_param(void)
|
|||||||
/* Content and bare content are always gettable */
|
/* Content and bare content are always gettable */
|
||||||
size = 0;
|
size = 0;
|
||||||
ret = CryptMsgGetParam(msg, CMSG_CONTENT_PARAM, 0, NULL, &size);
|
ret = CryptMsgGetParam(msg, CMSG_CONTENT_PARAM, 0, NULL, &size);
|
||||||
todo_wine
|
|
||||||
ok(ret, "CryptMsgGetParam failed: %08x\n", GetLastError());
|
ok(ret, "CryptMsgGetParam failed: %08x\n", GetLastError());
|
||||||
size = 0;
|
size = 0;
|
||||||
ret = CryptMsgGetParam(msg, CMSG_BARE_CONTENT_PARAM, 0, NULL, &size);
|
ret = CryptMsgGetParam(msg, CMSG_BARE_CONTENT_PARAM, 0, NULL, &size);
|
||||||
@ -426,14 +425,12 @@ static void test_data_msg_encoding(void)
|
|||||||
NULL);
|
NULL);
|
||||||
check_param("data empty bare content", msg, CMSG_BARE_CONTENT_PARAM,
|
check_param("data empty bare content", msg, CMSG_BARE_CONTENT_PARAM,
|
||||||
dataEmptyBareContent, sizeof(dataEmptyBareContent));
|
dataEmptyBareContent, sizeof(dataEmptyBareContent));
|
||||||
todo_wine
|
|
||||||
check_param("data empty content", msg, CMSG_CONTENT_PARAM, dataEmptyContent,
|
check_param("data empty content", msg, CMSG_CONTENT_PARAM, dataEmptyContent,
|
||||||
sizeof(dataEmptyContent));
|
sizeof(dataEmptyContent));
|
||||||
ret = CryptMsgUpdate(msg, msgData, sizeof(msgData), TRUE);
|
ret = CryptMsgUpdate(msg, msgData, sizeof(msgData), TRUE);
|
||||||
ok(ret, "CryptMsgUpdate failed: %x\n", GetLastError());
|
ok(ret, "CryptMsgUpdate failed: %x\n", GetLastError());
|
||||||
check_param("data bare content", msg, CMSG_BARE_CONTENT_PARAM,
|
check_param("data bare content", msg, CMSG_BARE_CONTENT_PARAM,
|
||||||
dataBareContent, sizeof(dataBareContent));
|
dataBareContent, sizeof(dataBareContent));
|
||||||
todo_wine
|
|
||||||
check_param("data content", msg, CMSG_CONTENT_PARAM, dataContent,
|
check_param("data content", msg, CMSG_CONTENT_PARAM, dataContent,
|
||||||
sizeof(dataContent));
|
sizeof(dataContent));
|
||||||
CryptMsgClose(msg);
|
CryptMsgClose(msg);
|
||||||
@ -442,14 +439,12 @@ static void test_data_msg_encoding(void)
|
|||||||
CMSG_DATA, NULL, NULL, NULL);
|
CMSG_DATA, NULL, NULL, NULL);
|
||||||
check_param("data empty bare content", msg, CMSG_BARE_CONTENT_PARAM,
|
check_param("data empty bare content", msg, CMSG_BARE_CONTENT_PARAM,
|
||||||
dataEmptyBareContent, sizeof(dataEmptyBareContent));
|
dataEmptyBareContent, sizeof(dataEmptyBareContent));
|
||||||
todo_wine
|
|
||||||
check_param("data empty content", msg, CMSG_CONTENT_PARAM, dataEmptyContent,
|
check_param("data empty content", msg, CMSG_CONTENT_PARAM, dataEmptyContent,
|
||||||
sizeof(dataEmptyContent));
|
sizeof(dataEmptyContent));
|
||||||
ret = CryptMsgUpdate(msg, msgData, sizeof(msgData), TRUE);
|
ret = CryptMsgUpdate(msg, msgData, sizeof(msgData), TRUE);
|
||||||
ok(ret, "CryptMsgUpdate failed: %x\n", GetLastError());
|
ok(ret, "CryptMsgUpdate failed: %x\n", GetLastError());
|
||||||
check_param("data bare content", msg, CMSG_BARE_CONTENT_PARAM,
|
check_param("data bare content", msg, CMSG_BARE_CONTENT_PARAM,
|
||||||
dataBareContent, sizeof(dataBareContent));
|
dataBareContent, sizeof(dataBareContent));
|
||||||
todo_wine
|
|
||||||
check_param("data content", msg, CMSG_CONTENT_PARAM, dataContent,
|
check_param("data content", msg, CMSG_CONTENT_PARAM, dataContent,
|
||||||
sizeof(dataContent));
|
sizeof(dataContent));
|
||||||
CryptMsgClose(msg);
|
CryptMsgClose(msg);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user