23#ifdef HAVE_CORESERVICES_CORESERVICES_H
24#define GetCurrentThread MacGetCurrentThread
25#define LoadResource MacLoadResource
26#include <CoreServices/CoreServices.h>
27#undef GetCurrentThread
38#include "wine/winternl.h"
49#define DEFAULT_RESOLVE_TIMEOUT 0
50#define DEFAULT_CONNECT_TIMEOUT 20000
51#define DEFAULT_SEND_TIMEOUT 30000
52#define DEFAULT_RECEIVE_TIMEOUT 30000
53#define DEFAULT_RECEIVE_RESPONSE_TIMEOUT ~0u
106 *buflen =
sizeof(
DWORD);
112 *buflen =
sizeof(
DWORD);
117 *buflen =
sizeof(
DWORD);
122 *buflen =
sizeof(
DWORD);
127 *buflen =
sizeof(
DWORD);
132 *buflen =
sizeof(
DWORD);
137 *buflen =
sizeof(
DWORD);
164 if (buflen !=
sizeof(
policy))
354 *buflen =
sizeof(
DWORD);
359 *buflen =
sizeof(
DWORD);
364 *buflen =
sizeof(
DWORD);
369 *buflen =
sizeof(
DWORD);
374 *buflen =
sizeof(
DWORD);
393 static const WCHAR localW[] = {
'<',
'l',
'o',
'c',
'a',
'l',
'>',0 };
443#define MAX_HOST_NAME_LENGTH 256
596 TRACE(
"returning %p\n", hconnect);
686 switch (
addr->sa_family)
693 memset( addr_in + 1, 0,
sizeof(*addr_storage) -
sizeof(*addr_in) );
701 memset( addr_in6 + 1, 0,
sizeof(*addr_storage) -
sizeof(*addr_in6) );
705 ERR(
"unhandled family %u\n",
addr->sa_family);
723 *buflen =
sizeof(
flags);
740 *buflen =
sizeof(
flags);
749 *buflen =
sizeof(
cert);
756 *buflen =
sizeof(
cert);
765 FIXME(
"partial stub\n");
767 if (!
buffer || *buflen <
sizeof(*ci))
769 *buflen =
sizeof(*ci);
788 *buflen =
sizeof(*ci);
795 *buflen =
sizeof(
DWORD);
801 *buflen =
sizeof(
DWORD);
813 *buflen =
sizeof(*info);
825 info->cbSize =
sizeof(*info);
830 *buflen =
sizeof(
DWORD);
835 *buflen =
sizeof(
DWORD);
840 *buflen =
sizeof(
DWORD);
845 *buflen =
sizeof(
DWORD);
850 *buflen =
sizeof(
DWORD);
906 if (buflen !=
sizeof(
DWORD))
921 if (buflen !=
sizeof(
DWORD))
936 if (buflen !=
sizeof(
DWORD))
955 if (buflen <
sizeof(
DWORD))
1036 else if (buflen >=
sizeof(
cert))
1070 FIXME(
"WINHTTP_OPTION_CONNECT_RETRIES\n");
1089 static const WCHAR acceptW[] = {
'A',
'c',
'c',
'e',
'p',
't',0};
1106 if (!
object ||
object[0] !=
'/')
len++;
1108 if (!
object ||
object[0] !=
'/') *
p++ =
'/';
1124 TRACE(
"%p, %s, %s, %s, %s, %p, 0x%08x\n", hconnect,
debugstr_w(verb),
debugstr_w(
object),
1130 TRACE(
"accept types:\n");
1171 if (!verb || !verb[0]) verb =
getW;
1187 TRACE(
"returning %p\n", hrequest);
1352 if (len_suffix > len_domain)
return FALSE;
1364 static const WCHAR httpW[] = {
'h',
't',
't',
'p',
':',
'/',
'/',0};
1365 static const WCHAR wpadW[] = {
'/',
'w',
'p',
'a',
'd',
'.',
'd',
'a',
't',0};
1371 if (!ai)
return NULL;
1386#if defined(MAC_OS_X_VERSION_10_6) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6
1387 CFDictionaryRef
settings = CFNetworkCopySystemProxySettings();
1393 if (!(
ref = CFDictionaryGetValue(
settings, kCFNetworkProxiesProxyAutoConfigURLString )))
1398 if (CFStringGetCString(
ref,
buf, buflen, kCFStringEncodingASCII ))
1409 FIXME(
"no support on this platform\n" );
1413 TRACE(
"no support on this platform\n" );
1418#define INTERNET_MAX_URL_LENGTH 2084
1446 static int fixme_shown;
1447 if (!fixme_shown++)
FIXME(
"discovery via DHCP not supported\n");
1503 'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
1504 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
1505 'W',
'i',
'n',
'd',
'o',
'w',
's',
'\\',
1506 'C',
'u',
'r',
'r',
'e',
'n',
't',
'V',
'e',
'r',
's',
'i',
'o',
'n',
'\\',
1507 'I',
'n',
't',
'e',
'r',
'n',
'e',
't',
' ',
'S',
'e',
't',
't',
'i',
'n',
'g',
's',
'\\',
1508 'C',
'o',
'n',
'n',
'e',
'c',
't',
'i',
'o',
'n',
's',0 };
1510 'W',
'i',
'n',
'H',
't',
't',
'p',
'S',
'e',
't',
't',
'i',
'n',
'g',
's',0 };
1600 info->lpszProxyBypass = proxy_bypass;
1603 got_from_reg =
TRUE;
1605 info->dwAccessType =
1607 TRACE(
"http proxy (from registry) = %s, bypass = %s\n",
1618 if (!got_from_reg && (envproxy =
getenv(
"http_proxy" )))
1620 char *colon, *http_proxy =
NULL;
1622 if (!(colon =
strchr( envproxy,
':' ))) http_proxy = envproxy;
1625 if (*(colon + 1) ==
'/' && *(colon + 2) ==
'/')
1628 if (!
strncmp( envproxy,
"http://", 7 )) http_proxy = envproxy + 7;
1629 else WARN(
"unsupported scheme in $http_proxy: %s\n", envproxy);
1631 else http_proxy = envproxy;
1634 if (http_proxy && http_proxy[0])
1645 info->lpszProxy = http_proxyW;
1666 static const WCHAR settingsW[] =
1667 {
'D',
'e',
'f',
'a',
'u',
'l',
't',
'C',
'o',
'n',
'n',
'e',
'c',
't',
'i',
'o',
'n',
'S',
'e',
't',
't',
'i',
'n',
'g',
's',0};
1757 while (*
p ==
' ')
p++;
1759 if (
len >= 5 && !
_strnicmp(
p,
"PROXY",
sizeof(
"PROXY") - 1 ))
1762 while (*
p ==
' ')
p++;
1763 if (!*
p || *
p ==
';')
return TRUE;
1768 if (*
q ==
' ' || *
q ==
';')
1780 static const WCHAR typeW[] = {
'*',
'/',
'*',0};
1790 memset( &uc, 0,
sizeof(uc) );
1816 if (!bytes_read)
break;
1868 memset( &uc, 0,
sizeof(uc) );
1869 uc.dwStructSize =
sizeof(uc);
1870 uc.dwHostNameLength = -1;
1874 char *hostnameA =
strdupWA_sized( uc.lpszHostName, uc.dwHostNameLength );
1896 const WCHAR *pac_url;
1930 else pac_url = detected_pac_url;
1962 switch (
info->dwAccessType)
1967 if (!
info->lpszProxy)
1979 if (
info->lpszProxyBypass)
2004 if (
info->lpszProxyBypass)
2026 if (
info->lpszProxyBypass)
2088 if (resolve < -1 ||
connect < -1 ||
send < -1 || receive < -1)
2107 if (resolve < 0) resolve = 0;
2113 if (receive < 0) receive = 0;
2128 if (resolve < 0) resolve = 0;
2134 if (receive < 0) receive = 0;
2148 {{
'S',
'u',
'n', 0}, {
'M',
'o',
'n', 0}, {
'T',
'u',
'e', 0}, {
'W',
'e',
'd', 0},
2149 {
'T',
'h',
'u', 0}, {
'F',
'r',
'i', 0}, {
'S',
'a',
't', 0}};
2151 {{
'J',
'a',
'n', 0}, {
'F',
'e',
'b', 0}, {
'M',
'a',
'r', 0}, {
'A',
'p',
'r', 0},
2152 {
'M',
'a',
'y', 0}, {
'J',
'u',
'n', 0}, {
'J',
'u',
'l', 0}, {
'A',
'u',
'g', 0},
2153 {
'S',
'e',
'p', 0}, {
'O',
'c',
't', 0}, {
'N',
'o',
'v', 0}, {
'D',
'e',
'c', 0}};
2161 {
'%',
's',
',',
' ',
'%',
'0',
'2',
'd',
' ',
'%',
's',
' ',
'%',
'4',
'd',
' ',
'%',
'0',
2162 '2',
'd',
':',
'%',
'0',
'2',
'd',
':',
'%',
'0',
'2',
'd',
' ',
'G',
'M',
'T', 0};
2166 if (!
time || !
string)
2196 if (!
string || !
time)
2212 if (
s[0] ==
'\0' ||
s[1] ==
'\0' ||
s[2] ==
'\0')
return TRUE;
2213 time->wDayOfWeek = 7;
2215 for (
i = 0;
i < 7;
i++)
2221 time->wDayOfWeek =
i;
2226 if (
time->wDayOfWeek > 6)
return TRUE;
2232 if (
s[0] ==
'\0' ||
s[1] ==
'\0' ||
s[2] ==
'\0')
return TRUE;
2235 for (
i = 0;
i < 12;
i++)
2241 time->wMonth =
i + 1;
2245 if (
time->wMonth == 0)
return TRUE;
2248 if (*
s ==
'\0')
return TRUE;
2253 if (*
s ==
'\0')
return TRUE;
2258 if (*
s ==
'\0')
return TRUE;
2263 if (*
s ==
'\0')
return TRUE;
2266 time->wMilliseconds = 0;
struct mke2fs_defaults settings[]
char * strcat(char *DstString, const char *SrcString)
ACPI_SIZE strlen(const char *String)
int strncmp(const char *String1, const char *String2, ACPI_SIZE Count)
char * strcpy(char *DstString, const char *SrcString)
char * strchr(const char *String, int ch)
static void * heap_alloc(size_t len)
static BOOL heap_free(void *mem)
static void * heap_realloc(void *mem, size_t len)
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static WCHAR * strdupW(const WCHAR *src)
static void list_add_head(struct list_entry *head, struct list_entry *entry)
static void list_init(struct list_entry *head)
#define RegCloseKey(hKey)
#define ERROR_INSUFFICIENT_BUFFER
LONG WINAPI RegCreateKeyExW(_In_ HKEY hKey, _In_ LPCWSTR lpSubKey, _In_ DWORD Reserved, _In_opt_ LPWSTR lpClass, _In_ DWORD dwOptions, _In_ REGSAM samDesired, _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes, _Out_ PHKEY phkResult, _Out_opt_ LPDWORD lpdwDisposition)
LONG WINAPI RegOpenKeyExW(HKEY hKey, LPCWSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult)
LONG WINAPI RegSetValueExW(_In_ HKEY hKey, _In_ LPCWSTR lpValueName, _In_ DWORD Reserved, _In_ DWORD dwType, _In_ CONST BYTE *lpData, _In_ DWORD cbData)
LONG WINAPI RegQueryValueExW(_In_ HKEY hkeyorg, _In_ LPCWSTR name, _In_ LPDWORD reserved, _In_ LPDWORD type, _In_ LPBYTE data, _In_ LPDWORD count)
static WCHAR * strdupAW(const char *src)
BOOL WINAPI CertFreeCertificateContext(PCCERT_CONTEXT pCertContext)
PCCERT_CONTEXT WINAPI CertDuplicateCertificateContext(PCCERT_CONTEXT pCertContext)
static struct list oidInfo
PCCRYPT_OID_INFO WINAPI CryptFindOIDInfo(DWORD dwKeyType, void *pvKey, DWORD dwGroupId)
DWORD WINAPI CertNameToStrW(DWORD dwCertEncodingType, PCERT_NAME_BLOB pName, DWORD dwStrType, LPWSTR psz, DWORD csz)
#define ERROR_INVALID_PARAMETER
#define _strnicmp(_String1, _String2, _MaxCount)
#define ERROR_INVALID_HANDLE
#define MultiByteToWideChar
static const WCHAR version[]
static const WCHAR getW[]
static char * strdupWA(const WCHAR *src)
VOID WINAPI GetSystemTime(OUT LPSYSTEMTIME lpSystemTime)
static BOOL alloc_handle(struct handle_table *lpTable, OBJECTHDR *lpObject, HCRYPTKEY *lpHandle)
static const WCHAR typeW[]
BOOL free_handle(HINTERNET hinternet)
struct object_header * grab_object(HINTERNET hinternet)
void release_object(struct object_header *hdr)
struct object_header * addref_object(struct object_header *hdr)
DWORD netconn_set_timeout(struct netconn *netconn, BOOL send, int value)
int netconn_get_cipher_strength(struct netconn *conn)
static BOOL request_set_option(struct object_header *hdr, DWORD option, void *buffer, DWORD buflen)
BOOL WINAPI WinHttpQueryOption(HINTERNET handle, DWORD option, LPVOID buffer, LPDWORD buflen)
void send_callback(struct object_header *hdr, DWORD status, void *info, DWORD buflen)
static const WCHAR WinHttpSettings[]
BOOL WINAPI WinHttpGetDefaultProxyConfiguration(WINHTTP_PROXY_INFO *info)
static const struct object_vtbl session_vtbl
static void session_destroy(struct object_header *hdr)
static BOOL should_bypass_proxy(struct session *session, LPCWSTR server)
static const WCHAR wkday[7][4]
static const struct object_vtbl request_vtbl
HINTERNET WINAPI WinHttpOpen(LPCWSTR agent, DWORD access, LPCWSTR proxy, LPCWSTR bypass, DWORD flags)
#define DEFAULT_RECEIVE_TIMEOUT
static BOOL request_query_option(struct object_header *hdr, DWORD option, void *buffer, DWORD *buflen)
#define DEFAULT_RESOLVE_TIMEOUT
#define INTERNET_MAX_URL_LENGTH
static void connect_destroy(struct object_header *hdr)
static const DWORD PROXY_AUTODETECT_SETTINGS
static WCHAR * buffer_to_str(WCHAR *buffer, DWORD buflen)
BOOL WINAPI WinHttpGetIEProxyConfigForCurrentUser(WINHTTP_CURRENT_USER_IE_PROXY_CONFIG *config)
static WCHAR * build_wpad_url(const char *hostname, const struct addrinfo *ai)
static int reverse_lookup(const struct addrinfo *ai, char *hostname, size_t len)
#define MAX_HOST_NAME_LENGTH
HINTERNET WINAPI WinHttpConnect(HINTERNET hsession, LPCWSTR server, INTERNET_PORT port, DWORD reserved)
static const DWORD WININET_SETTINGS_MAGIC
BOOL WINAPI WinHttpGetProxyForUrl(HINTERNET hsession, LPCWSTR url, WINHTTP_AUTOPROXY_OPTIONS *options, WINHTTP_PROXY_INFO *info)
static const DWORD PROXY_TYPE_PROXY
static BOOL set_option(struct object_header *hdr, DWORD option, void *buffer, DWORD buflen)
BOOL WINAPI InternetDeInitializeAutoProxyDll(LPSTR, DWORD)
static const DWORD PROXY_USE_PAC_SCRIPT
static BOOL session_set_option(struct object_header *hdr, DWORD option, void *buffer, DWORD buflen)
static WCHAR * blob_to_str(DWORD encoding, CERT_NAME_BLOB *blob)
static char * download_script(const WCHAR *url, DWORD *out_size)
BOOL WINAPI WinHttpTimeFromSystemTime(const SYSTEMTIME *time, LPWSTR string)
#define DEFAULT_SEND_TIMEOUT
BOOL WINAPI InternetInitializeAutoProxyDll(DWORD, LPSTR, LPSTR, void *, struct AUTO_PROXY_SCRIPT_BUFFER *)
BOOL WINAPI WinHttpSetDefaultProxyConfiguration(WINHTTP_PROXY_INFO *info)
static BOOL get_system_proxy_autoconfig_url(char *buf, DWORD buflen)
BOOL set_server_for_hostname(struct connect *connect, const WCHAR *server, INTERNET_PORT port)
BOOL WINAPI WinHttpCloseHandle(HINTERNET handle)
static char * get_computer_name(COMPUTER_NAME_FORMAT format)
static BOOL query_option(struct object_header *hdr, DWORD option, void *buffer, DWORD *buflen)
static BOOL copy_sockaddr(const struct sockaddr *addr, SOCKADDR_STORAGE *addr_storage)
BOOL WINAPI WinHttpSetTimeouts(HINTERNET handle, int resolve, int connect, int send, int receive)
static void str_to_buffer(WCHAR *buffer, const WCHAR *str, LPDWORD buflen)
static const DWORD PROXY_TYPE_DIRECT
static WCHAR * get_request_path(const WCHAR *object)
static BOOL parse_script_result(const char *result, WINHTTP_PROXY_INFO *info)
#define DEFAULT_RECEIVE_RESPONSE_TIMEOUT
static const WCHAR month[12][4]
HINTERNET WINAPI WinHttpOpenRequest(HINTERNET hconnect, LPCWSTR verb, LPCWSTR object, LPCWSTR version, LPCWSTR referrer, LPCWSTR *types, DWORD flags)
#define DEFAULT_CONNECT_TIMEOUT
static void copy_char_to_wchar_sz(const BYTE *src, DWORD len, WCHAR *dst)
BOOL WINAPI WinHttpSetOption(HINTERNET handle, DWORD option, LPVOID buffer, DWORD buflen)
static const WCHAR Connections[]
static const struct object_vtbl connect_vtbl
BOOL WINAPI WinHttpCheckPlatform(void)
static BOOL session_query_option(struct object_header *hdr, DWORD option, void *buffer, DWORD *buflen)
static BOOL is_domain_suffix(const char *domain, const char *suffix)
static BOOL run_script(char *script, DWORD size, const WCHAR *url, WINHTTP_PROXY_INFO *info)
BOOL WINAPI WinHttpDetectAutoProxyConfigUrl(DWORD flags, LPWSTR *url)
static BOOL domain_matches(LPCWSTR server, LPCWSTR domain)
BOOL WINAPI WinHttpTimeToSystemTime(LPCWSTR string, SYSTEMTIME *time)
static BOOL add_accept_types_header(struct request *request, const WCHAR **types)
WINHTTP_STATUS_CALLBACK WINAPI WinHttpSetStatusCallback(HINTERNET handle, WINHTTP_STATUS_CALLBACK callback, DWORD flags, DWORD_PTR reserved)
static BOOL connect_query_option(struct object_header *hdr, DWORD option, void *buffer, DWORD *buflen)
static const DWORD WINHTTP_SETTINGS_MAGIC
static void request_destroy(struct object_header *hdr)
BOOL WINAPI InternetGetProxyInfo(LPCSTR, DWORD, LPSTR, DWORD, LPSTR *, LPDWORD)
BOOL WINAPI WinHttpCrackUrl(LPCWSTR url, DWORD len, DWORD flags, LPURL_COMPONENTSW uc)
INT WSAAPI send(IN SOCKET s, IN CONST CHAR FAR *buf, IN INT len, IN INT flags)
WDF_INTERRUPT_POLICY policy
GLuint GLuint GLsizei GLenum type
GLdouble GLdouble GLdouble GLdouble q
GLenum GLuint GLenum GLsizei const GLchar * buf
GLenum GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * bits
GLenum const GLvoid * addr
GLuint GLint GLboolean GLint GLenum access
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint GLint GLint j
HGLOBAL NTAPI GlobalFree(HGLOBAL hMem)
HLOCAL NTAPI LocalAlloc(UINT uFlags, SIZE_T dwBytes)
HGLOBAL NTAPI GlobalAlloc(UINT uFlags, SIZE_T dwBytes)
_Check_return_ char *__cdecl getenv(_In_z_ const char *_VarName)
BOOL WINAPI GetComputerNameExA(COMPUTER_NAME_FORMAT, LPSTR, LPDWORD)
#define memcpy(s1, s2, n)
static IPrintDialogCallback callback
static HANDLE PIO_APC_ROUTINE PVOID PIO_STATUS_BLOCK ULONG PVOID ULONG PVOID ULONG out_size
static const WCHAR httpW[]
#define strncmpiW(s1, s2, n)
BOOL WINAPI WinHttpQueryHeaders(HINTERNET hrequest, DWORD level, LPCWSTR name, LPVOID buffer, LPDWORD buflen, LPDWORD index)
BOOL process_header(struct request *request, const WCHAR *field, const WCHAR *value, DWORD flags, BOOL request_only)
BOOL WINAPI WinHttpReadData(HINTERNET hrequest, LPVOID buffer, DWORD to_read, LPDWORD read)
BOOL WINAPI WinHttpSendRequest(HINTERNET hrequest, LPCWSTR headers, DWORD headers_len, LPVOID optional, DWORD optional_len, DWORD total_len, DWORD_PTR context)
BOOL WINAPI WinHttpReceiveResponse(HINTERNET hrequest, LPVOID reserved)
static void accepted(enum accept_stat, struct rpc_err *)
static void destroy_authinfo(struct authinfo *info)
INT WSAAPI getsockname(IN SOCKET s, OUT LPSOCKADDR name, IN OUT INT FAR *namelen)
LPWSTR lpszSignatureAlgName
LPWSTR lpszEncryptionAlgName
DWORD_PTR Spare[8/sizeof(DWORD_PTR)]
PCRITICAL_SECTION_DEBUG DebugInfo
struct sockaddr * ai_addr
struct addrinfo * ai_next
const CERT_CONTEXT * server_cert
const CERT_CONTEXT * client_cert
struct authinfo * authinfo
struct request::@599 creds[TARGET_MAX][SCHEME_MAX]
int receive_response_timeout
BOOL cred_handle_initialized
struct authinfo * proxy_authinfo
int receive_response_timeout
VOID WINAPI InitializeCriticalSection(OUT LPCRITICAL_SECTION lpCriticalSection)
BOOL WINAPI DECLSPEC_HOTPATCH SetEvent(IN HANDLE hEvent)
static rfbScreenInfoPtr server
DWORD WINAPI GetLastError(void)
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
void WINAPI DeleteCriticalSection(PCRITICAL_SECTION)
#define CERT_SIMPLE_NAME_STR
#define CERT_NAME_STR_CRLF_FLAG
#define CRYPT_OID_INFO_OID_KEY
void destroy_cookies(struct session *session)
#define WINHTTP_OPTION_PROXY
#define WINHTTP_HANDLE_TYPE_REQUEST
#define SECURITY_FLAG_STRENGTH_MEDIUM
#define WINHTTP_OPTION_PROXY_PASSWORD
#define WINHTTP_OPTION_USERNAME
#define WINHTTP_AUTO_DETECT_TYPE_DHCP
#define WINHTTP_OPTION_CONFIGURE_PASSPORT_AUTH
#define WINHTTP_OPTION_MAX_CONNS_PER_SERVER
#define WINHTTP_OPTION_CONTEXT_VALUE
#define SECURITY_FLAG_IGNORE_CERT_WRONG_USAGE
#define WINHTTP_OPTION_SEND_TIMEOUT
#define WINHTTP_OPTION_UNLOAD_NOTIFY_EVENT
#define WINHTTP_OPTION_CONNECTION_INFO
#define WINHTTP_OPTION_SERVER_CERT_CONTEXT
#define WINHTTP_OPTION_SECURITY_FLAGS
#define WINHTTP_HANDLE_TYPE_CONNECT
#define WINHTTP_HANDLE_TYPE_SESSION
#define SECURITY_FLAG_STRENGTH_WEAK
#define WINHTTP_OPTION_PROXY_USERNAME
#define WINHTTP_OPTION_ENABLE_FEATURE
#define WINHTTP_INVALID_STATUS_CALLBACK
#define WINHTTP_OPTION_PASSWORD
#define WINHTTP_OPTION_RESOLVE_TIMEOUT
#define WINHTTP_OPTION_DISABLE_FEATURE
#define WINHTTP_OPTION_CLIENT_CERT_CONTEXT
#define WINHTTP_ENABLE_SSL_REVOCATION
#define WINHTTP_AUTOPROXY_AUTO_DETECT
#define WINHTTP_QUERY_STATUS_CODE
#define WINHTTP_ACCESS_TYPE_DEFAULT_PROXY
#define WINHTTP_ACCESS_TYPE_NAMED_PROXY
#define WINHTTP_OPTION_REDIRECT_POLICY_DISALLOW_HTTPS_TO_HTTP
#define ERROR_WINHTTP_INCORRECT_HANDLE_STATE
#define ERROR_WINHTTP_INVALID_OPTION
#define WINHTTP_ADDREQ_FLAG_ADD
#define WINHTTP_OPTION_CONNECT_RETRIES
#define WINHTTP_QUERY_FLAG_NUMBER
#define SECURITY_FLAG_IGNORE_CERT_DATE_INVALID
#define ERROR_WINHTTP_UNABLE_TO_DOWNLOAD_SCRIPT
#define WINHTTP_AUTO_DETECT_TYPE_DNS_A
#define WINHTTP_OPTION_CONNECT_TIMEOUT
#define WINHTTP_OPTION_AUTOLOGON_POLICY
VOID(CALLBACK * WINHTTP_STATUS_CALLBACK)(_In_ HINTERNET, _In_ DWORD_PTR, _In_ DWORD, _In_ LPVOID, _In_ DWORD)
#define WINHTTP_OPTION_RECEIVE_TIMEOUT
#define INTERNET_DEFAULT_PORT
#define ERROR_WINHTTP_AUTODETECTION_FAILED
#define ERROR_WINHTTP_INCORRECT_HANDLE_TYPE
#define WINHTTP_ACCESS_TYPE_NO_PROXY
#define WINHTTP_OPTION_SECURITY_CERTIFICATE_STRUCT
#define WINHTTP_CALLBACK_STATUS_HANDLE_CREATED
#define WINHTTP_FLAG_SECURE
#define WINHTTP_OPTION_RECEIVE_RESPONSE_TIMEOUT
#define INTERNET_SCHEME_HTTPS
#define WINHTTP_OPTION_REDIRECT_POLICY
#define WINHTTP_OPTION_SECURITY_KEY_BITNESS
#define WINHTTP_OPTION_SECURE_PROTOCOLS
#define SECURITY_FLAG_STRENGTH_STRONG
#define SECURITY_FLAG_IGNORE_UNKNOWN_CA
#define WINHTTP_ADDREQ_FLAG_COALESCE_WITH_COMMA
#define WINHTTP_OPTION_MAX_CONNS_PER_1_0_SERVER
#define WINHTTP_OPTION_PARENT_HANDLE
#define WINHTTP_AUTOPROXY_CONFIG_URL
#define SECURITY_FLAG_IGNORE_CERT_CN_INVALID
static const WCHAR http1_1[]
static char * strdupWA_sized(const WCHAR *src, DWORD size)
#define HKEY_LOCAL_MACHINE
#define HKEY_CURRENT_USER
SECURITY_STATUS WINAPI FreeCredentialsHandle(PCredHandle phCredential)