Module: wine Branch: master Commit: f2bff633acb55d3ee8d12ee207aafd510058034b URL: http://source.winehq.org/git/wine.git/?a=commit;h=f2bff633acb55d3ee8d12ee207...
Author: Juan Lang juan.lang@gmail.com Date: Mon Sep 17 17:06:53 2007 -0700
crypt32: Temporarily change prototype of AsnDecodeIntInternal to the CryptDecodeObjectEx form.
---
dlls/crypt32/decode.c | 33 ++++++++++++++++++++------------- 1 files changed, 20 insertions(+), 13 deletions(-)
diff --git a/dlls/crypt32/decode.c b/dlls/crypt32/decode.c index 0d38efd..eed7d88 100644 --- a/dlls/crypt32/decode.c +++ b/dlls/crypt32/decode.c @@ -115,8 +115,9 @@ static BOOL WINAPI CRYPT_AsnDecodeBits(DWORD dwCertEncodingType, static BOOL WINAPI CRYPT_AsnDecodeInt(DWORD dwCertEncodingType, LPCSTR lpszStructType, const BYTE *pbEncoded, DWORD cbEncoded, DWORD dwFlags, PCRYPT_DECODE_PARA pDecodePara, void *pvStructInfo, DWORD *pcbStructInfo); -static BOOL CRYPT_AsnDecodeIntInternal(const BYTE *pbEncoded, DWORD cbEncoded, - DWORD dwFlags, void *pvStructInfo, DWORD *pcbStructInfo, DWORD *pcbDecoded); +static BOOL WINAPI CRYPT_AsnDecodeIntInternal(DWORD dwCertEncodingType, + LPCSTR lpszStructType, const BYTE *pbEncoded, DWORD cbEncoded, DWORD dwFlags, + PCRYPT_DECODE_PARA pDecodePara, void *pvStructInfo, DWORD *pcbStructInfo); /* Like CRYPT_AsnDecodeInteger, but assumes the CRYPT_INTEGER_BLOB's pbData * member has been initialized, doesn't do exception handling, and doesn't do * memory allocation. Also doesn't check tag, assumes the caller has checked @@ -846,8 +847,9 @@ static BOOL WINAPI CRYPT_AsnDecodeCertVersion(DWORD dwCertEncodingType, { BYTE lenBytes = GET_LEN_BYTES(pbEncoded[1]);
- ret = CRYPT_AsnDecodeIntInternal(pbEncoded + 1 + lenBytes, dataLen, - dwFlags, pvStructInfo, pcbStructInfo, NULL); + ret = CRYPT_AsnDecodeIntInternal(dwCertEncodingType, NULL, + pbEncoded + 1 + lenBytes, dataLen, dwFlags, pDecodePara, pvStructInfo, + pcbStructInfo); } return ret; } @@ -2671,8 +2673,9 @@ static BOOL WINAPI CRYPT_AsnDecodePathLenConstraint(DWORD dwCertEncodingType, (struct PATH_LEN_CONSTRAINT *)pvStructInfo; DWORD size = sizeof(constraint->dwPathLenConstraint);
- ret = CRYPT_AsnDecodeIntInternal(pbEncoded, cbEncoded, 0, - &constraint->dwPathLenConstraint, &size, NULL); + ret = CRYPT_AsnDecodeIntInternal(dwCertEncodingType, NULL, + pbEncoded, cbEncoded, dwFlags, pDecodePara, + &constraint->dwPathLenConstraint, &size); if (ret) constraint->fPathLenConstraint = TRUE; TRACE("got an int, dwPathLenConstraint is %d\n", @@ -3054,8 +3057,10 @@ static BOOL WINAPI CRYPT_AsnDecodeBits(DWORD dwCertEncodingType, return ret; }
-static BOOL CRYPT_AsnDecodeIntInternal(const BYTE *pbEncoded, DWORD cbEncoded, - DWORD dwFlags, void *pvStructInfo, DWORD *pcbStructInfo, DWORD *pcbDecoded) +static BOOL WINAPI CRYPT_AsnDecodeIntInternal(DWORD dwCertEncodingType, + LPCSTR lpszStructType, const BYTE *pbEncoded, DWORD cbEncoded, + DWORD dwFlags, PCRYPT_DECODE_PARA pDecodePara, void *pvStructInfo, + DWORD *pcbStructInfo) { BOOL ret; BYTE buf[sizeof(CRYPT_INTEGER_BLOB) + sizeof(int)]; @@ -3109,8 +3114,9 @@ static BOOL WINAPI CRYPT_AsnDecodeInt(DWORD dwCertEncodingType, { DWORD bytesNeeded;
- ret = CRYPT_AsnDecodeIntInternal(pbEncoded, cbEncoded, - dwFlags & ~CRYPT_DECODE_ALLOC_FLAG, NULL, &bytesNeeded, NULL); + ret = CRYPT_AsnDecodeIntInternal(dwCertEncodingType, lpszStructType, + pbEncoded, cbEncoded, dwFlags & ~CRYPT_DECODE_ALLOC_FLAG, NULL, NULL, + &bytesNeeded); if (ret) { if (!pvStructInfo) @@ -3120,9 +3126,10 @@ static BOOL WINAPI CRYPT_AsnDecodeInt(DWORD dwCertEncodingType, { if (dwFlags & CRYPT_DECODE_ALLOC_FLAG) pvStructInfo = *(BYTE **)pvStructInfo; - ret = CRYPT_AsnDecodeIntInternal(pbEncoded, cbEncoded, - dwFlags & ~CRYPT_DECODE_ALLOC_FLAG, pvStructInfo, - &bytesNeeded, NULL); + ret = CRYPT_AsnDecodeIntInternal(dwCertEncodingType, + lpszStructType, pbEncoded, cbEncoded, + dwFlags & ~CRYPT_DECODE_ALLOC_FLAG, NULL, pvStructInfo, + &bytesNeeded); } } }