Commit 8085ea5f authored by Juan Lang's avatar Juan Lang Committed by Alexandre Julliard

wintrust: Return error directly from SOFTPUB_CreateStoreFromMessage.

parent 568b0025
......@@ -194,20 +194,23 @@ static DWORD SOFTPUB_GetMessageFromFile(CRYPT_PROVIDER_DATA *data, HANDLE file,
return err;
}
static BOOL SOFTPUB_CreateStoreFromMessage(CRYPT_PROVIDER_DATA *data)
static DWORD SOFTPUB_CreateStoreFromMessage(CRYPT_PROVIDER_DATA *data)
{
BOOL ret = FALSE;
DWORD err = ERROR_SUCCESS;
HCERTSTORE store;
store = CertOpenStore(CERT_STORE_PROV_MSG, data->dwEncoding,
data->hProv, CERT_STORE_NO_CRYPT_RELEASE_FLAG, data->hMsg);
if (store)
{
ret = data->psPfns->pfnAddStore2Chain(data, store);
if (!data->psPfns->pfnAddStore2Chain(data, store))
err = GetLastError();
CertCloseStore(store, 0);
}
TRACE("returning %d\n", ret);
return ret;
else
err = GetLastError();
TRACE("returning %d\n", err);
return err;
}
static DWORD SOFTPUB_DecodeInnerContent(CRYPT_PROVIDER_DATA *data)
......@@ -341,11 +344,9 @@ static DWORD SOFTPUB_LoadFileMessage(CRYPT_PROVIDER_DATA *data)
data->pWintrustData->u.pFile->pcwszFilePath);
if (err)
goto error;
if (!SOFTPUB_CreateStoreFromMessage(data))
{
err = GetLastError();
err = SOFTPUB_CreateStoreFromMessage(data);
if (err)
goto error;
}
if (!SOFTPUB_DecodeInnerContent(data))
err = GetLastError();
error:
......@@ -381,11 +382,9 @@ static DWORD SOFTPUB_LoadCatalogMessage(CRYPT_PROVIDER_DATA *data)
data->pWintrustData->u.pFile->pcwszFilePath);
if (err)
goto error;
if (!SOFTPUB_CreateStoreFromMessage(data))
{
err = GetLastError();
err = SOFTPUB_CreateStoreFromMessage(data);
if (err)
goto error;
}
if (!SOFTPUB_DecodeInnerContent(data))
err = GetLastError();
/* FIXME: this loads the catalog file, but doesn't validate the member. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment