Intentionally avoid checking if the address of SystemFunction036, a.k.a.

RtlGenRandom, has been located or not. This function is only available on
WinXP and later. When unavailable c-ares uses portable rand() function.
pull/1/head curl-7_19_5
Yang Tse 16 years ago
parent 5b17412c1f
commit b677ff3d15
  1. 1
      ares.h
  2. 12
      ares_library_init.c
  3. 3
      ares_strerror.c

@ -98,7 +98,6 @@ extern "C" {
#define ARES_ELOADIPHLPAPI 21
#define ARES_ELOADADVAPI32 22
#define ARES_EADDRGetNetworkParams 23
#define ARES_EADDRSYSTEMFUNCTION036 24
/* Flag values */
#define ARES_FLAG_USEVC (1 << 0)

@ -51,12 +51,12 @@ static int ares_win32_init(void)
fpSystemFunction036 = (fpSystemFunction036_t)
GetProcAddress(hnd_advapi32, "SystemFunction036");
if (!fpSystemFunction036)
{
FreeLibrary(hnd_advapi32);
FreeLibrary(hnd_iphlpapi);
return ARES_EADDRSYSTEMFUNCTION036;
}
/*
* Intentionally avoid checking if the address of SystemFunction036, a.k.a.
* RtlGenRandom, has been located or not. This function is only available on
* WinXP and later. When unavailable c-ares uses portable rand() function.
*/
#endif
return ARES_SUCCESS;

@ -46,8 +46,7 @@ const char *ares_strerror(int code)
"Illegal hints flags specified",
"Error loading iphlpapi.dll",
"Error loading advapi32.dll",
"Unknown GetNetworkParams function address",
"Unknown SystemFunction036 function address"
"Could not find GetNetworkParams function"
};
if(code >= 0 && code < (int)(sizeof(errtext) / sizeof(*errtext)))

Loading…
Cancel
Save