| /** |
| * Windows API header module |
| * |
| * Translated from MinGW Windows headers |
| * |
| * Authors: Stewart Gordon |
| * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0) |
| * Source: $(DRUNTIMESRC src/core/sys/windows/_wininet.d) |
| */ |
| module core.sys.windows.wininet; |
| version (Windows): |
| @system: |
| |
| version (ANSI) {} else version = Unicode; |
| pragma(lib, "wininet"); |
| |
| // FIXME: check types and grouping of constants |
| |
| import core.sys.windows.winbase, core.sys.windows.windef; |
| |
| // From Winineti.h |
| enum { |
| INTERNET_FLAG_BGUPDATE = 0x00000008, |
| } |
| |
| enum { |
| INTERNET_INVALID_PORT_NUMBER = 0, |
| INTERNET_DEFAULT_FTP_PORT = 21, |
| INTERNET_DEFAULT_GOPHER_PORT = 70, |
| INTERNET_DEFAULT_HTTP_PORT = 80, |
| INTERNET_DEFAULT_HTTPS_PORT = 443, |
| INTERNET_DEFAULT_SOCKS_PORT = 1080 |
| } |
| |
| enum size_t |
| MAX_CACHE_ENTRY_INFO_SIZE = 4096, |
| INTERNET_MAX_HOST_NAME_LENGTH = 256, |
| INTERNET_MAX_USER_NAME_LENGTH = 128, |
| INTERNET_MAX_PASSWORD_LENGTH = 128, |
| INTERNET_MAX_PORT_NUMBER_LENGTH = 5, |
| INTERNET_MAX_PORT_NUMBER_VALUE = 65535, |
| INTERNET_MAX_PATH_LENGTH = 2048, |
| INTERNET_MAX_SCHEME_LENGTH = 32, |
| INTERNET_MAX_URL_LENGTH = INTERNET_MAX_SCHEME_LENGTH |
| + "://".length |
| + INTERNET_MAX_PATH_LENGTH; |
| |
| enum : DWORD { |
| INTERNET_KEEP_ALIVE_UNKNOWN = DWORD.max, |
| INTERNET_KEEP_ALIVE_DISABLED = 0, |
| INTERNET_KEEP_ALIVE_ENABLED |
| } |
| |
| enum { |
| INTERNET_REQFLAG_FROM_CACHE = 0x00000001, |
| INTERNET_REQFLAG_ASYNC = 0x00000002, |
| INTERNET_REQFLAG_VIA_PROXY = 0x00000004, |
| INTERNET_REQFLAG_NO_HEADERS = 0x00000008, |
| INTERNET_REQFLAG_PASSIVE = 0x00000010, |
| INTERNET_REQFLAG_CACHE_WRITE_DISABLED = 0x00000040, |
| INTERNET_REQFLAG_NET_TIMEOUT = 0x00000080, |
| } |
| |
| enum { |
| INTERNET_FLAG_IDN_DIRECT = 0x00000001, |
| INTERNET_FLAG_IDN_PROXY = 0x00000002 |
| } |
| |
| enum DWORD |
| INTERNET_FLAG_RELOAD = 0x80000000, |
| INTERNET_FLAG_RAW_DATA = 0x40000000, |
| INTERNET_FLAG_EXISTING_CONNECT = 0x20000000, |
| INTERNET_FLAG_ASYNC = 0x10000000, |
| INTERNET_FLAG_PASSIVE = 0x08000000, |
| INTERNET_FLAG_NO_CACHE_WRITE = 0x04000000, |
| INTERNET_FLAG_DONT_CACHE = INTERNET_FLAG_NO_CACHE_WRITE, |
| INTERNET_FLAG_MAKE_PERSISTENT = 0x02000000, |
| INTERNET_FLAG_FROM_CACHE = 0x01000000, |
| INTERNET_FLAG_OFFLINE = INTERNET_FLAG_FROM_CACHE, |
| INTERNET_FLAG_SECURE = 0x00800000, |
| INTERNET_FLAG_KEEP_CONNECTION = 0x00400000, |
| INTERNET_FLAG_NO_AUTO_REDIRECT = 0x00200000, |
| INTERNET_FLAG_READ_PREFETCH = 0x00100000, |
| INTERNET_FLAG_NO_COOKIES = 0x00080000, |
| INTERNET_FLAG_NO_AUTH = 0x00040000, |
| INTERNET_FLAG_RESTRICTED_ZONE = 0x00020000, |
| INTERNET_FLAG_CACHE_IF_NET_FAIL = 0x00010000, |
| INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTP = 0x00008000, |
| INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTPS = 0x00004000, |
| INTERNET_FLAG_IGNORE_CERT_DATE_INVALID = 0x00002000, |
| INTERNET_FLAG_IGNORE_CERT_CN_INVALID = 0x00001000, |
| INTERNET_FLAG_RESYNCHRONIZE = 0x00000800, |
| INTERNET_FLAG_HYPERLINK = 0x00000400, |
| INTERNET_FLAG_NO_UI = 0x00000200, |
| INTERNET_FLAG_PRAGMA_NOCACHE = 0x00000100, |
| INTERNET_FLAG_CACHE_ASYNC = 0x00000080, |
| INTERNET_FLAG_FORMS_SUBMIT = 0x00000040, |
| INTERNET_FLAG_FWD_BACK = 0x00000020, |
| INTERNET_FLAG_NEED_FILE = 0x00000010, |
| INTERNET_FLAG_MUST_CACHE_REQUEST = INTERNET_FLAG_NEED_FILE, |
| INTERNET_FLAG_TRANSFER_ASCII = FTP_TRANSFER_TYPE_ASCII, |
| INTERNET_FLAG_TRANSFER_BINARY = FTP_TRANSFER_TYPE_BINARY, |
| |
| SECURITY_INTERNET_MASK = INTERNET_FLAG_IGNORE_CERT_CN_INVALID | |
| INTERNET_FLAG_IGNORE_CERT_DATE_INVALID | |
| INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTPS | |
| INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTP, |
| |
| SECURITY_SET_MASK = SECURITY_INTERNET_MASK, |
| |
| INTERNET_FLAGS_MASK = INTERNET_FLAG_RELOAD |
| | INTERNET_FLAG_RAW_DATA |
| | INTERNET_FLAG_EXISTING_CONNECT |
| | INTERNET_FLAG_ASYNC |
| | INTERNET_FLAG_PASSIVE |
| | INTERNET_FLAG_NO_CACHE_WRITE |
| | INTERNET_FLAG_MAKE_PERSISTENT |
| | INTERNET_FLAG_FROM_CACHE |
| | INTERNET_FLAG_SECURE |
| | INTERNET_FLAG_KEEP_CONNECTION |
| | INTERNET_FLAG_NO_AUTO_REDIRECT |
| | INTERNET_FLAG_READ_PREFETCH |
| | INTERNET_FLAG_NO_COOKIES |
| | INTERNET_FLAG_NO_AUTH |
| | INTERNET_FLAG_CACHE_IF_NET_FAIL |
| | SECURITY_INTERNET_MASK |
| | INTERNET_FLAG_RESYNCHRONIZE |
| | INTERNET_FLAG_HYPERLINK |
| | INTERNET_FLAG_NO_UI |
| | INTERNET_FLAG_PRAGMA_NOCACHE |
| | INTERNET_FLAG_CACHE_ASYNC |
| | INTERNET_FLAG_FORMS_SUBMIT |
| | INTERNET_FLAG_NEED_FILE |
| | INTERNET_FLAG_RESTRICTED_ZONE |
| | INTERNET_FLAG_TRANSFER_BINARY |
| | INTERNET_FLAG_TRANSFER_ASCII |
| | INTERNET_FLAG_FWD_BACK |
| | INTERNET_FLAG_BGUPDATE, |
| |
| INTERNET_ERROR_MASK_INSERT_CDROM = 0x1, |
| INTERNET_ERROR_MASK_COMBINED_SEC_CERT = 0x2, |
| INTERNET_ERROR_MASK_NEED_MSN_SSPI_PKG = 0X4, |
| INTERNET_ERROR_MASK_LOGIN_FAILURE_DISPLAY_ENTITY_BODY = 0x8, |
| |
| INTERNET_OPTIONS_MASK = ~INTERNET_FLAGS_MASK; |
| |
| enum INTERNET_NO_CALLBACK = 0; |
| enum INTERNET_RFC1123_FORMAT = 0; |
| enum size_t INTERNET_RFC1123_BUFSIZE = 30; |
| |
| enum DWORD |
| ICU_ESCAPE = 0x80000000, |
| ICU_USERNAME = 0x40000000, |
| ICU_NO_ENCODE = 0x20000000, |
| ICU_DECODE = 0x10000000, |
| ICU_NO_META = 0x08000000, |
| ICU_ENCODE_SPACES_ONLY = 0x04000000, |
| ICU_BROWSER_MODE = 0x02000000; |
| |
| enum { |
| INTERNET_OPEN_TYPE_PRECONFIG = 0, |
| INTERNET_OPEN_TYPE_DIRECT = 1, |
| INTERNET_OPEN_TYPE_PROXY = 3, |
| PRE_CONFIG_INTERNET_ACCESS = INTERNET_OPEN_TYPE_PRECONFIG, |
| LOCAL_INTERNET_ACCESS = INTERNET_OPEN_TYPE_DIRECT, |
| GATEWAY_INTERNET_ACCESS = 2, |
| CERN_PROXY_INTERNET_ACCESS = INTERNET_OPEN_TYPE_PROXY, |
| } |
| |
| enum ISO_GLOBAL = 1; |
| enum ISO_REGISTRY = 2; |
| enum ISO_VALID_FLAGS = ISO_GLOBAL | ISO_REGISTRY; |
| |
| enum { |
| INTERNET_OPTION_CALLBACK = 1, |
| INTERNET_OPTION_CONNECT_TIMEOUT, |
| INTERNET_OPTION_CONNECT_RETRIES, |
| INTERNET_OPTION_CONNECT_BACKOFF, |
| INTERNET_OPTION_SEND_TIMEOUT, |
| INTERNET_OPTION_CONTROL_SEND_TIMEOUT = INTERNET_OPTION_SEND_TIMEOUT, |
| INTERNET_OPTION_RECEIVE_TIMEOUT, |
| INTERNET_OPTION_CONTROL_RECEIVE_TIMEOUT = INTERNET_OPTION_RECEIVE_TIMEOUT, |
| INTERNET_OPTION_DATA_SEND_TIMEOUT, |
| INTERNET_OPTION_DATA_RECEIVE_TIMEOUT, |
| INTERNET_OPTION_HANDLE_TYPE = 9, |
| INTERNET_OPTION_LISTEN_TIMEOUT = 11, |
| INTERNET_OPTION_READ_BUFFER_SIZE, |
| INTERNET_OPTION_WRITE_BUFFER_SIZE, // = 13 |
| INTERNET_OPTION_ASYNC_ID = 15, |
| INTERNET_OPTION_ASYNC_PRIORITY, // = 16 |
| INTERNET_OPTION_PARENT_HANDLE = 21, |
| INTERNET_OPTION_KEEP_CONNECTION, |
| INTERNET_OPTION_REQUEST_FLAGS, |
| INTERNET_OPTION_EXTENDED_ERROR, // = 24 |
| INTERNET_OPTION_OFFLINE_MODE = 26, |
| INTERNET_OPTION_CACHE_STREAM_HANDLE, |
| INTERNET_OPTION_USERNAME, |
| INTERNET_OPTION_PASSWORD, |
| INTERNET_OPTION_ASYNC, |
| INTERNET_OPTION_SECURITY_FLAGS, |
| INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT, |
| INTERNET_OPTION_DATAFILE_NAME, |
| INTERNET_OPTION_URL, |
| INTERNET_OPTION_SECURITY_CERTIFICATE, |
| INTERNET_OPTION_SECURITY_KEY_BITNESS, |
| INTERNET_OPTION_REFRESH, |
| INTERNET_OPTION_PROXY, |
| INTERNET_OPTION_SETTINGS_CHANGED, |
| INTERNET_OPTION_VERSION, |
| INTERNET_OPTION_USER_AGENT, |
| INTERNET_OPTION_END_BROWSER_SESSION, |
| INTERNET_OPTION_PROXY_USERNAME, |
| INTERNET_OPTION_PROXY_PASSWORD, // = 44 |
| INTERNET_OPTION_CONTEXT_VALUE = 45, |
| INTERNET_OPTION_CONNECT_LIMIT = 46, |
| INTERNET_OPTION_SECURITY_SELECT_CLIENT_CERT= 47, |
| INTERNET_OPTION_POLICY = 48, |
| INTERNET_OPTION_DISCONNECTED_TIMEOUT = 49, |
| INTERNET_OPTION_CONNECTED_STATE = 50, |
| INTERNET_OPTION_IDLE_STATE = 51, |
| INTERNET_OPTION_OFFLINE_SEMANTICS = 52, |
| INTERNET_OPTION_SECONDARY_CACHE_KEY = 53, |
| INTERNET_OPTION_CALLBACK_FILTER = 54, |
| INTERNET_OPTION_CONNECT_TIME = 55, |
| INTERNET_OPTION_SEND_THROUGHPUT = 56, |
| INTERNET_OPTION_RECEIVE_THROUGHPUT = 57, |
| INTERNET_OPTION_REQUEST_PRIORITY = 58, |
| INTERNET_OPTION_HTTP_VERSION = 59, |
| INTERNET_OPTION_RESET_URLCACHE_SESSION = 60, |
| INTERNET_OPTION_ERROR_MASK = 62, |
| INTERNET_OPTION_FROM_CACHE_TIMEOUT = 63, |
| INTERNET_OPTION_BYPASS_EDITED_ENTRY = 64, |
| INTERNET_OPTION_HTTP_DECODING = 65, |
| INTERNET_OPTION_DIAGNOSTIC_SOCKET_INFO = 67, |
| INTERNET_OPTION_CODEPAGE = 68, |
| INTERNET_OPTION_CACHE_TIMESTAMPS = 69, |
| INTERNET_OPTION_DISABLE_AUTODIAL = 70, |
| INTERNET_OPTION_MAX_CONNS_PER_SERVER = 73, |
| INTERNET_OPTION_MAX_CONNS_PER_1_0_SERVER= 74, |
| INTERNET_OPTION_PER_CONNECTION_OPTION = 75, |
| INTERNET_OPTION_DIGEST_AUTH_UNLOAD = 76, |
| INTERNET_OPTION_IGNORE_OFFLINE = 77, |
| INTERNET_OPTION_IDENTITY = 78, |
| INTERNET_OPTION_REMOVE_IDENTITY = 79, |
| INTERNET_OPTION_ALTER_IDENTITY = 80, |
| INTERNET_OPTION_SUPPRESS_BEHAVIOR = 81, |
| INTERNET_OPTION_AUTODIAL_MODE = 82, |
| INTERNET_OPTION_AUTODIAL_CONNECTION = 83, |
| INTERNET_OPTION_CLIENT_CERT_CONTEXT = 84, |
| INTERNET_OPTION_AUTH_FLAGS = 85, |
| INTERNET_OPTION_COOKIES_3RD_PARTY = 86, |
| INTERNET_OPTION_DISABLE_PASSPORT_AUTH = 87, |
| INTERNET_OPTION_SEND_UTF8_SERVERNAME_TO_PROXY = 88, |
| INTERNET_OPTION_EXEMPT_CONNECTION_LIMIT = 89, |
| INTERNET_OPTION_ENABLE_PASSPORT_AUTH = 90, |
| INTERNET_OPTION_HIBERNATE_INACTIVE_WORKER_THREADS = 91, |
| INTERNET_OPTION_ACTIVATE_WORKER_THREADS = 92, |
| INTERNET_OPTION_RESTORE_WORKER_THREAD_DEFAULTS = 93, |
| INTERNET_OPTION_SOCKET_SEND_BUFFER_LENGTH = 94, |
| INTERNET_OPTION_PROXY_SETTINGS_CHANGED = 95, |
| INTERNET_OPTION_DATAFILE_EXT = 96, |
| INTERNET_OPTION_CODEPAGE_PATH = 100, |
| INTERNET_OPTION_CODEPAGE_EXTRA = 101, |
| INTERNET_OPTION_IDN = 102, |
| INTERNET_OPTION_MAX_CONNS_PER_PROXY = 103, |
| INTERNET_OPTION_SUPPRESS_SERVER_AUTH = 104, |
| INTERNET_OPTION_SERVER_CERT_CHAIN_CONTEXT = 105, |
| INTERNET_OPTION_ENABLE_REDIRECT_CACHE_READ = 122, |
| INTERNET_OPTION_COMPRESSED_CONTENT_LENGTH = 147, |
| INTERNET_OPTION_ENABLE_HTTP_PROTOCOL = 148, |
| INTERNET_OPTION_HTTP_PROTOCOL_USED = 149, |
| INTERNET_OPTION_ENCODE_EXTRA = 155, |
| INTERNET_OPTION_HSTS = 157, |
| INTERNET_OPTION_ENTERPRISE_CONTEXT = 159, |
| INTERNET_OPTION_CONNECTION_FILTER = 162, |
| INTERNET_OPTION_REFERER_TOKEN_BINDING_HOSTNAME = 163, |
| INTERNET_OPTION_TOKEN_BINDING_PUBLIC_KEY = 181, |
| INTERNET_OPTION_COOKIES_SAME_SITE_LEVEL = 187, |
| INTERNET_FIRST_OPTION = INTERNET_OPTION_CALLBACK, |
| INTERNET_LAST_OPTION = INTERNET_OPTION_COOKIES_SAME_SITE_LEVEL, |
| } |
| |
| enum INTERNET_PRIORITY_FOREGROUND = 1000; |
| |
| enum { |
| INTERNET_HANDLE_TYPE_INTERNET = 1, |
| INTERNET_HANDLE_TYPE_CONNECT_FTP, |
| INTERNET_HANDLE_TYPE_CONNECT_GOPHER, |
| INTERNET_HANDLE_TYPE_CONNECT_HTTP, |
| INTERNET_HANDLE_TYPE_FTP_FIND, |
| INTERNET_HANDLE_TYPE_FTP_FIND_HTML, |
| INTERNET_HANDLE_TYPE_FTP_FILE, |
| INTERNET_HANDLE_TYPE_FTP_FILE_HTML, |
| INTERNET_HANDLE_TYPE_GOPHER_FIND, |
| INTERNET_HANDLE_TYPE_GOPHER_FIND_HTML, |
| INTERNET_HANDLE_TYPE_GOPHER_FILE, |
| INTERNET_HANDLE_TYPE_GOPHER_FILE_HTML, |
| INTERNET_HANDLE_TYPE_HTTP_REQUEST |
| } |
| |
| enum DWORD |
| SECURITY_FLAG_SECURE = 0x00000001, |
| SECURITY_FLAG_SSL = 0x00000002, |
| SECURITY_FLAG_SSL3 = 0x00000004, |
| SECURITY_FLAG_PCT = 0x00000008, |
| SECURITY_FLAG_PCT4 = 0x00000010, |
| SECURITY_FLAG_IETFSSL4 = 0x00000020, |
| SECURITY_FLAG_IGNORE_REVOCATION = 0x00000080, |
| SECURITY_FLAG_IGNORE_UNKNOWN_CA = 0x00000100, |
| SECURITY_FLAG_IGNORE_WRONG_USAGE = 0x00000200, |
| SECURITY_FLAG_40BIT = 0x10000000, |
| SECURITY_FLAG_128BIT = 0x20000000, |
| SECURITY_FLAG_56BIT = 0x40000000, |
| SECURITY_FLAG_UNKNOWNBIT = 0x80000000, |
| SECURITY_FLAG_NORMALBITNESS = SECURITY_FLAG_40BIT, |
| SECURITY_FLAG_IGNORE_CERT_CN_INVALID = INTERNET_FLAG_IGNORE_CERT_CN_INVALID, |
| SECURITY_FLAG_IGNORE_CERT_DATE_INVALID = INTERNET_FLAG_IGNORE_CERT_DATE_INVALID, |
| SECURITY_FLAG_IGNORE_REDIRECT_TO_HTTPS = INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTPS, |
| SECURITY_FLAG_IGNORE_REDIRECT_TO_HTTP = INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTP; |
| |
| enum { |
| INTERNET_SERVICE_FTP = 1, |
| INTERNET_SERVICE_GOPHER, |
| INTERNET_SERVICE_HTTP |
| } |
| |
| enum { |
| INTERNET_STATUS_RESOLVING_NAME = 10, |
| INTERNET_STATUS_NAME_RESOLVED = 11, |
| INTERNET_STATUS_CONNECTING_TO_SERVER = 20, |
| INTERNET_STATUS_CONNECTED_TO_SERVER = 21, |
| INTERNET_STATUS_SENDING_REQUEST = 30, |
| INTERNET_STATUS_REQUEST_SENT = 31, |
| INTERNET_STATUS_RECEIVING_RESPONSE = 40, |
| INTERNET_STATUS_RESPONSE_RECEIVED = 41, |
| INTERNET_STATUS_CTL_RESPONSE_RECEIVED = 42, |
| INTERNET_STATUS_PREFETCH = 43, |
| INTERNET_STATUS_CLOSING_CONNECTION = 50, |
| INTERNET_STATUS_CONNECTION_CLOSED = 51, |
| INTERNET_STATUS_HANDLE_CREATED = 60, |
| INTERNET_STATUS_HANDLE_CLOSING = 70, |
| INTERNET_STATUS_REQUEST_COMPLETE = 100, |
| INTERNET_STATUS_REDIRECT = 110 |
| } |
| |
| enum { |
| FTP_TRANSFER_TYPE_UNKNOWN = 0, |
| FTP_TRANSFER_TYPE_ASCII = 1, |
| FTP_TRANSFER_TYPE_BINARY = 2, |
| FTP_TRANSFER_TYPE_MASK = 3 |
| } |
| |
| enum size_t |
| MAX_GOPHER_DISPLAY_TEXT = 128, |
| MAX_GOPHER_SELECTOR_TEXT = 256, |
| MAX_GOPHER_HOST_NAME = INTERNET_MAX_HOST_NAME_LENGTH, |
| MAX_GOPHER_LOCATOR_LENGTH |
| = 1 + MAX_GOPHER_DISPLAY_TEXT + 1 + MAX_GOPHER_SELECTOR_TEXT + 1 |
| + MAX_GOPHER_HOST_NAME + 1 + INTERNET_MAX_PORT_NUMBER_LENGTH + 4; |
| |
| enum DWORD |
| GOPHER_TYPE_TEXT_FILE = 0x00000001, |
| GOPHER_TYPE_DIRECTORY = 0x00000002, |
| GOPHER_TYPE_CSO = 0x00000004, |
| GOPHER_TYPE_ERROR = 0x00000008, |
| GOPHER_TYPE_MAC_BINHEX = 0x00000010, |
| GOPHER_TYPE_DOS_ARCHIVE = 0x00000020, |
| GOPHER_TYPE_UNIX_UUENCODED = 0x00000040, |
| GOPHER_TYPE_INDEX_SERVER = 0x00000080, |
| GOPHER_TYPE_TELNET = 0x00000100, |
| GOPHER_TYPE_BINARY = 0x00000200, |
| GOPHER_TYPE_REDUNDANT = 0x00000400, |
| GOPHER_TYPE_TN3270 = 0x00000800, |
| GOPHER_TYPE_GIF = 0x00001000, |
| GOPHER_TYPE_IMAGE = 0x00002000, |
| GOPHER_TYPE_BITMAP = 0x00004000, |
| GOPHER_TYPE_MOVIE = 0x00008000, |
| GOPHER_TYPE_SOUND = 0x00010000, |
| GOPHER_TYPE_HTML = 0x00020000, |
| GOPHER_TYPE_PDF = 0x00040000, |
| GOPHER_TYPE_CALENDAR = 0x00080000, |
| GOPHER_TYPE_INLINE = 0x00100000, |
| GOPHER_TYPE_UNKNOWN = 0x20000000, |
| GOPHER_TYPE_ASK = 0x40000000, |
| GOPHER_TYPE_GOPHER_PLUS = 0x80000000, |
| GOPHER_TYPE_FILE_MASK = 0x001FF271; |
| |
| BOOL IS_GOPHER_FILE(DWORD t) { |
| return !!(t & GOPHER_TYPE_FILE_MASK); |
| } |
| |
| BOOL IS_GOPHER_DIRECTORY(DWORD t) { |
| return !!(t & GOPHER_TYPE_DIRECTORY); |
| } |
| |
| BOOL IS_GOPHER_PHONE_SERVER(DWORD t) { |
| return !!(t & GOPHER_TYPE_CSO); |
| } |
| |
| BOOL IS_GOPHER_ERROR(DWORD t) { |
| return !!(t & GOPHER_TYPE_ERROR); |
| } |
| |
| BOOL IS_GOPHER_INDEX_SERVER(DWORD t) { |
| return !!(t & GOPHER_TYPE_INDEX_SERVER); |
| } |
| |
| BOOL IS_GOPHER_TELNET_SESSION(DWORD t) { |
| return !!(t & GOPHER_TYPE_TELNET); |
| } |
| |
| BOOL IS_GOPHER_BACKUP_SERVER(DWORD t) { |
| return !!(t & GOPHER_TYPE_REDUNDANT); |
| } |
| |
| BOOL IS_GOPHER_TN3270_SESSION(DWORD t) { |
| return !!(t & GOPHER_TYPE_TN3270); |
| } |
| |
| BOOL IS_GOPHER_ASK(DWORD t) { |
| return !!(t & GOPHER_TYPE_ASK); |
| } |
| |
| BOOL IS_GOPHER_PLUS(DWORD t) { |
| return !!(t & GOPHER_TYPE_GOPHER_PLUS); |
| } |
| |
| BOOL IS_GOPHER_TYPE_KNOWN(DWORD t) { |
| return !(t & GOPHER_TYPE_UNKNOWN); |
| } |
| |
| enum size_t |
| MAX_GOPHER_CATEGORY_NAME = 128, |
| MAX_GOPHER_ATTRIBUTE_NAME = 128, |
| MIN_GOPHER_ATTRIBUTE_LENGTH = 256; |
| |
| const TCHAR[] |
| GOPHER_INFO_CATEGORY = "+INFO", |
| GOPHER_ADMIN_CATEGORY = "+ADMIN", |
| GOPHER_VIEWS_CATEGORY = "+VIEWS", |
| GOPHER_ABSTRACT_CATEGORY = "+ABSTRACT", |
| GOPHER_VERONICA_CATEGORY = "+VERONICA", |
| GOPHER_ADMIN_ATTRIBUTE = "Admin", |
| GOPHER_MOD_DATE_ATTRIBUTE = "Mod-Date", |
| GOPHER_TTL_ATTRIBUTE = "TTL", |
| GOPHER_SCORE_ATTRIBUTE = "Score", |
| GOPHER_RANGE_ATTRIBUTE = "Score-range", |
| GOPHER_SITE_ATTRIBUTE = "Site", |
| GOPHER_ORG_ATTRIBUTE = "Org", |
| GOPHER_LOCATION_ATTRIBUTE = "Loc", |
| GOPHER_GEOG_ATTRIBUTE = "Geog", |
| GOPHER_TIMEZONE_ATTRIBUTE = "TZ", |
| GOPHER_PROVIDER_ATTRIBUTE = "Provider", |
| GOPHER_VERSION_ATTRIBUTE = "Version", |
| GOPHER_ABSTRACT_ATTRIBUTE = "Abstract", |
| GOPHER_VIEW_ATTRIBUTE = "View", |
| GOPHER_TREEWALK_ATTRIBUTE = "treewalk"; |
| |
| enum : DWORD { |
| GOPHER_ATTRIBUTE_ID_BASE = 0xABCCCC00, |
| GOPHER_CATEGORY_ID_ALL, |
| GOPHER_CATEGORY_ID_INFO, |
| GOPHER_CATEGORY_ID_ADMIN, |
| GOPHER_CATEGORY_ID_VIEWS, |
| GOPHER_CATEGORY_ID_ABSTRACT, |
| GOPHER_CATEGORY_ID_VERONICA, |
| GOPHER_CATEGORY_ID_ASK, |
| GOPHER_CATEGORY_ID_UNKNOWN, |
| GOPHER_ATTRIBUTE_ID_ALL, |
| GOPHER_ATTRIBUTE_ID_ADMIN, |
| GOPHER_ATTRIBUTE_ID_MOD_DATE, |
| GOPHER_ATTRIBUTE_ID_TTL, |
| GOPHER_ATTRIBUTE_ID_SCORE, |
| GOPHER_ATTRIBUTE_ID_RANGE, |
| GOPHER_ATTRIBUTE_ID_SITE, |
| GOPHER_ATTRIBUTE_ID_ORG, |
| GOPHER_ATTRIBUTE_ID_LOCATION, |
| GOPHER_ATTRIBUTE_ID_GEOG, |
| GOPHER_ATTRIBUTE_ID_TIMEZONE, |
| GOPHER_ATTRIBUTE_ID_PROVIDER, |
| GOPHER_ATTRIBUTE_ID_VERSION, |
| GOPHER_ATTRIBUTE_ID_ABSTRACT, |
| GOPHER_ATTRIBUTE_ID_VIEW, |
| GOPHER_ATTRIBUTE_ID_TREEWALK, |
| GOPHER_ATTRIBUTE_ID_UNKNOWN |
| } |
| |
| enum HTTP_MAJOR_VERSION = 1; |
| enum HTTP_MINOR_VERSION = 0; |
| const TCHAR[] HTTP_VERSION = "HTTP/1.0"; |
| |
| enum : DWORD { |
| HTTP_QUERY_MIME_VERSION, |
| HTTP_QUERY_CONTENT_TYPE, |
| HTTP_QUERY_CONTENT_TRANSFER_ENCODING, |
| HTTP_QUERY_CONTENT_ID, |
| HTTP_QUERY_CONTENT_DESCRIPTION, |
| HTTP_QUERY_CONTENT_LENGTH, |
| HTTP_QUERY_CONTENT_LANGUAGE, |
| HTTP_QUERY_ALLOW, |
| HTTP_QUERY_PUBLIC, |
| HTTP_QUERY_DATE, |
| HTTP_QUERY_EXPIRES, |
| HTTP_QUERY_LAST_MODIFIED, |
| HTTP_QUERY_MESSAGE_ID, |
| HTTP_QUERY_URI, |
| HTTP_QUERY_DERIVED_FROM, |
| HTTP_QUERY_COST, |
| HTTP_QUERY_LINK, |
| HTTP_QUERY_PRAGMA, |
| HTTP_QUERY_VERSION, |
| HTTP_QUERY_STATUS_CODE, |
| HTTP_QUERY_STATUS_TEXT, |
| HTTP_QUERY_RAW_HEADERS, |
| HTTP_QUERY_RAW_HEADERS_CRLF, |
| HTTP_QUERY_CONNECTION, |
| HTTP_QUERY_ACCEPT, |
| HTTP_QUERY_ACCEPT_CHARSET, |
| HTTP_QUERY_ACCEPT_ENCODING, |
| HTTP_QUERY_ACCEPT_LANGUAGE, |
| HTTP_QUERY_AUTHORIZATION, |
| HTTP_QUERY_CONTENT_ENCODING, |
| HTTP_QUERY_FORWARDED, |
| HTTP_QUERY_FROM, |
| HTTP_QUERY_IF_MODIFIED_SINCE, |
| HTTP_QUERY_LOCATION, |
| HTTP_QUERY_ORIG_URI, |
| HTTP_QUERY_REFERER, |
| HTTP_QUERY_RETRY_AFTER, |
| HTTP_QUERY_SERVER, |
| HTTP_QUERY_TITLE, |
| HTTP_QUERY_USER_AGENT, |
| HTTP_QUERY_WWW_AUTHENTICATE, |
| HTTP_QUERY_PROXY_AUTHENTICATE, |
| HTTP_QUERY_ACCEPT_RANGES, |
| HTTP_QUERY_SET_COOKIE, |
| HTTP_QUERY_COOKIE, |
| HTTP_QUERY_REQUEST_METHOD, |
| HTTP_QUERY_MAX = 45, |
| HTTP_QUERY_CUSTOM = 65535 |
| } |
| |
| enum DWORD |
| HTTP_QUERY_FLAG_REQUEST_HEADERS = 0x80000000, |
| HTTP_QUERY_FLAG_SYSTEMTIME = 0x40000000, |
| HTTP_QUERY_FLAG_NUMBER = 0x20000000, |
| HTTP_QUERY_FLAG_COALESCE = 0x10000000, |
| HTTP_QUERY_MODIFIER_FLAGS_MASK = 0xF0000000, |
| HTTP_QUERY_HEADER_MASK = ~HTTP_QUERY_MODIFIER_FLAGS_MASK; |
| |
| enum { |
| HTTP_STATUS_OK = 200, |
| HTTP_STATUS_CREATED, |
| HTTP_STATUS_ACCEPTED, |
| HTTP_STATUS_PARTIAL, |
| HTTP_STATUS_NO_CONTENT, // = 204 |
| HTTP_STATUS_AMBIGUOUS = 300, |
| HTTP_STATUS_MOVED, |
| HTTP_STATUS_REDIRECT, |
| HTTP_STATUS_REDIRECT_METHOD, |
| HTTP_STATUS_NOT_MODIFIED, // = 304 |
| HTTP_STATUS_BAD_REQUEST = 400, |
| HTTP_STATUS_DENIED, |
| HTTP_STATUS_PAYMENT_REQ, |
| HTTP_STATUS_FORBIDDEN, |
| HTTP_STATUS_NOT_FOUND, |
| HTTP_STATUS_BAD_METHOD, |
| HTTP_STATUS_NONE_ACCEPTABLE, |
| HTTP_STATUS_PROXY_AUTH_REQ, |
| HTTP_STATUS_REQUEST_TIMEOUT, |
| HTTP_STATUS_CONFLICT, |
| HTTP_STATUS_GONE, |
| HTTP_STATUS_AUTH_REFUSED, // = 411 |
| HTTP_STATUS_SERVER_ERROR = 500, |
| HTTP_STATUS_NOT_SUPPORTED, |
| HTTP_STATUS_BAD_GATEWAY, |
| HTTP_STATUS_SERVICE_UNAVAIL, |
| HTTP_STATUS_GATEWAY_TIMEOUT // = 504 |
| } |
| |
| enum { |
| INTERNET_PREFETCH_PROGRESS, |
| INTERNET_PREFETCH_COMPLETE, |
| INTERNET_PREFETCH_ABORTED |
| } |
| |
| enum FLAGS_ERROR_UI_FILTER_FOR_ERRORS = 0x01; |
| enum FLAGS_ERROR_UI_FLAGS_CHANGE_OPTIONS = 0x02; |
| enum FLAGS_ERROR_UI_FLAGS_GENERATE_DATA = 0x04; |
| enum FLAGS_ERROR_UI_FLAGS_NO_UI = 0x08; |
| |
| enum DWORD |
| HTTP_ADDREQ_INDEX_MASK = 0x0000FFFF, |
| HTTP_ADDREQ_FLAGS_MASK = 0xFFFF0000, |
| HTTP_ADDREQ_FLAG_COALESCE_WITH_SEMICOLON = 0x01000000, |
| HTTP_ADDREQ_FLAG_ADD_IF_NEW = 0x10000000, |
| HTTP_ADDREQ_FLAG_ADD = 0x20000000, |
| HTTP_ADDREQ_FLAG_COALESCE_WITH_COMMA = 0x40000000, |
| HTTP_ADDREQ_FLAG_COALESCE = HTTP_ADDREQ_FLAG_COALESCE_WITH_COMMA, |
| HTTP_ADDREQ_FLAG_REPLACE = 0x80000000; |
| |
| enum { |
| INTERNET_ERROR_BASE = 12000, |
| ERROR_INTERNET_OUT_OF_HANDLES, |
| ERROR_INTERNET_TIMEOUT, |
| ERROR_INTERNET_EXTENDED_ERROR, |
| ERROR_INTERNET_INTERNAL_ERROR, |
| ERROR_INTERNET_INVALID_URL, |
| ERROR_INTERNET_UNRECOGNIZED_SCHEME, |
| ERROR_INTERNET_NAME_NOT_RESOLVED, |
| ERROR_INTERNET_PROTOCOL_NOT_FOUND, |
| ERROR_INTERNET_INVALID_OPTION, |
| ERROR_INTERNET_BAD_OPTION_LENGTH, |
| ERROR_INTERNET_OPTION_NOT_SETTABLE, |
| ERROR_INTERNET_SHUTDOWN, |
| ERROR_INTERNET_INCORRECT_USER_NAME, |
| ERROR_INTERNET_INCORRECT_PASSWORD, |
| ERROR_INTERNET_LOGIN_FAILURE, |
| ERROR_INTERNET_INVALID_OPERATION, |
| ERROR_INTERNET_OPERATION_CANCELLED, |
| ERROR_INTERNET_INCORRECT_HANDLE_TYPE, |
| ERROR_INTERNET_INCORRECT_HANDLE_STATE, |
| ERROR_INTERNET_NOT_PROXY_REQUEST, |
| ERROR_INTERNET_REGISTRY_VALUE_NOT_FOUND, |
| ERROR_INTERNET_BAD_REGISTRY_PARAMETER, |
| ERROR_INTERNET_NO_DIRECT_ACCESS, |
| ERROR_INTERNET_NO_CONTEXT, |
| ERROR_INTERNET_NO_CALLBACK, |
| ERROR_INTERNET_REQUEST_PENDING, |
| ERROR_INTERNET_INCORRECT_FORMAT, |
| ERROR_INTERNET_ITEM_NOT_FOUND, |
| ERROR_INTERNET_CANNOT_CONNECT, |
| ERROR_INTERNET_CONNECTION_ABORTED, |
| ERROR_INTERNET_CONNECTION_RESET, |
| ERROR_INTERNET_FORCE_RETRY, |
| ERROR_INTERNET_INVALID_PROXY_REQUEST, |
| ERROR_INTERNET_NEED_UI, // = INTERNET_ERROR_BASE + 34 |
| ERROR_INTERNET_HANDLE_EXISTS = INTERNET_ERROR_BASE + 36, |
| ERROR_INTERNET_SEC_CERT_DATE_INVALID, |
| ERROR_INTERNET_SEC_CERT_CN_INVALID, |
| ERROR_INTERNET_HTTP_TO_HTTPS_ON_REDIR, |
| ERROR_INTERNET_HTTPS_TO_HTTP_ON_REDIR, |
| ERROR_INTERNET_MIXED_SECURITY, |
| ERROR_INTERNET_CHG_POST_IS_NON_SECURE, |
| ERROR_INTERNET_POST_IS_NON_SECURE, |
| ERROR_INTERNET_CLIENT_AUTH_CERT_NEEDED, |
| ERROR_INTERNET_INVALID_CA, |
| ERROR_INTERNET_CLIENT_AUTH_NOT_SETUP, |
| ERROR_INTERNET_ASYNC_THREAD_FAILED, |
| ERROR_INTERNET_REDIRECT_SCHEME_CHANGE, // = INTERNET_ERROR_BASE + 48 |
| |
| ERROR_FTP_TRANSFER_IN_PROGRESS = INTERNET_ERROR_BASE + 110, |
| ERROR_FTP_DROPPED, // = INTERNET_ERROR_BASE + 111 |
| ERROR_GOPHER_PROTOCOL_ERROR = INTERNET_ERROR_BASE + 130, |
| ERROR_GOPHER_NOT_FILE, |
| ERROR_GOPHER_DATA_ERROR, |
| ERROR_GOPHER_END_OF_DATA, |
| ERROR_GOPHER_INVALID_LOCATOR, |
| ERROR_GOPHER_INCORRECT_LOCATOR_TYPE, |
| ERROR_GOPHER_NOT_GOPHER_PLUS, |
| ERROR_GOPHER_ATTRIBUTE_NOT_FOUND, |
| ERROR_GOPHER_UNKNOWN_LOCATOR, // = INTERNET_ERROR_BASE + 138, |
| ERROR_HTTP_HEADER_NOT_FOUND = INTERNET_ERROR_BASE + 150, |
| ERROR_HTTP_DOWNLEVEL_SERVER, |
| ERROR_HTTP_INVALID_SERVER_RESPONSE, |
| ERROR_HTTP_INVALID_HEADER, |
| ERROR_HTTP_INVALID_QUERY_REQUEST, |
| ERROR_HTTP_HEADER_ALREADY_EXISTS, |
| ERROR_HTTP_REDIRECT_FAILED, |
| ERROR_INTERNET_SECURITY_CHANNEL_ERROR, |
| ERROR_INTERNET_UNABLE_TO_CACHE_FILE, |
| ERROR_INTERNET_TCPIP_NOT_INSTALLED, |
| ERROR_HTTP_NOT_REDIRECTED, // = INTERNET_ERROR_BASE + 160 |
| // why? |
| INTERNET_ERROR_LAST = ERROR_INTERNET_TCPIP_NOT_INSTALLED |
| } |
| |
| |
| enum NORMAL_CACHE_ENTRY = 0x000001; |
| enum STABLE_CACHE_ENTRY = 0x000002; |
| enum STICKY_CACHE_ENTRY = 0x000004; |
| enum SPARSE_CACHE_ENTRY = 0x010000; |
| enum OCX_CACHE_ENTRY = 0x020000; |
| enum COOKIE_CACHE_ENTRY = 0x100000; |
| enum URLHISTORY_CACHE_ENTRY = 0x200000; |
| |
| enum CACHE_ENTRY_ATTRIBUTE_FC = 0x0004; |
| enum CACHE_ENTRY_HITRATE_FC = 0x0010; |
| enum CACHE_ENTRY_MODTIME_FC = 0x0040; |
| enum CACHE_ENTRY_EXPTIME_FC = 0x0080; |
| enum CACHE_ENTRY_ACCTIME_FC = 0x0100; |
| enum CACHE_ENTRY_SYNCTIME_FC = 0x0200; |
| enum CACHE_ENTRY_HEADERINFO_FC = 0x0400; |
| |
| enum { |
| WININET_API_FLAG_ASYNC = 1, |
| WININET_API_FLAG_SYNC = 4, |
| WININET_API_FLAG_USE_CONTEXT = 8 |
| } |
| |
| // FIXME: how should these really be grouped? |
| enum { |
| IRF_ASYNC = WININET_API_FLAG_ASYNC, |
| IRF_SYNC = WININET_API_FLAG_SYNC, |
| IRF_USE_CONTEXT = WININET_API_FLAG_USE_CONTEXT, |
| } |
| enum IRF_NO_WAIT = 8; |
| |
| enum { |
| HSR_ASYNC = WININET_API_FLAG_ASYNC, |
| HSR_SYNC = WININET_API_FLAG_SYNC, |
| HSR_USE_CONTEXT = WININET_API_FLAG_USE_CONTEXT, |
| } |
| |
| enum HSR_INITIATE = 8; |
| enum HSR_DOWNLOAD = 16; |
| enum HSR_CHUNKED = 32; |
| |
| enum INTERNET_DIAL_UNATTENDED = 0x8000; |
| enum INTERNET_DIALSTATE_DISCONNECTED = 1; |
| enum INTERENT_GOONLINE_REFRESH = 1; |
| enum INTERENT_GOONLINE_MASK = 1; |
| enum INTERNET_AUTODIAL_FORCE_ONLINE = 1; |
| enum INTERNET_AUTODIAL_FORCE_UNATTENDED = 2; |
| enum INTERNET_AUTODIAL_FAILIFSECURITYCHECK = 4; |
| enum INTERNET_CONNECTION_MODEM = 0x01; |
| enum INTERNET_CONNECTION_LAN = 0x02; |
| enum INTERNET_CONNECTION_PROXY = 0x04; |
| enum INTERNET_CONNECTION_MODEM_BUSY = 0x08; |
| enum INTERNET_RAS_INSTALLED = 0x10; |
| enum INTERNET_CONNECTION_OFFLINE = 0x20; |
| enum INTERNET_CONNECTION_CONFIGURED = 0x40; |
| |
| enum { |
| CACHEGROUP_SEARCH_ALL = 0, |
| CACHEGROUP_SEARCH_BYURL = 1 |
| } |
| |
| enum { |
| INTERNET_CACHE_GROUP_ADD = 0, |
| INTERNET_CACHE_GROUP_REMOVE = 1 |
| } |
| |
| mixin DECLARE_HANDLE!("HINTERNET"); // doesn't work - bug |
| /*struct HINTERNET { |
| HANDLE h; |
| alias h this; |
| }*/ |
| alias HINTERNET* LPHINTERNET; |
| |
| alias LONGLONG GROUPID; |
| alias WORD INTERNET_PORT; |
| alias WORD* LPINTERNET_PORT; |
| |
| enum INTERNET_SCHEME { |
| INTERNET_SCHEME_PARTIAL = -2, |
| INTERNET_SCHEME_UNKNOWN, |
| INTERNET_SCHEME_DEFAULT, |
| INTERNET_SCHEME_FTP, |
| INTERNET_SCHEME_GOPHER, |
| INTERNET_SCHEME_HTTP, |
| INTERNET_SCHEME_HTTPS, |
| INTERNET_SCHEME_FILE, |
| INTERNET_SCHEME_NEWS, |
| INTERNET_SCHEME_MAILTO, |
| INTERNET_SCHEME_SOCKS, |
| INTERNET_SCHEME_JAVASCRIPT, |
| INTERNET_SCHEME_VBSCRIPT, |
| INTERNET_SCHEME_RES, |
| INTERNET_SCHEME_FIRST = INTERNET_SCHEME_FTP, |
| INTERNET_SCHEME_LAST = INTERNET_SCHEME_RES |
| } |
| alias INTERNET_SCHEME* LPINTERNET_SCHEME; |
| |
| struct INTERNET_ASYNC_RESULT { |
| DWORD_PTR dwResult; |
| DWORD dwError; |
| } |
| alias INTERNET_ASYNC_RESULT* LPINTERNET_ASYNC_RESULT; |
| |
| struct INTERNET_DIAGNOSTIC_SOCKET_INFO { |
| DWORD_PTR Socket; |
| DWORD SourcePort; |
| DWORD DestPort; |
| DWORD Flags; |
| } |
| alias INTERNET_DIAGNOSTIC_SOCKET_INFO* LPINTERNET_DIAGNOSTIC_SOCKET_INFO; |
| |
| struct INTERNET_PREFETCH_STATUS { |
| DWORD dwStatus; |
| DWORD dwSize; |
| } |
| alias INTERNET_PREFETCH_STATUS* LPINTERNET_PREFETCH_STATUS; |
| |
| struct INTERNET_PROXY_INFO { |
| DWORD dwAccessType; |
| LPCTSTR lpszProxy; |
| LPCTSTR lpszProxyBypass; |
| } |
| alias INTERNET_PROXY_INFO* LPINTERNET_PROXY_INFO; |
| |
| struct INTERNET_PER_CONN_OPTIONA { |
| DWORD dwOption; |
| union { |
| DWORD dwValue; |
| LPSTR pszValue; |
| FILETIME ftValue; |
| } |
| } |
| alias INTERNET_PER_CONN_OPTIONA* LPINTERNET_PER_CONN_OPTIONA; |
| |
| struct INTERNET_PER_CONN_OPTIONW { |
| DWORD dwOption; |
| union { |
| DWORD dwValue; |
| LPWSTR pszValue; |
| FILETIME ftValue; |
| } |
| } |
| alias INTERNET_PER_CONN_OPTIONW* LPINTERNET_PER_CONN_OPTIONW; |
| |
| struct INTERNET_PER_CONN_OPTION_LISTA { |
| DWORD dwSize; |
| LPSTR pszConnection; |
| DWORD dwOptionCount; |
| DWORD dwOptionError; |
| LPINTERNET_PER_CONN_OPTIONA pOptions; |
| } |
| alias INTERNET_PER_CONN_OPTION_LISTA* LPINTERNET_PER_CONN_OPTION_LISTA; |
| |
| struct INTERNET_PER_CONN_OPTION_LISTW { |
| DWORD dwSize; |
| LPWSTR pszConnection; |
| DWORD dwOptionCount; |
| DWORD dwOptionError; |
| LPINTERNET_PER_CONN_OPTIONW pOptions; |
| } |
| alias INTERNET_PER_CONN_OPTION_LISTW* LPINTERNET_PER_CONN_OPTION_LISTW; |
| |
| enum { |
| INTERNET_PER_CONN_FLAGS = 1, |
| INTERNET_PER_CONN_PROXY_SERVER = 2, |
| INTERNET_PER_CONN_PROXY_BYPASS = 3, |
| INTERNET_PER_CONN_AUTOCONFIG_URL = 4, |
| INTERNET_PER_CONN_AUTODISCOVERY_FLAGS = 5, |
| INTERNET_PER_CONN_AUTOCONFIG_SECONDARY_URL = 6, |
| INTERNET_PER_CONN_AUTOCONFIG_RELOAD_DELAY_MINS = 7, |
| INTERNET_PER_CONN_AUTOCONFIG_LAST_DETECT_TIME = 8, |
| INTERNET_PER_CONN_AUTOCONFIG_LAST_DETECT_URL = 9, |
| INTERNET_PER_CONN_FLAGS_UI = 10, |
| } |
| |
| enum { |
| PROXY_TYPE_DIRECT = 0x00000001, |
| PROXY_TYPE_PROXY = 0x00000002, |
| PROXY_TYPE_AUTO_PROXY_URL = 0x00000004, |
| PROXY_TYPE_AUTO_DETECT = 0x00000008, |
| } |
| |
| enum { |
| AUTO_PROXY_FLAG_USER_SET = 0x00000001, |
| AUTO_PROXY_FLAG_ALWAYS_DETECT = 0x00000002, |
| AUTO_PROXY_FLAG_DETECTION_RUN = 0x00000004, |
| AUTO_PROXY_FLAG_MIGRATED = 0x00000008, |
| AUTO_PROXY_FLAG_DONT_CACHE_PROXY_RESULT = 0x00000010, |
| AUTO_PROXY_FLAG_CACHE_INIT_RUN = 0x00000020, |
| AUTO_PROXY_FLAG_DETECTION_SUSPECT = 0x00000040, |
| } |
| |
| struct INTERNET_VERSION_INFO { |
| DWORD dwMajorVersion; |
| DWORD dwMinorVersion; |
| } |
| alias INTERNET_VERSION_INFO* LPINTERNET_VERSION_INFO; |
| |
| struct URL_COMPONENTSA { |
| DWORD dwStructSize = URL_COMPONENTSA.sizeof; |
| LPSTR lpszScheme; |
| DWORD dwSchemeLength; |
| INTERNET_SCHEME nScheme; |
| LPSTR lpszHostName; |
| DWORD dwHostNameLength; |
| INTERNET_PORT nPort; |
| LPSTR lpszUserName; |
| DWORD dwUserNameLength; |
| LPSTR lpszPassword; |
| DWORD dwPasswordLength; |
| LPSTR lpszUrlPath; |
| DWORD dwUrlPathLength; |
| LPSTR lpszExtraInfo; |
| DWORD dwExtraInfoLength; |
| } |
| alias URL_COMPONENTSA* LPURL_COMPONENTSA; |
| |
| struct URL_COMPONENTSW { |
| DWORD dwStructSize = URL_COMPONENTSW.sizeof; |
| LPWSTR lpszScheme; |
| DWORD dwSchemeLength; |
| INTERNET_SCHEME nScheme; |
| LPWSTR lpszHostName; |
| DWORD dwHostNameLength; |
| INTERNET_PORT nPort; |
| LPWSTR lpszUserName; |
| DWORD dwUserNameLength; |
| LPWSTR lpszPassword; |
| DWORD dwPasswordLength; |
| LPWSTR lpszUrlPath; |
| DWORD dwUrlPathLength; |
| LPWSTR lpszExtraInfo; |
| DWORD dwExtraInfoLength; |
| } |
| alias URL_COMPONENTSW* LPURL_COMPONENTSW; |
| |
| struct INTERNET_CERTIFICATE_INFO { |
| FILETIME ftExpiry; |
| FILETIME ftStart; |
| LPTSTR lpszSubjectInfo; |
| LPTSTR lpszIssuerInfo; |
| LPTSTR lpszProtocolName; |
| LPTSTR lpszSignatureAlgName; |
| LPTSTR lpszEncryptionAlgName; |
| DWORD dwKeySize; |
| } |
| alias INTERNET_CERTIFICATE_INFO* LPINTERNET_CERTIFICATE_INFO; |
| |
| extern (Windows) alias void function(HINTERNET, DWORD_PTR, DWORD, PVOID, DWORD) |
| INTERNET_STATUS_CALLBACK; |
| alias INTERNET_STATUS_CALLBACK* LPINTERNET_STATUS_CALLBACK; |
| |
| enum INTERNET_INVALID_STATUS_CALLBACK |
| = cast(INTERNET_STATUS_CALLBACK) -1; |
| |
| struct GOPHER_FIND_DATAA { |
| CHAR[MAX_GOPHER_DISPLAY_TEXT+1] DisplayString = 0; |
| DWORD GopherType; |
| DWORD SizeLow; |
| DWORD SizeHigh; |
| FILETIME LastModificationTime; |
| CHAR[MAX_GOPHER_LOCATOR_LENGTH+1] Locator = 0; |
| } |
| alias GOPHER_FIND_DATAA* LPGOPHER_FIND_DATAA; |
| |
| struct GOPHER_FIND_DATAW { |
| WCHAR[MAX_GOPHER_DISPLAY_TEXT+1] DisplayString = 0; |
| DWORD GopherType; |
| DWORD SizeLow; |
| DWORD SizeHigh; |
| FILETIME LastModificationTime; |
| WCHAR[MAX_GOPHER_LOCATOR_LENGTH+1] Locator = 0; |
| } |
| alias GOPHER_FIND_DATAW* LPGOPHER_FIND_DATAW; |
| |
| struct GOPHER_ADMIN_ATTRIBUTE_TYPE { |
| LPCTSTR Comment; |
| LPCTSTR EmailAddress; |
| } |
| alias GOPHER_ADMIN_ATTRIBUTE_TYPE* LPGOPHER_ADMIN_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_MOD_DATE_ATTRIBUTE_TYPE { |
| FILETIME DateAndTime; |
| } |
| alias GOPHER_MOD_DATE_ATTRIBUTE_TYPE* LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_TTL_ATTRIBUTE_TYPE { |
| DWORD Ttl; |
| } |
| alias GOPHER_TTL_ATTRIBUTE_TYPE* LPGOPHER_TTL_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_SCORE_ATTRIBUTE_TYPE { |
| INT Score; |
| } |
| alias GOPHER_SCORE_ATTRIBUTE_TYPE* LPGOPHER_SCORE_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE { |
| INT LowerBound; |
| INT UpperBound; |
| } |
| alias GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE* LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_SITE_ATTRIBUTE_TYPE { |
| LPCTSTR Site; |
| } |
| alias GOPHER_SITE_ATTRIBUTE_TYPE* LPGOPHER_SITE_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_ORGANIZATION_ATTRIBUTE_TYPE { |
| LPCTSTR Organization; |
| } |
| alias GOPHER_ORGANIZATION_ATTRIBUTE_TYPE* LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_LOCATION_ATTRIBUTE_TYPE { |
| LPCTSTR Location; |
| } |
| alias GOPHER_LOCATION_ATTRIBUTE_TYPE* LPGOPHER_LOCATION_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE { |
| INT DegreesNorth; |
| INT MinutesNorth; |
| INT SecondsNorth; |
| INT DegreesEast; |
| INT MinutesEast; |
| INT SecondsEast; |
| } |
| alias GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE* |
| LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_TIMEZONE_ATTRIBUTE_TYPE { |
| INT Zone; |
| } |
| alias GOPHER_TIMEZONE_ATTRIBUTE_TYPE* LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_PROVIDER_ATTRIBUTE_TYPE { |
| LPCTSTR Provider; |
| } |
| alias GOPHER_PROVIDER_ATTRIBUTE_TYPE* LPGOPHER_PROVIDER_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_VERSION_ATTRIBUTE_TYPE { |
| LPCTSTR Version; |
| } |
| alias GOPHER_VERSION_ATTRIBUTE_TYPE* LPGOPHER_VERSION_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_ABSTRACT_ATTRIBUTE_TYPE { |
| LPCTSTR ShortAbstract; |
| LPCTSTR AbstractFile; |
| } |
| alias GOPHER_ABSTRACT_ATTRIBUTE_TYPE* LPGOPHER_ABSTRACT_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_VIEW_ATTRIBUTE_TYPE { |
| LPCTSTR ContentType; |
| LPCTSTR Language; |
| DWORD Size; |
| } |
| alias GOPHER_VIEW_ATTRIBUTE_TYPE* LPGOPHER_VIEW_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_VERONICA_ATTRIBUTE_TYPE { |
| BOOL TreeWalk; |
| } |
| alias GOPHER_VERONICA_ATTRIBUTE_TYPE* LPGOPHER_VERONICA_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_ASK_ATTRIBUTE_TYPE { |
| LPCTSTR QuestionType; |
| LPCTSTR QuestionText; |
| } |
| alias GOPHER_ASK_ATTRIBUTE_TYPE* LPGOPHER_ASK_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_UNKNOWN_ATTRIBUTE_TYPE { |
| LPCTSTR Text; |
| } |
| alias GOPHER_UNKNOWN_ATTRIBUTE_TYPE* LPGOPHER_UNKNOWN_ATTRIBUTE_TYPE; |
| |
| struct GOPHER_ATTRIBUTE_TYPE { |
| DWORD CategoryId; |
| DWORD AttributeId; |
| union { |
| GOPHER_ADMIN_ATTRIBUTE_TYPE Admin; |
| GOPHER_MOD_DATE_ATTRIBUTE_TYPE ModDate; |
| GOPHER_TTL_ATTRIBUTE_TYPE Ttl; |
| GOPHER_SCORE_ATTRIBUTE_TYPE Score; |
| GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE ScoreRange; |
| GOPHER_SITE_ATTRIBUTE_TYPE Site; |
| GOPHER_ORGANIZATION_ATTRIBUTE_TYPE Organization; |
| GOPHER_LOCATION_ATTRIBUTE_TYPE Location; |
| GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE GeographicalLocation; |
| GOPHER_TIMEZONE_ATTRIBUTE_TYPE TimeZone; |
| GOPHER_PROVIDER_ATTRIBUTE_TYPE Provider; |
| GOPHER_VERSION_ATTRIBUTE_TYPE Version; |
| GOPHER_ABSTRACT_ATTRIBUTE_TYPE Abstract; |
| GOPHER_VIEW_ATTRIBUTE_TYPE View; |
| GOPHER_VERONICA_ATTRIBUTE_TYPE Veronica; |
| GOPHER_ASK_ATTRIBUTE_TYPE Ask; |
| GOPHER_UNKNOWN_ATTRIBUTE_TYPE Unknown; |
| } /+AttributeType;+/ |
| } |
| alias GOPHER_ATTRIBUTE_TYPE* LPGOPHER_ATTRIBUTE_TYPE; |
| |
| extern (Windows) |
| alias BOOL function(LPGOPHER_ATTRIBUTE_TYPE, DWORD) |
| GOPHER_ATTRIBUTE_ENUMERATOR; |
| |
| struct INTERNET_CACHE_ENTRY_INFOA { |
| DWORD dwStructSize = INTERNET_CACHE_ENTRY_INFOA.sizeof; |
| LPSTR lpszSourceUrlName; |
| LPSTR lpszLocalFileName; |
| DWORD CacheEntryType; |
| DWORD dwUseCount; |
| DWORD dwHitRate; |
| DWORD dwSizeLow; |
| DWORD dwSizeHigh; |
| FILETIME LastModifiedTime; |
| FILETIME ExpireTime; |
| FILETIME LastAccessTime; |
| FILETIME LastSyncTime; |
| PBYTE lpHeaderInfo; |
| DWORD dwHeaderInfoSize; |
| LPSTR lpszFileExtension; |
| DWORD dwReserved; |
| } |
| alias INTERNET_CACHE_ENTRY_INFOA* LPINTERNET_CACHE_ENTRY_INFOA; |
| |
| struct INTERNET_CACHE_ENTRY_INFOW { |
| DWORD dwStructSize = INTERNET_CACHE_ENTRY_INFOW.sizeof; |
| LPWSTR lpszSourceUrlName; |
| LPWSTR lpszLocalFileName; |
| DWORD CacheEntryType; |
| DWORD dwUseCount; |
| DWORD dwHitRate; |
| DWORD dwSizeLow; |
| DWORD dwSizeHigh; |
| FILETIME LastModifiedTime; |
| FILETIME ExpireTime; |
| FILETIME LastAccessTime; |
| FILETIME LastSyncTime; |
| PBYTE lpHeaderInfo; |
| DWORD dwHeaderInfoSize; |
| LPWSTR lpszFileExtension; |
| DWORD dwReserved; |
| } |
| alias INTERNET_CACHE_ENTRY_INFOW* LPINTERNET_CACHE_ENTRY_INFOW; |
| |
| struct INTERNET_BUFFERSA { |
| DWORD dwStructSize = INTERNET_BUFFERSA.sizeof; |
| INTERNET_BUFFERSA* Next; |
| LPCSTR lpcszHeader; |
| DWORD dwHeadersLength; |
| DWORD dwHeadersTotal; |
| LPVOID lpvBuffer; |
| DWORD dwBufferLength; |
| DWORD dwBufferTotal; |
| DWORD dwOffsetLow; |
| DWORD dwOffsetHigh; |
| } |
| alias INTERNET_BUFFERSA* LPINTERNET_BUFFERSA; |
| |
| struct INTERNET_BUFFERSW { |
| DWORD dwStructSize = INTERNET_BUFFERSW.sizeof; |
| INTERNET_BUFFERSW* Next; |
| LPCWSTR lpcszHeader; |
| DWORD dwHeadersLength; |
| DWORD dwHeadersTotal; |
| LPVOID lpvBuffer; |
| DWORD dwBufferLength; |
| DWORD dwBufferTotal; |
| DWORD dwOffsetLow; |
| DWORD dwOffsetHigh; |
| } |
| alias INTERNET_BUFFERSW* LPINTERNET_BUFFERSW; |
| |
| enum size_t |
| GROUP_OWNER_STORAGE_SIZE = 4, |
| GROUPNAME_MAX_LENGTH = 120; |
| |
| struct INTERNET_CACHE_GROUP_INFOA { |
| DWORD dwGroupSize; |
| DWORD dwGroupFlags; |
| DWORD dwGroupType; |
| DWORD dwDiskUsage; |
| DWORD dwDiskQuota; |
| DWORD[GROUP_OWNER_STORAGE_SIZE] dwOwnerStorage; |
| CHAR[GROUPNAME_MAX_LENGTH] szGroupName = 0; |
| } |
| alias INTERNET_CACHE_GROUP_INFOA* LPINTERNET_CACHE_GROUP_INFOA; |
| |
| struct INTERNET_CACHE_GROUP_INFOW { |
| DWORD dwGroupSize; |
| DWORD dwGroupFlags; |
| DWORD dwGroupType; |
| DWORD dwDiskUsage; |
| DWORD dwDiskQuota; |
| DWORD[GROUP_OWNER_STORAGE_SIZE] dwOwnerStorage; |
| WCHAR[GROUPNAME_MAX_LENGTH] szGroupName = 0; |
| } |
| alias INTERNET_CACHE_GROUP_INFOW* LPINTERNET_CACHE_GROUP_INFOW; |
| |
| extern (Windows) { |
| BOOL InternetTimeFromSystemTime(SYSTEMTIME*, DWORD, LPSTR, DWORD); |
| BOOL InternetTimeToSystemTime(LPCSTR, SYSTEMTIME*, DWORD); |
| BOOL InternetDebugGetLocalTime(SYSTEMTIME*, PDWORD); |
| BOOL InternetCrackUrlA(LPCSTR, DWORD, DWORD, LPURL_COMPONENTSA); |
| BOOL InternetCrackUrlW(LPCWSTR, DWORD, DWORD, LPURL_COMPONENTSW); |
| BOOL InternetCreateUrlA(LPURL_COMPONENTSA, DWORD, LPSTR, PDWORD); |
| BOOL InternetCreateUrlW(LPURL_COMPONENTSW, DWORD, LPWSTR, PDWORD); |
| BOOL InternetCanonicalizeUrlA(LPCSTR, LPSTR, PDWORD, DWORD); |
| BOOL InternetCanonicalizeUrlW(LPCWSTR, LPWSTR, PDWORD, DWORD); |
| BOOL InternetCheckConnectionA(LPCSTR, DWORD, DWORD); |
| BOOL InternetCheckConnectionW(LPCWSTR, DWORD, DWORD); |
| BOOL InternetCombineUrlA(LPCSTR, LPCSTR, LPSTR, PDWORD, DWORD); |
| BOOL InternetCombineUrlW(LPCWSTR, LPCWSTR, LPWSTR, PDWORD, DWORD); |
| HINTERNET InternetOpenA(LPCSTR, DWORD, LPCSTR, LPCSTR, DWORD); |
| HINTERNET InternetOpenW(LPCWSTR, DWORD, LPCWSTR, LPCWSTR, DWORD); |
| BOOL InternetCloseHandle(HINTERNET); |
| HINTERNET InternetConnectA(HINTERNET, LPCSTR, INTERNET_PORT, LPCSTR, |
| LPCSTR, DWORD, DWORD, DWORD_PTR); |
| HINTERNET InternetConnectW(HINTERNET, LPCWSTR, INTERNET_PORT, LPCWSTR, |
| LPCWSTR, DWORD, DWORD, DWORD_PTR); |
| HINTERNET InternetOpenUrlA(HINTERNET, LPCSTR, LPCSTR, DWORD, DWORD, |
| DWORD_PTR); |
| HINTERNET InternetOpenUrlW(HINTERNET, LPCWSTR, LPCWSTR, DWORD, DWORD, |
| DWORD_PTR); |
| BOOL InternetReadFile(HINTERNET, PVOID, DWORD, PDWORD); |
| DWORD InternetSetFilePointer(HINTERNET, LONG, PVOID, DWORD, DWORD_PTR); |
| BOOL InternetWriteFile(HINTERNET, LPCVOID, DWORD, PDWORD); |
| BOOL InternetQueryDataAvailable(HINTERNET, PDWORD, DWORD, DWORD_PTR); |
| BOOL InternetFindNextFileA(HINTERNET, PVOID); |
| BOOL InternetFindNextFileW(HINTERNET, PVOID); |
| BOOL InternetQueryOptionA(HINTERNET, DWORD, PVOID, PDWORD); |
| BOOL InternetQueryOptionW(HINTERNET, DWORD, PVOID, PDWORD); |
| BOOL InternetSetOptionA(HINTERNET, DWORD, PVOID, DWORD); |
| BOOL InternetSetOptionW(HINTERNET, DWORD, PVOID, DWORD); |
| BOOL InternetSetOptionExA(HINTERNET, DWORD, PVOID, DWORD, DWORD); |
| BOOL InternetSetOptionExW(HINTERNET, DWORD, PVOID, DWORD, DWORD); |
| BOOL InternetGetLastResponseInfoA(PDWORD, LPSTR, PDWORD); |
| BOOL InternetGetLastResponseInfoW(PDWORD, LPWSTR, PDWORD); |
| INTERNET_STATUS_CALLBACK InternetSetStatusCallback(HINTERNET, |
| INTERNET_STATUS_CALLBACK); |
| DWORD FtpGetFileSize(HINTERNET, LPDWORD); |
| HINTERNET FtpFindFirstFileA(HINTERNET, LPCSTR, LPWIN32_FIND_DATAA, DWORD, |
| DWORD_PTR); |
| HINTERNET FtpFindFirstFileW(HINTERNET, LPCWSTR, LPWIN32_FIND_DATAW, DWORD, |
| DWORD_PTR); |
| BOOL FtpGetFileA(HINTERNET, LPCSTR, LPCSTR, BOOL, DWORD, DWORD, DWORD_PTR); |
| BOOL FtpGetFileW(HINTERNET, LPCWSTR, LPCWSTR, BOOL, DWORD, DWORD, DWORD_PTR); |
| BOOL FtpPutFileA(HINTERNET, LPCSTR, LPCSTR, DWORD, DWORD_PTR); |
| BOOL FtpPutFileW(HINTERNET, LPCWSTR, LPCWSTR, DWORD, DWORD_PTR); |
| BOOL FtpDeleteFileA(HINTERNET, LPCSTR); |
| BOOL FtpDeleteFileW(HINTERNET, LPCWSTR); |
| BOOL FtpRenameFileA(HINTERNET, LPCSTR, LPCSTR); |
| BOOL FtpRenameFileW(HINTERNET, LPCWSTR, LPCWSTR); |
| HINTERNET FtpOpenFileA(HINTERNET, LPCSTR, DWORD, DWORD, DWORD_PTR); |
| HINTERNET FtpOpenFileW(HINTERNET, LPCWSTR, DWORD, DWORD, DWORD_PTR); |
| BOOL FtpCreateDirectoryA(HINTERNET, LPCSTR); |
| BOOL FtpCreateDirectoryW(HINTERNET, LPCWSTR); |
| BOOL FtpRemoveDirectoryA(HINTERNET, LPCSTR); |
| BOOL FtpRemoveDirectoryW(HINTERNET, LPCWSTR); |
| BOOL FtpSetCurrentDirectoryA(HINTERNET, LPCSTR); |
| BOOL FtpSetCurrentDirectoryW(HINTERNET, LPCWSTR); |
| BOOL FtpGetCurrentDirectoryA(HINTERNET, LPSTR, PDWORD); |
| BOOL FtpGetCurrentDirectoryW(HINTERNET, LPWSTR, PDWORD); |
| BOOL FtpCommandA(HINTERNET, BOOL, DWORD, LPCSTR, DWORD_PTR, HINTERNET*); |
| BOOL FtpCommandW(HINTERNET, BOOL, DWORD, LPCWSTR, DWORD_PTR, HINTERNET*); |
| BOOL GopherCreateLocatorA(LPCSTR, INTERNET_PORT, LPCSTR, LPCSTR, DWORD, |
| LPSTR, PDWORD); |
| BOOL GopherCreateLocatorW(LPCWSTR, INTERNET_PORT, LPCWSTR, LPCWSTR, DWORD, |
| LPWSTR, PDWORD); |
| BOOL GopherGetLocatorTypeA(LPCSTR, PDWORD); |
| BOOL GopherGetLocatorTypeW(LPCWSTR, PDWORD); |
| HINTERNET GopherFindFirstFileA(HINTERNET, LPCSTR, LPCSTR, |
| LPGOPHER_FIND_DATAA, DWORD, DWORD_PTR); |
| HINTERNET GopherFindFirstFileW(HINTERNET, LPCWSTR, LPCWSTR, |
| LPGOPHER_FIND_DATAW, DWORD, DWORD_PTR); |
| HINTERNET GopherOpenFileA(HINTERNET, LPCSTR, LPCSTR, DWORD, DWORD_PTR); |
| HINTERNET GopherOpenFileW(HINTERNET, LPCWSTR, LPCWSTR, DWORD, DWORD_PTR); |
| BOOL GopherGetAttributeA(HINTERNET, LPCSTR, LPCSTR, LPBYTE, DWORD, |
| PDWORD, GOPHER_ATTRIBUTE_ENUMERATOR, DWORD_PTR); |
| BOOL GopherGetAttributeW(HINTERNET, LPCWSTR, LPCWSTR, LPBYTE, DWORD, |
| PDWORD, GOPHER_ATTRIBUTE_ENUMERATOR, DWORD_PTR); |
| HINTERNET HttpOpenRequestA(HINTERNET, LPCSTR, LPCSTR, LPCSTR, LPCSTR, |
| LPCSTR*, DWORD, DWORD_PTR); |
| HINTERNET HttpOpenRequestW(HINTERNET, LPCWSTR, LPCWSTR, LPCWSTR, LPCWSTR, |
| LPCWSTR*, DWORD, DWORD_PTR); |
| BOOL HttpAddRequestHeadersA(HINTERNET, LPCSTR, DWORD, DWORD); |
| BOOL HttpAddRequestHeadersW(HINTERNET, LPCWSTR, DWORD, DWORD); |
| BOOL HttpSendRequestA(HINTERNET, LPCSTR, DWORD, PVOID, DWORD); |
| BOOL HttpSendRequestW(HINTERNET, LPCWSTR, DWORD, PVOID, DWORD); |
| BOOL HttpQueryInfoA(HINTERNET, DWORD, PVOID, PDWORD, PDWORD); |
| BOOL HttpQueryInfoW(HINTERNET, DWORD, PVOID, PDWORD, PDWORD); |
| BOOL InternetSetCookieA(LPCSTR, LPCSTR, LPCSTR); |
| BOOL InternetSetCookieW(LPCWSTR, LPCWSTR, LPCWSTR); |
| BOOL InternetGetCookieA(LPCSTR, LPCSTR, LPSTR, PDWORD); |
| BOOL InternetGetCookieW(LPCWSTR, LPCWSTR, LPWSTR, PDWORD); |
| DWORD InternetAttemptConnect(DWORD); |
| DWORD InternetErrorDlg(HWND, HINTERNET, DWORD, DWORD, PVOID*); |
| DWORD InternetConfirmZoneCrossing(HWND, LPSTR, LPSTR, BOOL); |
| BOOL CreateUrlCacheEntryA(LPCSTR, DWORD, LPCSTR, LPSTR, DWORD); |
| BOOL CreateUrlCacheEntryW(LPCWSTR, DWORD, LPCWSTR, LPWSTR, DWORD); |
| BOOL CommitUrlCacheEntryA(LPCSTR, LPCSTR, FILETIME, FILETIME, DWORD, |
| LPBYTE, DWORD, LPCSTR, DWORD); |
| BOOL CommitUrlCacheEntryW(LPCWSTR, LPCWSTR, FILETIME, FILETIME, DWORD, |
| LPBYTE, DWORD, LPCWSTR, DWORD); |
| BOOL RetrieveUrlCacheEntryFileA(LPCSTR, LPINTERNET_CACHE_ENTRY_INFOA, |
| PDWORD, DWORD); |
| BOOL RetrieveUrlCacheEntryFileW(LPCWSTR, LPINTERNET_CACHE_ENTRY_INFOW, |
| PDWORD, DWORD); |
| BOOL UnlockUrlCacheEntryFile(LPCSTR, DWORD); |
| HANDLE RetrieveUrlCacheEntryStreamA(LPCSTR, LPINTERNET_CACHE_ENTRY_INFOA, |
| PDWORD, BOOL, DWORD); |
| HANDLE RetrieveUrlCacheEntryStreamW(LPCWSTR, LPINTERNET_CACHE_ENTRY_INFOW, |
| PDWORD, BOOL, DWORD); |
| BOOL ReadUrlCacheEntryStream(HANDLE, DWORD, PVOID, PDWORD, DWORD); |
| BOOL UnlockUrlCacheEntryStream(HANDLE, DWORD); |
| BOOL GetUrlCacheEntryInfoA(LPCSTR, LPINTERNET_CACHE_ENTRY_INFOA, PDWORD); |
| BOOL GetUrlCacheEntryInfoW(LPCWSTR, LPINTERNET_CACHE_ENTRY_INFOW, PDWORD); |
| BOOL SetUrlCacheEntryInfoA(LPCSTR, LPINTERNET_CACHE_ENTRY_INFOA, DWORD); |
| BOOL SetUrlCacheEntryInfoW(LPCWSTR, LPINTERNET_CACHE_ENTRY_INFOW, DWORD); |
| HANDLE FindFirstUrlCacheEntryA(LPCSTR, LPINTERNET_CACHE_ENTRY_INFOA, |
| PDWORD); |
| HANDLE FindFirstUrlCacheEntryW(LPCWSTR, LPINTERNET_CACHE_ENTRY_INFOW, |
| PDWORD); |
| BOOL FindNextUrlCacheEntryA(HANDLE, LPINTERNET_CACHE_ENTRY_INFOA, PDWORD); |
| BOOL FindNextUrlCacheEntryW(HANDLE, LPINTERNET_CACHE_ENTRY_INFOW, PDWORD); |
| BOOL FindCloseUrlCache(HANDLE); |
| BOOL DeleteUrlCacheEntry(LPCSTR); |
| DWORD AuthenticateUser(PVOID*, LPSTR, LPSTR, DWORD, LPSTR, DWORD, LPSTR, |
| LPSTR); |
| BOOL HttpSendRequestExA(HINTERNET, LPINTERNET_BUFFERSA, |
| LPINTERNET_BUFFERSA, DWORD, DWORD_PTR); |
| BOOL HttpSendRequestExW(HINTERNET, LPINTERNET_BUFFERSW, |
| LPINTERNET_BUFFERSW, DWORD, DWORD_PTR); |
| BOOL HttpEndRequestA(HINTERNET, LPINTERNET_BUFFERSA, DWORD, DWORD_PTR); |
| BOOL HttpEndRequestW(HINTERNET, LPINTERNET_BUFFERSW, DWORD, DWORD_PTR); |
| DWORD InternetDial(HWND, LPTSTR, DWORD, LPDWORD, DWORD); |
| DWORD InternetHangUp(DWORD_PTR, DWORD); |
| BOOL InternetGoOnline(LPTSTR, HWND, DWORD); |
| BOOL InternetAutodial(DWORD, DWORD); |
| BOOL InternetAutodialHangup(DWORD); |
| BOOL InternetGetConnectedState(LPDWORD, DWORD); |
| BOOL InternetSetDialState(LPCTSTR, DWORD, DWORD); |
| BOOL InternetReadFileExA(HINTERNET, LPINTERNET_BUFFERSA, DWORD, DWORD_PTR); |
| BOOL InternetReadFileExW(HINTERNET, LPINTERNET_BUFFERSW, DWORD, DWORD_PTR); |
| GROUPID CreateUrlCacheGroup(DWORD, LPVOID); |
| BOOL DeleteUrlCacheGroup(GROUPID, DWORD, LPVOID); |
| HANDLE FindFirstUrlCacheGroup(DWORD, DWORD, LPVOID, DWORD, GROUPID*, |
| LPVOID); |
| BOOL FindNextUrlCacheGroup(HANDLE, GROUPID*, LPVOID); |
| BOOL GetUrlCacheGroupAttributeA(GROUPID, DWORD, DWORD, |
| LPINTERNET_CACHE_GROUP_INFOA, LPDWORD, LPVOID); |
| BOOL GetUrlCacheGroupAttributeW(GROUPID, DWORD, DWORD, |
| LPINTERNET_CACHE_GROUP_INFOW, LPDWORD, LPVOID); |
| BOOL SetUrlCacheGroupAttributeA(GROUPID, DWORD, DWORD, |
| LPINTERNET_CACHE_GROUP_INFOA, LPVOID); |
| BOOL SetUrlCacheGroupAttributeW(GROUPID, DWORD, DWORD, |
| LPINTERNET_CACHE_GROUP_INFOW, LPVOID); |
| } |
| |
| version (Unicode) { |
| alias INTERNET_PER_CONN_OPTIONW INTERNET_PER_CONN_OPTION; |
| alias LPINTERNET_PER_CONN_OPTIONW LPINTERNET_PER_CONN_OPTION; |
| alias INTERNET_PER_CONN_OPTION_LISTW INTERNET_PER_CONN_OPTION_LIST; |
| alias LPINTERNET_PER_CONN_OPTION_LISTW LPINTERNET_PER_CONN_OPTION_LIST; |
| alias URL_COMPONENTSW URL_COMPONENTS; |
| alias LPURL_COMPONENTSW LPURL_COMPONENTS; |
| alias GOPHER_FIND_DATAW GOPHER_FIND_DATA; |
| alias LPGOPHER_FIND_DATAW LPGOPHER_FIND_DATA; |
| alias INTERNET_CACHE_ENTRY_INFOW INTERNET_CACHE_ENTRY_INFO; |
| alias LPINTERNET_CACHE_ENTRY_INFOW LPINTERNET_CACHE_ENTRY_INFO; |
| alias INTERNET_BUFFERSW INTERNET_BUFFERS; |
| alias INTERNET_CACHE_GROUP_INFOW INTERNET_CACHE_GROUP_INFO; |
| alias LPINTERNET_CACHE_GROUP_INFOW LPINTERNET_CACHE_GROUP_INFO; |
| alias InternetCrackUrlW InternetCrackUrl; |
| alias InternetCreateUrlW InternetCreateUrl; |
| alias InternetCanonicalizeUrlW InternetCanonicalizeUrl; |
| alias InternetCheckConnectionW InternetCheckConnection; |
| alias InternetCombineUrlW InternetCombineUrl; |
| alias InternetOpenW InternetOpen; |
| alias InternetConnectW InternetConnect; |
| alias InternetOpenUrlW InternetOpenUrl; |
| alias InternetFindNextFileW InternetFindNextFile; |
| alias InternetQueryOptionW InternetQueryOption; |
| alias InternetSetOptionW InternetSetOption; |
| alias InternetSetOptionExW InternetSetOptionEx; |
| alias InternetGetLastResponseInfoW InternetGetLastResponseInfo; |
| alias InternetReadFileExW InternetReadFileEx; |
| alias FtpFindFirstFileW FtpFindFirstFile; |
| alias FtpGetFileW FtpGetFile; |
| alias FtpPutFileW FtpPutFile; |
| alias FtpDeleteFileW FtpDeleteFile; |
| alias FtpRenameFileW FtpRenameFile; |
| alias FtpOpenFileW FtpOpenFile; |
| alias FtpCreateDirectoryW FtpCreateDirectory; |
| alias FtpRemoveDirectoryW FtpRemoveDirectory; |
| alias FtpSetCurrentDirectoryW FtpSetCurrentDirectory; |
| alias FtpGetCurrentDirectoryW FtpGetCurrentDirectory; |
| alias FtpCommandW FtpCommand; |
| alias GopherGetLocatorTypeW GopherGetLocatorType; |
| alias GopherCreateLocatorW GopherCreateLocator; |
| alias GopherFindFirstFileW GopherFindFirstFile; |
| alias GopherOpenFileW GopherOpenFile; |
| alias GopherGetAttributeW GopherGetAttribute; |
| alias HttpSendRequestW HttpSendRequest; |
| alias HttpOpenRequestW HttpOpenRequest; |
| alias HttpAddRequestHeadersW HttpAddRequestHeaders; |
| alias HttpQueryInfoW HttpQueryInfo; |
| alias InternetSetCookieW InternetSetCookie; |
| alias InternetGetCookieW InternetGetCookie; |
| alias CreateUrlCacheEntryW CreateUrlCacheEntry; |
| alias RetrieveUrlCacheEntryStreamW RetrieveUrlCacheEntryStream; |
| alias FindNextUrlCacheEntryW FindNextUrlCacheEntry; |
| alias CommitUrlCacheEntryW CommitUrlCacheEntry; |
| alias GetUrlCacheEntryInfoW GetUrlCacheEntryInfo; |
| alias SetUrlCacheEntryInfoW SetUrlCacheEntryInfo; |
| alias FindFirstUrlCacheEntryW FindFirstUrlCacheEntry; |
| alias RetrieveUrlCacheEntryFileW RetrieveUrlCacheEntryFile; |
| alias HttpSendRequestExW HttpSendRequestEx; |
| alias HttpEndRequestW HttpEndRequest; |
| alias GetUrlCacheGroupAttributeW GetUrlCacheGroupAttribute; |
| alias SetUrlCacheGroupAttributeW SetUrlCacheGroupAttribute; |
| } else { |
| alias INTERNET_PER_CONN_OPTIONA INTERNET_PER_CONN_OPTION; |
| alias LPINTERNET_PER_CONN_OPTIONA LPINTERNET_PER_CONN_OPTION; |
| alias INTERNET_PER_CONN_OPTION_LISTA INTERNET_PER_CONN_OPTION_LIST; |
| alias LPINTERNET_PER_CONN_OPTION_LISTA LPINTERNET_PER_CONN_OPTION_LIST; |
| alias URL_COMPONENTSA URL_COMPONENTS; |
| alias LPURL_COMPONENTSA LPURL_COMPONENTS; |
| alias GOPHER_FIND_DATAA GOPHER_FIND_DATA; |
| alias LPGOPHER_FIND_DATAA LPGOPHER_FIND_DATA; |
| alias INTERNET_CACHE_ENTRY_INFOA INTERNET_CACHE_ENTRY_INFO; |
| alias LPINTERNET_CACHE_ENTRY_INFOA LPINTERNET_CACHE_ENTRY_INFO; |
| alias INTERNET_BUFFERSA INTERNET_BUFFERS; |
| alias INTERNET_CACHE_GROUP_INFOA INTERNET_CACHE_GROUP_INFO; |
| alias LPINTERNET_CACHE_GROUP_INFOA LPINTERNET_CACHE_GROUP_INFO; |
| alias GopherGetAttributeA GopherGetAttribute; |
| alias InternetCrackUrlA InternetCrackUrl; |
| alias InternetCreateUrlA InternetCreateUrl; |
| alias InternetCanonicalizeUrlA InternetCanonicalizeUrl; |
| alias InternetCheckConnectionA InternetCheckConnection; |
| alias InternetCombineUrlA InternetCombineUrl; |
| alias InternetOpenA InternetOpen; |
| alias InternetConnectA InternetConnect; |
| alias InternetOpenUrlA InternetOpenUrl; |
| alias InternetFindNextFileA InternetFindNextFile; |
| alias InternetQueryOptionA InternetQueryOption; |
| alias InternetSetOptionA InternetSetOption; |
| alias InternetSetOptionExA InternetSetOptionEx; |
| alias InternetGetLastResponseInfoA InternetGetLastResponseInfo; |
| alias InternetReadFileExA InternetReadFileEx; |
| alias FtpFindFirstFileA FtpFindFirstFile; |
| alias FtpGetFileA FtpGetFile; |
| alias FtpPutFileA FtpPutFile; |
| alias FtpDeleteFileA FtpDeleteFile; |
| alias FtpRenameFileA FtpRenameFile; |
| alias FtpOpenFileA FtpOpenFile; |
| alias FtpCreateDirectoryA FtpCreateDirectory; |
| alias FtpRemoveDirectoryA FtpRemoveDirectory; |
| alias FtpSetCurrentDirectoryA FtpSetCurrentDirectory; |
| alias FtpGetCurrentDirectoryA FtpGetCurrentDirectory; |
| alias FtpCommandA FtpCommand; |
| alias GopherGetLocatorTypeA GopherGetLocatorType; |
| alias GopherCreateLocatorA GopherCreateLocator; |
| alias GopherFindFirstFileA GopherFindFirstFile; |
| alias GopherOpenFileA GopherOpenFile; |
| alias HttpSendRequestA HttpSendRequest; |
| alias HttpOpenRequestA HttpOpenRequest; |
| alias HttpAddRequestHeadersA HttpAddRequestHeaders; |
| alias HttpQueryInfoA HttpQueryInfo; |
| alias InternetSetCookieA InternetSetCookie; |
| alias InternetGetCookieA InternetGetCookie; |
| alias CreateUrlCacheEntryA CreateUrlCacheEntry; |
| alias RetrieveUrlCacheEntryStreamA RetrieveUrlCacheEntryStream; |
| alias FindNextUrlCacheEntryA FindNextUrlCacheEntry; |
| alias CommitUrlCacheEntryA CommitUrlCacheEntry; |
| alias GetUrlCacheEntryInfoA GetUrlCacheEntryInfo; |
| alias SetUrlCacheEntryInfoA SetUrlCacheEntryInfo; |
| alias FindFirstUrlCacheEntryA FindFirstUrlCacheEntry; |
| alias RetrieveUrlCacheEntryFileA RetrieveUrlCacheEntryFile; |
| alias HttpSendRequestExA HttpSendRequestEx; |
| alias HttpEndRequestA HttpEndRequest; |
| alias GetUrlCacheGroupAttributeA GetUrlCacheGroupAttribute; |
| alias SetUrlCacheGroupAttributeA SetUrlCacheGroupAttribute; |
| } |
| |
| alias INTERNET_BUFFERS* LPINTERNET_BUFFERS; |