wintrust(1/4): Implement WTHelperGetProvSignerFromChain
Juan Lang
juan.lang at gmail.com
Tue Aug 14 17:39:16 CDT 2007
--Juan
-------------- next part --------------
From 4d1dd703928620d938c03046fe1bec67bee5eed0 Mon Sep 17 00:00:00 2001
From: Juan Lang <juan.lang at gmail.com>
Date: Tue, 14 Aug 2007 10:14:54 -0700
Subject: [PATCH] Implement WTHelperGetProvSignerFromChain
---
dlls/wintrust/wintrust_main.c | 18 ++++++++++++++++--
1 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/dlls/wintrust/wintrust_main.c b/dlls/wintrust/wintrust_main.c
index 66ad322..8e7859d 100644
--- a/dlls/wintrust/wintrust_main.c
+++ b/dlls/wintrust/wintrust_main.c
@@ -105,9 +105,23 @@ CRYPT_PROVIDER_SGNR * WINAPI WTHelperGet
CRYPT_PROVIDER_DATA *pProvData, DWORD idxSigner, BOOL fCounterSigner,
DWORD idxCounterSigner)
{
- FIXME("%p %d %d %d\n", pProvData, idxSigner, fCounterSigner,
+ CRYPT_PROVIDER_SGNR *sgnr;
+
+ TRACE("(%p %d %d %d)\n", pProvData, idxSigner, fCounterSigner,
idxCounterSigner);
- return NULL;
+
+ if (idxSigner >= pProvData->csSigners || !pProvData->pasSigners)
+ return NULL;
+ sgnr = &pProvData->pasSigners[idxSigner];
+ if (fCounterSigner)
+ {
+ if (idxCounterSigner >= sgnr->csCounterSigners ||
+ !sgnr->pasCounterSigners)
+ return NULL;
+ sgnr = &sgnr->pasCounterSigners[idxCounterSigner];
+ }
+ TRACE("returning %p\n", sgnr);
+ return sgnr;
}
/***********************************************************************
--
1.4.1
More information about the wine-patches
mailing list