Huw Davies : imagehlp:
Add support for the indices array passed to ImageEnumerateCertificates.
Alexandre Julliard
julliard at wine.codeweavers.com
Fri Apr 13 06:50:27 CDT 2007
Module: wine
Branch: master
Commit: ddb564bfe243b32a534595a2e38364012fc7b967
URL: http://source.winehq.org/git/wine.git/?a=commit;h=ddb564bfe243b32a534595a2e38364012fc7b967
Author: Huw Davies <huw at codeweavers.com>
Date: Fri Apr 13 12:02:47 2007 +0100
imagehlp: Add support for the indices array passed to ImageEnumerateCertificates.
---
dlls/imagehlp/integrity.c | 12 +++++-------
1 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/dlls/imagehlp/integrity.c b/dlls/imagehlp/integrity.c
index b3b8e66..99608b7 100644
--- a/dlls/imagehlp/integrity.c
+++ b/dlls/imagehlp/integrity.c
@@ -161,7 +161,7 @@ BOOL WINAPI ImageEnumerateCertificates(
HANDLE handle, WORD TypeFilter, PDWORD CertificateCount,
PDWORD Indices, DWORD IndexCount)
{
- DWORD size, count, offset, sd_VirtualAddr;
+ DWORD size, count, offset, sd_VirtualAddr, index;
WIN_CERTIFICATE hdr;
const size_t cert_hdr_size = sizeof hdr - sizeof hdr.bCertificate;
BOOL r;
@@ -169,17 +169,12 @@ BOOL WINAPI ImageEnumerateCertificates(
TRACE("%p %hd %p %p %d\n",
handle, TypeFilter, CertificateCount, Indices, IndexCount);
- if( Indices )
- {
- FIXME("Indices not handled!\n");
- return FALSE;
- }
-
r = IMAGEHLP_GetSecurityDirOffset( handle, &sd_VirtualAddr, &size );
if( !r )
return FALSE;
offset = 0;
+ index = 0;
*CertificateCount = 0;
while( offset < size )
{
@@ -207,10 +202,13 @@ BOOL WINAPI ImageEnumerateCertificates(
(TypeFilter == hdr.wCertificateType) )
{
(*CertificateCount)++;
+ if(Indices && *CertificateCount <= IndexCount)
+ *Indices++ = index;
}
/* next certificate */
offset += hdr.dwLength;
+ index++;
}
return TRUE;
More information about the wine-cvs
mailing list