crypt32: Temporarily change prototype of AsnDecodeIntInternal to the CryptDecodeObjectEx form.

This commit is contained in:
Juan Lang 2007-09-17 17:06:53 -07:00 committed by Alexandre Julliard
parent 205c733b13
commit f2bff633ac
1 changed files with 20 additions and 13 deletions

View File

@ -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);
}
}
}