HRESULT WINAPI SoftpubLoadMessage(CRYPT_PROVIDER_DATA *data) { DWORD err = ERROR_SUCCESS; TRACE("(%p)\n", data); if (!data->padwTrustStepErrors) return S_FALSE; switch (data->pWintrustData->dwUnionChoice) { case WTD_CHOICE_CERT: err = SOFTPUB_LoadCertMessage(data); break; case WTD_CHOICE_FILE: err = SOFTPUB_LoadFileMessage(data); break; case WTD_CHOICE_CATALOG: err = SOFTPUB_LoadCatalogMessage(data); break; default: FIXME("unimplemented for %d\n", data->pWintrustData->dwUnionChoice); err = ERROR_INVALID_PARAMETER; } if (err) data->padwTrustStepErrors[TRUSTERROR_STEP_FINAL_OBJPROV] = err; TRACE("returning %d (%08x)\n", !err ? S_OK : S_FALSE, data->padwTrustStepErrors[TRUSTERROR_STEP_FINAL_OBJPROV]); return !err ? S_OK : S_FALSE; }
HRESULT WINAPI SoftpubLoadMessage(CRYPT_PROVIDER_DATA *data) { BOOL ret; TRACE("(%p)\n", data); if (!data->padwTrustStepErrors) return S_FALSE; switch (data->pWintrustData->dwUnionChoice) { case WTD_CHOICE_CERT: ret = SOFTPUB_LoadCertMessage(data); break; case WTD_CHOICE_FILE: ret = SOFTPUB_LoadFileMessage(data); break; case WTD_CHOICE_CATALOG: ret = SOFTPUB_LoadCatalogMessage(data); break; default: FIXME("unimplemented for %d\n", data->pWintrustData->dwUnionChoice); SetLastError(ERROR_INVALID_PARAMETER); ret = FALSE; } if (!ret) data->padwTrustStepErrors[TRUSTERROR_STEP_FINAL_OBJPROV] = GetLastError(); TRACE("returning %d (%08x)\n", ret ? S_OK : S_FALSE, data->padwTrustStepErrors[TRUSTERROR_STEP_FINAL_OBJPROV]); return ret ? S_OK : S_FALSE; }