struct OIDInfo *info;
HKEY hKey, hSubKey;
char buf[MAX_PATH], *ptr, *endptr;
- DWORD size, id, i = 0;
- LONG ret, oid_size, name_size, extra_size;
+ DWORD size, extra_size, id, i = 0;
+ LONG ret, oid_size, name_size;
int found = 0, err = 0;
if (RegOpenKeyW(HKEY_LOCAL_MACHINE, wszCryptDllFindOIDInfoKey, &hKey))
name_size = 0;
RegQueryValueW(hSubKey, wszName, NULL, &name_size);
extra_size = 0;
- RegQueryValueW(hSubKey, wszExtraInfo, NULL, &extra_size);
+ RegQueryValueExW(hSubKey, wszExtraInfo, NULL, NULL, NULL, &extra_size);
oid_size = strlen(buf) + 1;
info = CryptMemAlloc(sizeof(*info) + oid_size + name_size + extra_size);
{
info->info.ExtraInfo.pbData =
(BYTE *)((char *)(info + 1) + oid_size + name_size);
- if (RegQueryValueW(hSubKey, wszExtraInfo,
- (LPWSTR)info->info.ExtraInfo.pbData, &extra_size))
+ if (RegQueryValueExW(hSubKey, wszExtraInfo, NULL, NULL,
+ info->info.ExtraInfo.pbData, &extra_size))
err = 1;
}
if (!err)