23#ifndef _WINE_INTERNET_H_
24#define _WINE_INTERNET_H_
243#define INET_OPENURL 0x0001
244#define INET_CALLBACKW 0x0002
269#define INTERNET_HANDLE_IN_USE 1
314#define HDR_ISREQUEST 0x0001
315#define HDR_COMMADELIMITED 0x0002
316#define HDR_SEMIDELIMITED 0x0004
341#define READ_BUFFER_SIZE 8192
462#define MAX_REPLY_LEN 0x5B4
472#define _SECURITY_FLAG_CERT_REV_FAILED 0x00800000
473#define _SECURITY_FLAG_CERT_INVALID_CA 0x01000000
474#define _SECURITY_FLAG_CERT_INVALID_CN 0x02000000
475#define _SECURITY_FLAG_CERT_INVALID_DATE 0x04000000
477#define _SECURITY_ERROR_FLAGS_MASK \
478 (_SECURITY_FLAG_CERT_REV_FAILED \
479 |_SECURITY_FLAG_CERT_INVALID_CA \
480 |_SECURITY_FLAG_CERT_INVALID_CN \
481 |_SECURITY_FLAG_CERT_INVALID_DATE)
ACPI_SIZE strlen(const char *String)
static void * heap_alloc(size_t len)
#define InterlockedIncrement
#define ReadFile(a, b, c, d, e)
#define WideCharToMultiByte
#define MultiByteToWideChar
BOOL WINAPI FindNextFileW(IN HANDLE hFindFile, OUT LPWIN32_FIND_DATAW lpFindFileData)
BOOL WINAPI WriteFile(IN HANDLE hFile, IN LPCVOID lpBuffer, IN DWORD nNumberOfBytesToWrite OPTIONAL, OUT LPDWORD lpNumberOfBytesWritten, IN LPOVERLAPPED lpOverlapped OPTIONAL)
INT WSAAPI send(IN SOCKET s, IN CONST CHAR FAR *buf, IN INT len, IN INT flags)
GLdouble GLdouble GLdouble r
GLenum const GLvoid * addr
LPCVOID NETCON_GetCert(netconn_t *connection) DECLSPEC_HIDDEN
static void WININET_find_data_WtoA(LPWIN32_FIND_DATAW dataW, LPWIN32_FIND_DATAA dataA)
int sock_recv(int fd, void *msg, size_t len, int flags) DECLSPEC_HIDDEN
void free_urlcache(void) DECLSPEC_HIDDEN
time_t ConvertTimeString(LPCWSTR asctime) DECLSPEC_HIDDEN
HINTERNET FTP_Connect(appinfo_t *hIC, LPCWSTR lpszServerName, INTERNET_PORT nServerPort, LPCWSTR lpszUserName, LPCWSTR lpszPassword, DWORD dwFlags, DWORD_PTR dwContext, DWORD dwInternalFlags) DECLSPEC_HIDDEN
static char * heap_strdupA(const char *str)
DWORD HTTP_Connect(appinfo_t *, LPCWSTR, INTERNET_PORT nServerPort, LPCWSTR lpszUserName, LPCWSTR lpszPassword, DWORD dwFlags, DWORD_PTR dwContext, DWORD dwInternalFlags, HINTERNET *) DECLSPEC_HIDDEN
static WCHAR * heap_strdupAtoW(const char *str)
static req_file_t * req_file_addref(req_file_t *req_file)
void close_netconn(netconn_t *) DECLSPEC_HIDDEN
static substr_t substr(const WCHAR *str, size_t len)
object_header_t * WININET_AddRef(object_header_t *info) DECLSPEC_HIDDEN
DWORD INTERNET_GetLastError(void) DECLSPEC_HIDDEN
DWORD create_req_file(const WCHAR *, req_file_t **) DECLSPEC_HIDDEN
void * alloc_async_task(object_header_t *, async_task_proc_t, size_t) DECLSPEC_HIDDEN
void server_release(server_t *) DECLSPEC_HIDDEN
DWORD get_cookie_header(const WCHAR *, const WCHAR *, WCHAR **) DECLSPEC_HIDDEN
static char * heap_strdupWtoA(LPCWSTR str)
void INTERNET_SetLastError(DWORD dwError) DECLSPEC_HIDDEN
void * alloc_object(object_header_t *, const object_vtbl_t *, size_t) DECLSPEC_HIDDEN
void req_file_release(req_file_t *) DECLSPEC_HIDDEN
static LPWSTR heap_strdupW(LPCWSTR str)
void init_winsock(void) DECLSPEC_HIDDEN
static LPWSTR heap_strndupW(LPCWSTR str, UINT max_len)
object_header_t * get_handle_object(HINTERNET hinternet) DECLSPEC_HIDDEN
BOOL WININET_Release(object_header_t *info) DECLSPEC_HIDDEN
HMODULE WININET_hModule DECLSPEC_HIDDEN
DWORD INET_QueryOption(object_header_t *, DWORD, void *, DWORD *, BOOL) DECLSPEC_HIDDEN
BOOL NETCON_is_alive(netconn_t *) DECLSPEC_HIDDEN
static substr_t substrz(const WCHAR *str)
int sock_send(int fd, const void *msg, size_t len, int flags) DECLSPEC_HIDDEN
void(* async_task_proc_t)(task_header_t *)
BOOL GetAddress(const WCHAR *, INTERNET_PORT, SOCKADDR *, int *, char *) DECLSPEC_HIDDEN
BOOL collect_connections(collect_type_t) DECLSPEC_HIDDEN
static WCHAR * heap_strndupAtoW(const char *str, int len_a, DWORD *len_w)
DWORD NETCON_secure_connect(netconn_t *, server_t *) DECLSPEC_HIDDEN
DWORD NETCON_send(netconn_t *connection, const void *msg, size_t len, int flags, int *sent) DECLSPEC_HIDDEN
int NETCON_GetCipherStrength(netconn_t *) DECLSPEC_HIDDEN
DWORD NETCON_recv(netconn_t *, void *, size_t, BOOL, int *) DECLSPEC_HIDDEN
DWORD INET_SetOption(object_header_t *, DWORD, void *, DWORD) DECLSPEC_HIDDEN
DWORD set_cookie(substr_t, substr_t, substr_t, substr_t, DWORD) DECLSPEC_HIDDEN
BOOL init_urlcache(void) DECLSPEC_HIDDEN
DWORD INTERNET_AsyncCall(task_header_t *) DECLSPEC_HIDDEN
VOID INTERNET_SendCallback(object_header_t *hdr, DWORD_PTR dwContext, DWORD dwInternetStatus, LPVOID lpvStatusInfo, DWORD dwStatusInfoLength) DECLSPEC_HIDDEN
WCHAR * INTERNET_FindProxyForProtocol(LPCWSTR szProxy, LPCWSTR proto) DECLSPEC_HIDDEN
struct HTTPHEADERW * LPHTTPHEADERW
void free_cookie(void) DECLSPEC_HIDDEN
BOOL is_valid_netconn(netconn_t *) DECLSPEC_HIDDEN
LPSTR INTERNET_GetResponseBuffer(void) DECLSPEC_HIDDEN
void NETCON_unload(void) DECLSPEC_HIDDEN
void free_authorization_cache(void) DECLSPEC_HIDDEN
void free_netconn(netconn_t *) DECLSPEC_HIDDEN
void server_addref(server_t *) DECLSPEC_HIDDEN
DWORD NETCON_set_timeout(netconn_t *connection, BOOL send, DWORD value) DECLSPEC_HIDDEN
DWORD create_netconn(server_t *, DWORD, BOOL, DWORD, netconn_t **) DECLSPEC_HIDDEN
server_t * get_server(substr_t, INTERNET_PORT, BOOL, BOOL) DECLSPEC_HIDDEN
#define memcpy(s1, s2, n)
_Check_return_ _CRTIMP char *__cdecl asctime(_In_ const struct tm *_Tm)
FILETIME ftLastAccessTime
CHAR cAlternateFileName[14]
WCHAR cFileName[MAX_PATH]
FILETIME ftLastAccessTime
WCHAR cAlternateFileName[14]
const data_stream_vtbl_t * vtbl
struct HttpAuthInfo * proxyAuthInfo
CRITICAL_SECTION read_section
data_stream_t * data_stream
netconn_stream_t netconn_stream
struct HttpAuthInfo * authInfo
CRITICAL_SECTION headers_section
HTTPHEADERW * custHeaders
data_stream_t data_stream
SecPkgContext_StreamSizes ssl_sizes
const WCHAR * canon_host_port
const CERT_CHAIN_CONTEXT * cert_chain
_In_opt_ LPSTR _In_opt_ LPSTR lpszPassword
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
#define INTERNET_HANDLE_TYPE_CONNECT_GOPHER
#define INTERNET_HANDLE_TYPE_HTTP_REQUEST
VOID(CALLBACK * INTERNET_STATUS_CALLBACK)(_In_ HINTERNET, _In_opt_ DWORD_PTR, _In_ DWORD, _In_opt_ LPVOID, _In_ DWORD)
#define INTERNET_HANDLE_TYPE_FTP_FIND
#define INTERNET_HANDLE_TYPE_INTERNET
#define INTERNET_HANDLE_TYPE_CONNECT_HTTP
#define INTERNET_HANDLE_TYPE_CONNECT_FTP
#define INTERNET_HANDLE_TYPE_FTP_FILE
#define __WINE_ALLOC_SIZE(x)