Artifact f0c30efc42e2bee306e52764adfff56cf1ec9476:
- File
src/win32/wininet.d
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
The problem was __gshared. Replacing it with TLS fixed the issue. Remaining problem is that "hack.d"'s CloseHandle hack is not working anymore.
(user: kinaba) [annotate]
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
0000: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a /***************
0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0040: 2a 2a 2a 2a 2a 2a 2a 2a 5c 0d 0a 2a 20 20 20 20 ********\..*
0050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0060: 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 69 6e winin
0070: 65 74 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 et.d
0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0090: 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 20 *..*
00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
00b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
00c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
00d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0d *.
00e0: 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .*
00f0: 20 20 20 20 20 20 20 20 20 57 69 6e 64 6f 77 73 Windows
0100: 20 41 50 49 20 68 65 61 64 65 72 20 6d 6f 64 75 API header modu
0110: 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 le
0120: 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20 20 *..*
0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0170: 20 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 *..*
0180: 20 20 20 20 20 20 20 20 20 54 72 61 6e 73 6c 61 Transla
0190: 74 65 64 20 66 72 6f 6d 20 4d 69 6e 47 57 20 57 ted from MinGW W
01a0: 69 6e 64 6f 77 73 20 68 65 61 64 65 72 73 20 20 indows headers
01b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a *
01c0: 0d 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 ..*
01d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 79 by
01e0: 20 53 74 65 77 61 72 74 20 47 6f 72 64 6f 6e 20 Stewart Gordon
01f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0200: 20 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20 *..*
0210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0230: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0250: 20 20 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 *..*
0260: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0270: 50 6c 61 63 65 64 20 69 6e 74 6f 20 70 75 62 6c Placed into publ
0280: 69 63 20 64 6f 6d 61 69 6e 20 20 20 20 20 20 20 ic domain
0290: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
02a0: 2a 0d 0a 5c 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a *..\************
02b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
02c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
02d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
02e0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2f 0d 0a 6d 6f ***********/..mo
02f0: 64 75 6c 65 20 77 69 6e 33 32 2e 77 69 6e 69 6e dule win32.winin
0300: 65 74 3b 0d 0a 70 72 61 67 6d 61 28 6c 69 62 2c et;..pragma(lib,
0310: 20 22 77 69 6e 69 6e 65 74 22 29 3b 0d 0a 0d 0a "wininet");....
0320: 2f 2f 20 46 49 58 4d 45 3a 20 63 68 65 63 6b 20 // FIXME: check
0330: 74 79 70 65 73 20 61 6e 64 20 67 72 6f 75 70 69 types and groupi
0340: 6e 67 20 6f 66 20 63 6f 6e 73 74 61 6e 74 73 0d ng of constants.
0350: 0a 0d 0a 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e ...import win32.
0360: 77 69 6e 64 6f 77 73 3b 0d 0a 0d 0a 65 6e 75 6d windows;....enum
0370: 20 7b 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 49 4e {...INTERNET_IN
0380: 56 41 4c 49 44 5f 50 4f 52 54 5f 4e 55 4d 42 45 VALID_PORT_NUMBE
0390: 52 20 3d 20 20 20 20 30 2c 0d 0a 09 49 4e 54 45 R = 0,...INTE
03a0: 52 4e 45 54 5f 44 45 46 41 55 4c 54 5f 46 54 50 RNET_DEFAULT_FTP
03b0: 5f 50 4f 52 54 20 20 20 20 3d 20 20 20 32 31 2c _PORT = 21,
03c0: 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 44 45 46 41 ...INTERNET_DEFA
03d0: 55 4c 54 5f 47 4f 50 48 45 52 5f 50 4f 52 54 20 ULT_GOPHER_PORT
03e0: 3d 20 20 20 37 30 2c 0d 0a 09 49 4e 54 45 52 4e = 70,...INTERN
03f0: 45 54 5f 44 45 46 41 55 4c 54 5f 48 54 54 50 5f ET_DEFAULT_HTTP_
0400: 50 4f 52 54 20 20 20 3d 20 20 20 38 30 2c 0d 0a PORT = 80,..
0410: 09 49 4e 54 45 52 4e 45 54 5f 44 45 46 41 55 4c .INTERNET_DEFAUL
0420: 54 5f 48 54 54 50 53 5f 50 4f 52 54 20 20 3d 20 T_HTTPS_PORT =
0430: 20 34 34 33 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 443,...INTERNET
0440: 5f 44 45 46 41 55 4c 54 5f 53 4f 43 4b 53 5f 50 _DEFAULT_SOCKS_P
0450: 4f 52 54 20 20 3d 20 31 30 38 30 0d 0a 7d 0d 0a ORT = 1080..}..
0460: 0d 0a 63 6f 6e 73 74 20 73 69 7a 65 5f 74 0d 0a ..const size_t..
0470: 09 4d 41 58 5f 43 41 43 48 45 5f 45 4e 54 52 59 .MAX_CACHE_ENTRY
0480: 5f 49 4e 46 4f 5f 53 49 5a 45 20 20 20 20 20 20 _INFO_SIZE
0490: 20 3d 20 20 34 30 39 36 2c 0d 0a 09 49 4e 54 45 = 4096,...INTE
04a0: 52 4e 45 54 5f 4d 41 58 5f 48 4f 53 54 5f 4e 41 RNET_MAX_HOST_NA
04b0: 4d 45 5f 4c 45 4e 47 54 48 20 20 20 3d 20 20 20 ME_LENGTH =
04c0: 32 35 36 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 256,...INTERNET_
04d0: 4d 41 58 5f 55 53 45 52 5f 4e 41 4d 45 5f 4c 45 MAX_USER_NAME_LE
04e0: 4e 47 54 48 20 20 20 3d 20 20 20 31 32 38 2c 0d NGTH = 128,.
04f0: 0a 09 49 4e 54 45 52 4e 45 54 5f 4d 41 58 5f 50 ..INTERNET_MAX_P
0500: 41 53 53 57 4f 52 44 5f 4c 45 4e 47 54 48 20 20 ASSWORD_LENGTH
0510: 20 20 3d 20 20 20 31 32 38 2c 0d 0a 09 49 4e 54 = 128,...INT
0520: 45 52 4e 45 54 5f 4d 41 58 5f 50 4f 52 54 5f 4e ERNET_MAX_PORT_N
0530: 55 4d 42 45 52 5f 4c 45 4e 47 54 48 20 3d 20 20 UMBER_LENGTH =
0540: 20 20 20 35 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5,...INTERNET
0550: 5f 4d 41 58 5f 50 4f 52 54 5f 4e 55 4d 42 45 52 _MAX_PORT_NUMBER
0560: 5f 56 41 4c 55 45 20 20 3d 20 36 35 35 33 35 2c _VALUE = 65535,
0570: 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 4d 41 58 5f ...INTERNET_MAX_
0580: 50 41 54 48 5f 4c 45 4e 47 54 48 20 20 20 20 20 PATH_LENGTH
0590: 20 20 20 3d 20 20 32 30 34 38 2c 0d 0a 09 49 4e = 2048,...IN
05a0: 54 45 52 4e 45 54 5f 4d 41 58 5f 53 43 48 45 4d TERNET_MAX_SCHEM
05b0: 45 5f 4c 45 4e 47 54 48 20 20 20 20 20 20 3d 20 E_LENGTH =
05c0: 20 20 20 33 32 2c 0d 0a 09 49 4e 54 45 52 4e 45 32,...INTERNE
05d0: 54 5f 4d 41 58 5f 55 52 4c 5f 4c 45 4e 47 54 48 T_MAX_URL_LENGTH
05e0: 20 20 20 20 20 20 20 20 20 3d 20 49 4e 54 45 52 = INTER
05f0: 4e 45 54 5f 4d 41 58 5f 53 43 48 45 4d 45 5f 4c NET_MAX_SCHEME_L
0600: 45 4e 47 54 48 0d 0a 09 20 20 20 20 20 20 20 20 ENGTH...
0610: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0620: 20 20 20 20 20 20 20 20 20 20 2b 20 22 3a 2f 2f + "://
0630: 22 2e 6c 65 6e 67 74 68 0d 0a 09 20 20 20 20 20 ".length...
0640: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0650: 20 20 20 20 20 20 20 20 20 20 20 20 20 2b 20 49 + I
0660: 4e 54 45 52 4e 45 54 5f 4d 41 58 5f 50 41 54 48 NTERNET_MAX_PATH
0670: 5f 4c 45 4e 47 54 48 3b 0d 0a 0d 0a 65 6e 75 6d _LENGTH;....enum
0680: 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 49 4e 54 : DWORD {...INT
0690: 45 52 4e 45 54 5f 4b 45 45 50 5f 41 4c 49 56 45 ERNET_KEEP_ALIVE
06a0: 5f 55 4e 4b 4e 4f 57 4e 20 20 3d 20 44 57 4f 52 _UNKNOWN = DWOR
06b0: 44 2e 6d 61 78 2c 0d 0a 09 49 4e 54 45 52 4e 45 D.max,...INTERNE
06c0: 54 5f 4b 45 45 50 5f 41 4c 49 56 45 5f 44 49 53 T_KEEP_ALIVE_DIS
06d0: 41 42 4c 45 44 20 3d 20 30 2c 0d 0a 09 49 4e 54 ABLED = 0,...INT
06e0: 45 52 4e 45 54 5f 4b 45 45 50 5f 41 4c 49 56 45 ERNET_KEEP_ALIVE
06f0: 5f 45 4e 41 42 4c 45 44 0d 0a 7d 0d 0a 0d 0a 65 _ENABLED..}....e
0700: 6e 75 6d 20 7b 0d 0a 09 49 4e 54 45 52 4e 45 54 num {...INTERNET
0710: 5f 52 45 51 46 4c 41 47 5f 46 52 4f 4d 5f 43 41 _REQFLAG_FROM_CA
0720: 43 48 45 20 3d 20 31 2c 0d 0a 09 49 4e 54 45 52 CHE = 1,...INTER
0730: 4e 45 54 5f 52 45 51 46 4c 41 47 5f 41 53 59 4e NET_REQFLAG_ASYN
0740: 43 20 20 20 20 20 20 3d 20 32 0d 0a 7d 0d 0a 0d C = 2..}...
0750: 0a 63 6f 6e 73 74 20 44 57 4f 52 44 0d 0a 09 49 .const DWORD...I
0760: 4e 54 45 52 4e 45 54 5f 46 4c 41 47 5f 52 45 4c NTERNET_FLAG_REL
0770: 4f 41 44 20 20 20 20 20 20 20 20 20 20 20 20 20 OAD
0780: 20 20 20 20 20 20 3d 20 30 78 38 30 30 30 30 30 = 0x800000
0790: 30 30 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 46 00,...INTERNET_F
07a0: 4c 41 47 5f 52 41 57 5f 44 41 54 41 20 20 20 20 LAG_RAW_DATA
07b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 = 0
07c0: 78 34 30 30 30 30 30 30 30 2c 0d 0a 09 49 4e 54 x40000000,...INT
07d0: 45 52 4e 45 54 5f 46 4c 41 47 5f 45 58 49 53 54 ERNET_FLAG_EXIST
07e0: 49 4e 47 5f 43 4f 4e 4e 45 43 54 20 20 20 20 20 ING_CONNECT
07f0: 20 20 20 20 3d 20 30 78 32 30 30 30 30 30 30 30 = 0x20000000
0800: 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 46 4c 41 ,...INTERNET_FLA
0810: 47 5f 41 53 59 4e 43 20 20 20 20 20 20 20 20 20 G_ASYNC
0820: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 31 = 0x1
0830: 30 30 30 30 30 30 30 2c 0d 0a 09 49 4e 54 45 52 0000000,...INTER
0840: 4e 45 54 5f 46 4c 41 47 5f 50 41 53 53 49 56 45 NET_FLAG_PASSIVE
0850: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0860: 20 20 3d 20 30 78 30 38 30 30 30 30 30 30 2c 0d = 0x08000000,.
0870: 0a 09 49 4e 54 45 52 4e 45 54 5f 46 4c 41 47 5f ..INTERNET_FLAG_
0880: 4e 4f 5f 43 41 43 48 45 5f 57 52 49 54 45 20 20 NO_CACHE_WRITE
0890: 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 34 30 = 0x040
08a0: 30 30 30 30 30 2c 0d 0a 09 49 4e 54 45 52 4e 45 00000,...INTERNE
08b0: 54 5f 46 4c 41 47 5f 44 4f 4e 54 5f 43 41 43 48 T_FLAG_DONT_CACH
08c0: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 E
08d0: 3d 20 49 4e 54 45 52 4e 45 54 5f 46 4c 41 47 5f = INTERNET_FLAG_
08e0: 4e 4f 5f 43 41 43 48 45 5f 57 52 49 54 45 2c 0d NO_CACHE_WRITE,.
08f0: 0a 09 49 4e 54 45 52 4e 45 54 5f 46 4c 41 47 5f ..INTERNET_FLAG_
0900: 4d 41 4b 45 5f 50 45 52 53 49 53 54 45 4e 54 20 MAKE_PERSISTENT
0910: 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 32 30 = 0x020
0920: 30 30 30 30 30 2c 0d 0a 09 49 4e 54 45 52 4e 45 00000,...INTERNE
0930: 54 5f 46 4c 41 47 5f 4f 46 46 4c 49 4e 45 20 20 T_FLAG_OFFLINE
0940: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0950: 3d 20 30 78 30 31 30 30 30 30 30 30 2c 0d 0a 09 = 0x01000000,...
0960: 49 4e 54 45 52 4e 45 54 5f 46 4c 41 47 5f 53 45 INTERNET_FLAG_SE
0970: 43 55 52 45 20 20 20 20 20 20 20 20 20 20 20 20 CURE
0980: 20 20 20 20 20 20 20 3d 20 30 78 30 30 38 30 30 = 0x00800
0990: 30 30 30 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 000,...INTERNET_
09a0: 46 4c 41 47 5f 4b 45 45 50 5f 43 4f 4e 4e 45 43 FLAG_KEEP_CONNEC
09b0: 54 49 4f 4e 20 20 20 20 20 20 20 20 20 20 3d 20 TION =
09c0: 30 78 30 30 34 30 30 30 30 30 2c 0d 0a 09 49 4e 0x00400000,...IN
09d0: 54 45 52 4e 45 54 5f 46 4c 41 47 5f 4e 4f 5f 41 TERNET_FLAG_NO_A
09e0: 55 54 4f 5f 52 45 44 49 52 45 43 54 20 20 20 20 UTO_REDIRECT
09f0: 20 20 20 20 20 3d 20 30 78 30 30 32 30 30 30 30 = 0x0020000
0a00: 30 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 46 4c 0,...INTERNET_FL
0a10: 41 47 5f 52 45 41 44 5f 50 52 45 46 45 54 43 48 AG_READ_PREFETCH
0a20: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 = 0x
0a30: 30 30 31 30 30 30 30 30 2c 0d 0a 09 49 4e 54 45 00100000,...INTE
0a40: 52 4e 45 54 5f 46 4c 41 47 5f 4e 4f 5f 43 4f 4f RNET_FLAG_NO_COO
0a50: 4b 49 45 53 20 20 20 20 20 20 20 20 20 20 20 20 KIES
0a60: 20 20 20 3d 20 30 78 30 30 30 38 30 30 30 30 2c = 0x00080000,
0a70: 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 46 4c 41 47 ...INTERNET_FLAG
0a80: 5f 4e 4f 5f 41 55 54 48 20 20 20 20 20 20 20 20 _NO_AUTH
0a90: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 = 0x00
0aa0: 30 34 30 30 30 30 2c 0d 0a 09 49 4e 54 45 52 4e 040000,...INTERN
0ab0: 45 54 5f 46 4c 41 47 5f 49 47 4e 4f 52 45 5f 52 ET_FLAG_IGNORE_R
0ac0: 45 44 49 52 45 43 54 5f 54 4f 5f 48 54 54 50 20 EDIRECT_TO_HTTP
0ad0: 20 3d 20 30 78 30 30 30 30 38 30 30 30 2c 0d 0a = 0x00008000,..
0ae0: 09 49 4e 54 45 52 4e 45 54 5f 46 4c 41 47 5f 49 .INTERNET_FLAG_I
0af0: 47 4e 4f 52 45 5f 52 45 44 49 52 45 43 54 5f 54 GNORE_REDIRECT_T
0b00: 4f 5f 48 54 54 50 53 20 3d 20 30 78 30 30 30 30 O_HTTPS = 0x0000
0b10: 34 30 30 30 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 4000,...INTERNET
0b20: 5f 46 4c 41 47 5f 49 47 4e 4f 52 45 5f 43 45 52 _FLAG_IGNORE_CER
0b30: 54 5f 44 41 54 45 5f 49 4e 56 41 4c 49 44 20 3d T_DATE_INVALID =
0b40: 20 30 78 30 30 30 30 32 30 30 30 2c 0d 0a 09 49 0x00002000,...I
0b50: 4e 54 45 52 4e 45 54 5f 46 4c 41 47 5f 49 47 4e NTERNET_FLAG_IGN
0b60: 4f 52 45 5f 43 45 52 54 5f 43 4e 5f 49 4e 56 41 ORE_CERT_CN_INVA
0b70: 4c 49 44 20 20 20 3d 20 30 78 30 30 30 30 31 30 LID = 0x000010
0b80: 30 30 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 46 00,...INTERNET_F
0b90: 4c 41 47 5f 52 45 53 59 4e 43 48 52 4f 4e 49 5a LAG_RESYNCHRONIZ
0ba0: 45 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 E = 0
0bb0: 78 30 30 30 30 30 38 30 30 2c 0d 0a 09 49 4e 54 x00000800,...INT
0bc0: 45 52 4e 45 54 5f 46 4c 41 47 5f 48 59 50 45 52 ERNET_FLAG_HYPER
0bd0: 4c 49 4e 4b 20 20 20 20 20 20 20 20 20 20 20 20 LINK
0be0: 20 20 20 20 3d 20 30 78 30 30 30 30 30 34 30 30 = 0x00000400
0bf0: 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 46 4c 41 ,...INTERNET_FLA
0c00: 47 5f 4e 4f 5f 55 49 20 20 20 20 20 20 20 20 20 G_NO_UI
0c10: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 = 0x0
0c20: 30 30 30 30 32 30 30 2c 0d 0a 09 49 4e 54 45 52 0000200,...INTER
0c30: 4e 45 54 5f 46 4c 41 47 5f 50 52 41 47 4d 41 5f NET_FLAG_PRAGMA_
0c40: 4e 4f 43 41 43 48 45 20 20 20 20 20 20 20 20 20 NOCACHE
0c50: 20 20 3d 20 30 78 30 30 30 30 30 31 30 30 2c 0d = 0x00000100,.
0c60: 0a 09 49 4e 54 45 52 4e 45 54 5f 46 4c 41 47 5f ..INTERNET_FLAG_
0c70: 4d 55 53 54 5f 43 41 43 48 45 5f 52 45 51 55 45 MUST_CACHE_REQUE
0c80: 53 54 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 ST = 0x000
0c90: 30 30 30 31 30 2c 0d 0a 09 49 4e 54 45 52 4e 45 00010,...INTERNE
0ca0: 54 5f 46 4c 41 47 5f 54 52 41 4e 53 46 45 52 5f T_FLAG_TRANSFER_
0cb0: 41 53 43 49 49 20 20 20 20 20 20 20 20 20 20 20 ASCII
0cc0: 3d 20 46 54 50 5f 54 52 41 4e 53 46 45 52 5f 54 = FTP_TRANSFER_T
0cd0: 59 50 45 5f 41 53 43 49 49 2c 0d 0a 09 49 4e 54 YPE_ASCII,...INT
0ce0: 45 52 4e 45 54 5f 46 4c 41 47 5f 54 52 41 4e 53 ERNET_FLAG_TRANS
0cf0: 46 45 52 5f 42 49 4e 41 52 59 20 20 20 20 20 20 FER_BINARY
0d00: 20 20 20 20 3d 20 46 54 50 5f 54 52 41 4e 53 46 = FTP_TRANSF
0d10: 45 52 5f 54 59 50 45 5f 42 49 4e 41 52 59 2c 0d ER_TYPE_BINARY,.
0d20: 0a 0d 0a 09 53 45 43 55 52 49 54 59 5f 49 4e 54 ....SECURITY_INT
0d30: 45 52 4e 45 54 5f 4d 41 53 4b 20 20 20 20 20 20 ERNET_MASK
0d40: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 = 0x0
0d50: 30 30 30 46 30 30 30 2c 0d 0a 09 53 45 43 55 52 000F000,...SECUR
0d60: 49 54 59 5f 53 45 54 5f 4d 41 53 4b 20 20 20 20 ITY_SET_MASK
0d70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0d80: 20 20 3d 20 53 45 43 55 52 49 54 59 5f 49 4e 54 = SECURITY_INT
0d90: 45 52 4e 45 54 5f 4d 41 53 4b 2c 0d 0a 0d 0a 09 ERNET_MASK,.....
0da0: 49 4e 54 45 52 4e 45 54 5f 46 4c 41 47 53 5f 4d INTERNET_FLAGS_M
0db0: 41 53 4b 20 20 20 20 20 20 20 20 20 20 20 20 20 ASK
0dc0: 20 20 20 20 20 20 20 3d 20 30 78 46 46 46 43 46 = 0xFFFCF
0dd0: 45 31 33 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f E13,...INTERNET_
0de0: 4f 50 54 49 4f 4e 53 5f 4d 41 53 4b 20 20 20 20 OPTIONS_MASK
0df0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 =
0e00: 7e 49 4e 54 45 52 4e 45 54 5f 46 4c 41 47 53 5f ~INTERNET_FLAGS_
0e10: 4d 41 53 4b 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 49 MASK;....const I
0e20: 4e 54 45 52 4e 45 54 5f 4e 4f 5f 43 41 4c 4c 42 NTERNET_NO_CALLB
0e30: 41 43 4b 20 3d 20 30 3b 0d 0a 63 6f 6e 73 74 20 ACK = 0;..const
0e40: 49 4e 54 45 52 4e 45 54 5f 52 46 43 31 31 32 33 INTERNET_RFC1123
0e50: 5f 46 4f 52 4d 41 54 20 3d 20 30 3b 0d 0a 63 6f _FORMAT = 0;..co
0e60: 6e 73 74 20 73 69 7a 65 5f 74 20 49 4e 54 45 52 nst size_t INTER
0e70: 4e 45 54 5f 52 46 43 31 31 32 33 5f 42 55 46 53 NET_RFC1123_BUFS
0e80: 49 5a 45 20 3d 20 33 30 3b 0d 0a 0d 0a 63 6f 6e IZE = 30;....con
0e90: 73 74 20 44 57 4f 52 44 0d 0a 09 49 43 55 5f 45 st DWORD...ICU_E
0ea0: 53 43 41 50 45 20 20 20 20 20 20 20 20 20 20 20 SCAPE
0eb0: 20 20 3d 20 30 78 38 30 30 30 30 30 30 30 2c 0d = 0x80000000,.
0ec0: 0a 09 49 43 55 5f 55 53 45 52 4e 41 4d 45 20 20 ..ICU_USERNAME
0ed0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 34 30 30 = 0x400
0ee0: 30 30 30 30 30 2c 0d 0a 09 49 43 55 5f 4e 4f 5f 00000,...ICU_NO_
0ef0: 45 4e 43 4f 44 45 20 20 20 20 20 20 20 20 20 20 ENCODE
0f00: 3d 20 30 78 32 30 30 30 30 30 30 30 2c 0d 0a 09 = 0x20000000,...
0f10: 49 43 55 5f 44 45 43 4f 44 45 20 20 20 20 20 20 ICU_DECODE
0f20: 20 20 20 20 20 20 20 3d 20 30 78 31 30 30 30 30 = 0x10000
0f30: 30 30 30 2c 0d 0a 09 49 43 55 5f 4e 4f 5f 4d 45 000,...ICU_NO_ME
0f40: 54 41 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 TA =
0f50: 30 78 30 38 30 30 30 30 30 30 2c 0d 0a 09 49 43 0x08000000,...IC
0f60: 55 5f 45 4e 43 4f 44 45 5f 53 50 41 43 45 53 5f U_ENCODE_SPACES_
0f70: 4f 4e 4c 59 20 3d 20 30 78 30 34 30 30 30 30 30 ONLY = 0x0400000
0f80: 30 2c 0d 0a 09 49 43 55 5f 42 52 4f 57 53 45 52 0,...ICU_BROWSER
0f90: 5f 4d 4f 44 45 20 20 20 20 20 20 20 3d 20 30 78 _MODE = 0x
0fa0: 30 32 30 30 30 30 30 30 3b 0d 0a 0d 0a 65 6e 75 02000000;....enu
0fb0: 6d 20 7b 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 4f m {...INTERNET_O
0fc0: 50 45 4e 5f 54 59 50 45 5f 50 52 45 43 4f 4e 46 PEN_TYPE_PRECONF
0fd0: 49 47 20 3d 20 30 2c 0d 0a 09 49 4e 54 45 52 4e IG = 0,...INTERN
0fe0: 45 54 5f 4f 50 45 4e 5f 54 59 50 45 5f 44 49 52 ET_OPEN_TYPE_DIR
0ff0: 45 43 54 20 20 20 20 3d 20 31 2c 0d 0a 09 49 4e ECT = 1,...IN
1000: 54 45 52 4e 45 54 5f 4f 50 45 4e 5f 54 59 50 45 TERNET_OPEN_TYPE
1010: 5f 50 52 4f 58 59 20 20 20 20 20 3d 20 33 2c 0d _PROXY = 3,.
1020: 0a 09 50 52 45 5f 43 4f 4e 46 49 47 5f 49 4e 54 ..PRE_CONFIG_INT
1030: 45 52 4e 45 54 5f 41 43 43 45 53 53 20 20 20 3d ERNET_ACCESS =
1040: 20 49 4e 54 45 52 4e 45 54 5f 4f 50 45 4e 5f 54 INTERNET_OPEN_T
1050: 59 50 45 5f 50 52 45 43 4f 4e 46 49 47 2c 0d 0a YPE_PRECONFIG,..
1060: 09 4c 4f 43 41 4c 5f 49 4e 54 45 52 4e 45 54 5f .LOCAL_INTERNET_
1070: 41 43 43 45 53 53 20 20 20 20 20 20 20 20 3d 20 ACCESS =
1080: 49 4e 54 45 52 4e 45 54 5f 4f 50 45 4e 5f 54 59 INTERNET_OPEN_TY
1090: 50 45 5f 44 49 52 45 43 54 2c 0d 0a 09 47 41 54 PE_DIRECT,...GAT
10a0: 45 57 41 59 5f 49 4e 54 45 52 4e 45 54 5f 41 43 EWAY_INTERNET_AC
10b0: 43 45 53 53 20 20 20 20 20 20 3d 20 32 2c 0d 0a CESS = 2,..
10c0: 09 43 45 52 4e 5f 50 52 4f 58 59 5f 49 4e 54 45 .CERN_PROXY_INTE
10d0: 52 4e 45 54 5f 41 43 43 45 53 53 20 20 20 3d 20 RNET_ACCESS =
10e0: 49 4e 54 45 52 4e 45 54 5f 4f 50 45 4e 5f 54 59 INTERNET_OPEN_TY
10f0: 50 45 5f 50 52 4f 58 59 2c 0d 0a 7d 0d 0a 0d 0a PE_PROXY,..}....
1100: 63 6f 6e 73 74 20 49 53 4f 5f 47 4c 4f 42 41 4c const ISO_GLOBAL
1110: 20 20 20 20 20 20 3d 20 31 3b 0d 0a 63 6f 6e 73 = 1;..cons
1120: 74 20 49 53 4f 5f 52 45 47 49 53 54 52 59 20 20 t ISO_REGISTRY
1130: 20 20 3d 20 32 3b 0d 0a 63 6f 6e 73 74 20 49 53 = 2;..const IS
1140: 4f 5f 56 41 4c 49 44 5f 46 4c 41 47 53 20 3d 20 O_VALID_FLAGS =
1150: 49 53 4f 5f 47 4c 4f 42 41 4c 20 7c 20 49 53 4f ISO_GLOBAL | ISO
1160: 5f 52 45 47 49 53 54 52 59 3b 0d 0a 0d 0a 65 6e _REGISTRY;....en
1170: 75 6d 20 7b 0d 0a 09 49 4e 54 45 52 4e 45 54 5f um {...INTERNET_
1180: 4f 50 54 49 4f 4e 5f 43 41 4c 4c 42 41 43 4b 20 OPTION_CALLBACK
1190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
11a0: 20 20 20 3d 20 20 31 2c 0d 0a 09 49 4e 54 45 52 = 1,...INTER
11b0: 4e 45 54 5f 4f 50 54 49 4f 4e 5f 43 4f 4e 4e 45 NET_OPTION_CONNE
11c0: 43 54 5f 54 49 4d 45 4f 55 54 2c 0d 0a 09 49 4e CT_TIMEOUT,...IN
11d0: 54 45 52 4e 45 54 5f 4f 50 54 49 4f 4e 5f 43 4f TERNET_OPTION_CO
11e0: 4e 4e 45 43 54 5f 52 45 54 52 49 45 53 2c 0d 0a NNECT_RETRIES,..
11f0: 09 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f 4e .INTERNET_OPTION
1200: 5f 43 4f 4e 4e 45 43 54 5f 42 41 43 4b 4f 46 46 _CONNECT_BACKOFF
1210: 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 4f 50 54 ,...INTERNET_OPT
1220: 49 4f 4e 5f 53 45 4e 44 5f 54 49 4d 45 4f 55 54 ION_SEND_TIMEOUT
1230: 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 4f 50 54 ,...INTERNET_OPT
1240: 49 4f 4e 5f 43 4f 4e 54 52 4f 4c 5f 53 45 4e 44 ION_CONTROL_SEND
1250: 5f 54 49 4d 45 4f 55 54 20 20 20 20 20 20 20 20 _TIMEOUT
1260: 3d 20 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f = INTERNET_OPTIO
1270: 4e 5f 53 45 4e 44 5f 54 49 4d 45 4f 55 54 2c 0d N_SEND_TIMEOUT,.
1280: 0a 09 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f ..INTERNET_OPTIO
1290: 4e 5f 52 45 43 45 49 56 45 5f 54 49 4d 45 4f 55 N_RECEIVE_TIMEOU
12a0: 54 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 4f 50 T,...INTERNET_OP
12b0: 54 49 4f 4e 5f 43 4f 4e 54 52 4f 4c 5f 52 45 43 TION_CONTROL_REC
12c0: 45 49 56 45 5f 54 49 4d 45 4f 55 54 20 20 3d 20 EIVE_TIMEOUT =
12d0: 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f 4e 5f INTERNET_OPTION_
12e0: 52 45 43 45 49 56 45 5f 54 49 4d 45 4f 55 54 2c RECEIVE_TIMEOUT,
12f0: 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 ...INTERNET_OPTI
1300: 4f 4e 5f 44 41 54 41 5f 53 45 4e 44 5f 54 49 4d ON_DATA_SEND_TIM
1310: 45 4f 55 54 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 EOUT,...INTERNET
1320: 5f 4f 50 54 49 4f 4e 5f 44 41 54 41 5f 52 45 43 _OPTION_DATA_REC
1330: 45 49 56 45 5f 54 49 4d 45 4f 55 54 2c 0d 0a 09 EIVE_TIMEOUT,...
1340: 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f 4e 5f INTERNET_OPTION_
1350: 48 41 4e 44 4c 45 5f 54 59 50 45 2c 0d 0a 09 49 HANDLE_TYPE,...I
1360: 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f 4e 5f 43 NTERNET_OPTION_C
1370: 4f 4e 54 45 58 54 5f 56 41 4c 55 45 2c 0d 0a 09 ONTEXT_VALUE,...
1380: 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f 4e 5f INTERNET_OPTION_
1390: 4c 49 53 54 45 4e 5f 54 49 4d 45 4f 55 54 2c 0d LISTEN_TIMEOUT,.
13a0: 0a 09 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f ..INTERNET_OPTIO
13b0: 4e 5f 52 45 41 44 5f 42 55 46 46 45 52 5f 53 49 N_READ_BUFFER_SI
13c0: 5a 45 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 4f ZE,...INTERNET_O
13d0: 50 54 49 4f 4e 5f 57 52 49 54 45 5f 42 55 46 46 PTION_WRITE_BUFF
13e0: 45 52 5f 53 49 5a 45 2c 20 20 20 20 20 20 20 2f ER_SIZE, /
13f0: 2f 20 3d 20 31 33 0d 0a 09 49 4e 54 45 52 4e 45 / = 13...INTERNE
1400: 54 5f 4f 50 54 49 4f 4e 5f 41 53 59 4e 43 5f 49 T_OPTION_ASYNC_I
1410: 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 D
1420: 20 20 20 20 20 3d 20 31 35 2c 0d 0a 09 49 4e 54 = 15,...INT
1430: 45 52 4e 45 54 5f 4f 50 54 49 4f 4e 5f 41 53 59 ERNET_OPTION_ASY
1440: 4e 43 5f 50 52 49 4f 52 49 54 59 2c 20 20 20 20 NC_PRIORITY,
1450: 20 20 20 20 20 20 2f 2f 20 3d 20 31 36 0d 0a 09 // = 16...
1460: 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f 4e 5f INTERNET_OPTION_
1470: 50 41 52 45 4e 54 5f 48 41 4e 44 4c 45 20 20 20 PARENT_HANDLE
1480: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 32 31 = 21
1490: 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 4f 50 54 ,...INTERNET_OPT
14a0: 49 4f 4e 5f 4b 45 45 50 5f 43 4f 4e 4e 45 43 54 ION_KEEP_CONNECT
14b0: 49 4f 4e 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f ION,...INTERNET_
14c0: 4f 50 54 49 4f 4e 5f 52 45 51 55 45 53 54 5f 46 OPTION_REQUEST_F
14d0: 4c 41 47 53 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 LAGS,...INTERNET
14e0: 5f 4f 50 54 49 4f 4e 5f 45 58 54 45 4e 44 45 44 _OPTION_EXTENDED
14f0: 5f 45 52 52 4f 52 2c 20 20 20 20 20 20 20 20 20 _ERROR,
1500: 20 2f 2f 20 3d 20 32 34 0d 0a 09 49 4e 54 45 52 // = 24...INTER
1510: 4e 45 54 5f 4f 50 54 49 4f 4e 5f 4f 46 46 4c 49 NET_OPTION_OFFLI
1520: 4e 45 5f 4d 4f 44 45 20 20 20 20 20 20 20 20 20 NE_MODE
1530: 20 20 20 20 20 20 20 3d 20 32 36 2c 0d 0a 09 49 = 26,...I
1540: 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f 4e 5f 43 NTERNET_OPTION_C
1550: 41 43 48 45 5f 53 54 52 45 41 4d 5f 48 41 4e 44 ACHE_STREAM_HAND
1560: 4c 45 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 4f LE,...INTERNET_O
1570: 50 54 49 4f 4e 5f 55 53 45 52 4e 41 4d 45 2c 0d PTION_USERNAME,.
1580: 0a 09 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f ..INTERNET_OPTIO
1590: 4e 5f 50 41 53 53 57 4f 52 44 2c 0d 0a 09 49 4e N_PASSWORD,...IN
15a0: 54 45 52 4e 45 54 5f 4f 50 54 49 4f 4e 5f 41 53 TERNET_OPTION_AS
15b0: 59 4e 43 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f YNC,...INTERNET_
15c0: 4f 50 54 49 4f 4e 5f 53 45 43 55 52 49 54 59 5f OPTION_SECURITY_
15d0: 46 4c 41 47 53 2c 0d 0a 09 49 4e 54 45 52 4e 45 FLAGS,...INTERNE
15e0: 54 5f 4f 50 54 49 4f 4e 5f 53 45 43 55 52 49 54 T_OPTION_SECURIT
15f0: 59 5f 43 45 52 54 49 46 49 43 41 54 45 5f 53 54 Y_CERTIFICATE_ST
1600: 52 55 43 54 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 RUCT,...INTERNET
1610: 5f 4f 50 54 49 4f 4e 5f 44 41 54 41 46 49 4c 45 _OPTION_DATAFILE
1620: 5f 4e 41 4d 45 2c 0d 0a 09 49 4e 54 45 52 4e 45 _NAME,...INTERNE
1630: 54 5f 4f 50 54 49 4f 4e 5f 55 52 4c 2c 0d 0a 09 T_OPTION_URL,...
1640: 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f 4e 5f INTERNET_OPTION_
1650: 53 45 43 55 52 49 54 59 5f 43 45 52 54 49 46 49 SECURITY_CERTIFI
1660: 43 41 54 45 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 CATE,...INTERNET
1670: 5f 4f 50 54 49 4f 4e 5f 53 45 43 55 52 49 54 59 _OPTION_SECURITY
1680: 5f 4b 45 59 5f 42 49 54 4e 45 53 53 2c 0d 0a 09 _KEY_BITNESS,...
1690: 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f 4e 5f INTERNET_OPTION_
16a0: 52 45 46 52 45 53 48 2c 0d 0a 09 49 4e 54 45 52 REFRESH,...INTER
16b0: 4e 45 54 5f 4f 50 54 49 4f 4e 5f 50 52 4f 58 59 NET_OPTION_PROXY
16c0: 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 4f 50 54 ,...INTERNET_OPT
16d0: 49 4f 4e 5f 53 45 54 54 49 4e 47 53 5f 43 48 41 ION_SETTINGS_CHA
16e0: 4e 47 45 44 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 NGED,...INTERNET
16f0: 5f 4f 50 54 49 4f 4e 5f 56 45 52 53 49 4f 4e 2c _OPTION_VERSION,
1700: 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 ...INTERNET_OPTI
1710: 4f 4e 5f 55 53 45 52 5f 41 47 45 4e 54 2c 0d 0a ON_USER_AGENT,..
1720: 09 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f 4e .INTERNET_OPTION
1730: 5f 45 4e 44 5f 42 52 4f 57 53 45 52 5f 53 45 53 _END_BROWSER_SES
1740: 53 49 4f 4e 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 SION,...INTERNET
1750: 5f 4f 50 54 49 4f 4e 5f 50 52 4f 58 59 5f 55 53 _OPTION_PROXY_US
1760: 45 52 4e 41 4d 45 2c 0d 0a 09 49 4e 54 45 52 4e ERNAME,...INTERN
1770: 45 54 5f 4f 50 54 49 4f 4e 5f 50 52 4f 58 59 5f ET_OPTION_PROXY_
1780: 50 41 53 53 57 4f 52 44 2c 20 20 20 20 20 20 20 PASSWORD,
1790: 20 20 20 2f 2f 20 3d 20 34 34 0d 0a 09 49 4e 54 // = 44...INT
17a0: 45 52 4e 45 54 5f 46 49 52 53 54 5f 4f 50 54 49 ERNET_FIRST_OPTI
17b0: 4f 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ON
17c0: 20 20 20 20 20 20 20 20 20 3d 20 49 4e 54 45 52 = INTER
17d0: 4e 45 54 5f 4f 50 54 49 4f 4e 5f 43 41 4c 4c 42 NET_OPTION_CALLB
17e0: 41 43 4b 2c 0d 0a 09 2f 2f 20 77 68 79 3f 0d 0a ACK,...// why?..
17f0: 09 49 4e 54 45 52 4e 45 54 5f 4c 41 53 54 5f 4f .INTERNET_LAST_O
1800: 50 54 49 4f 4e 20 20 20 20 20 20 20 20 20 20 20 PTION
1810: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 49 = I
1820: 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f 4e 5f 55 NTERNET_OPTION_U
1830: 53 45 52 5f 41 47 45 4e 54 0d 0a 7d 0d 0a 0d 0a SER_AGENT..}....
1840: 63 6f 6e 73 74 20 49 4e 54 45 52 4e 45 54 5f 50 const INTERNET_P
1850: 52 49 4f 52 49 54 59 5f 46 4f 52 45 47 52 4f 55 RIORITY_FOREGROU
1860: 4e 44 20 3d 20 31 30 30 30 3b 0d 0a 0d 0a 65 6e ND = 1000;....en
1870: 75 6d 20 7b 0d 0a 09 49 4e 54 45 52 4e 45 54 5f um {...INTERNET_
1880: 48 41 4e 44 4c 45 5f 54 59 50 45 5f 49 4e 54 45 HANDLE_TYPE_INTE
1890: 52 4e 45 54 20 3d 20 31 2c 0d 0a 09 49 4e 54 45 RNET = 1,...INTE
18a0: 52 4e 45 54 5f 48 41 4e 44 4c 45 5f 54 59 50 45 RNET_HANDLE_TYPE
18b0: 5f 43 4f 4e 4e 45 43 54 5f 46 54 50 2c 0d 0a 09 _CONNECT_FTP,...
18c0: 49 4e 54 45 52 4e 45 54 5f 48 41 4e 44 4c 45 5f INTERNET_HANDLE_
18d0: 54 59 50 45 5f 43 4f 4e 4e 45 43 54 5f 47 4f 50 TYPE_CONNECT_GOP
18e0: 48 45 52 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f HER,...INTERNET_
18f0: 48 41 4e 44 4c 45 5f 54 59 50 45 5f 43 4f 4e 4e HANDLE_TYPE_CONN
1900: 45 43 54 5f 48 54 54 50 2c 0d 0a 09 49 4e 54 45 ECT_HTTP,...INTE
1910: 52 4e 45 54 5f 48 41 4e 44 4c 45 5f 54 59 50 45 RNET_HANDLE_TYPE
1920: 5f 46 54 50 5f 46 49 4e 44 2c 0d 0a 09 49 4e 54 _FTP_FIND,...INT
1930: 45 52 4e 45 54 5f 48 41 4e 44 4c 45 5f 54 59 50 ERNET_HANDLE_TYP
1940: 45 5f 46 54 50 5f 46 49 4e 44 5f 48 54 4d 4c 2c E_FTP_FIND_HTML,
1950: 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 48 41 4e 44 ...INTERNET_HAND
1960: 4c 45 5f 54 59 50 45 5f 46 54 50 5f 46 49 4c 45 LE_TYPE_FTP_FILE
1970: 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 48 41 4e ,...INTERNET_HAN
1980: 44 4c 45 5f 54 59 50 45 5f 46 54 50 5f 46 49 4c DLE_TYPE_FTP_FIL
1990: 45 5f 48 54 4d 4c 2c 0d 0a 09 49 4e 54 45 52 4e E_HTML,...INTERN
19a0: 45 54 5f 48 41 4e 44 4c 45 5f 54 59 50 45 5f 47 ET_HANDLE_TYPE_G
19b0: 4f 50 48 45 52 5f 46 49 4e 44 2c 0d 0a 09 49 4e OPHER_FIND,...IN
19c0: 54 45 52 4e 45 54 5f 48 41 4e 44 4c 45 5f 54 59 TERNET_HANDLE_TY
19d0: 50 45 5f 47 4f 50 48 45 52 5f 46 49 4e 44 5f 48 PE_GOPHER_FIND_H
19e0: 54 4d 4c 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f TML,...INTERNET_
19f0: 48 41 4e 44 4c 45 5f 54 59 50 45 5f 47 4f 50 48 HANDLE_TYPE_GOPH
1a00: 45 52 5f 46 49 4c 45 2c 0d 0a 09 49 4e 54 45 52 ER_FILE,...INTER
1a10: 4e 45 54 5f 48 41 4e 44 4c 45 5f 54 59 50 45 5f NET_HANDLE_TYPE_
1a20: 47 4f 50 48 45 52 5f 46 49 4c 45 5f 48 54 4d 4c GOPHER_FILE_HTML
1a30: 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 48 41 4e ,...INTERNET_HAN
1a40: 44 4c 45 5f 54 59 50 45 5f 48 54 54 50 5f 52 45 DLE_TYPE_HTTP_RE
1a50: 51 55 45 53 54 0d 0a 7d 0d 0a 0d 0a 63 6f 6e 73 QUEST..}....cons
1a60: 74 20 44 57 4f 52 44 0d 0a 09 53 45 43 55 52 49 t DWORD...SECURI
1a70: 54 59 5f 46 4c 41 47 5f 53 45 43 55 52 45 20 20 TY_FLAG_SECURE
1a80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a90: 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c 0d 0a = 0x00000001,..
1aa0: 09 53 45 43 55 52 49 54 59 5f 46 4c 41 47 5f 53 .SECURITY_FLAG_S
1ab0: 53 4c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 SL
1ac0: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 = 0x0000
1ad0: 30 30 30 32 2c 0d 0a 09 53 45 43 55 52 49 54 59 0002,...SECURITY
1ae0: 5f 46 4c 41 47 5f 53 53 4c 33 20 20 20 20 20 20 _FLAG_SSL3
1af0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d =
1b00: 20 30 78 30 30 30 30 30 30 30 34 2c 0d 0a 09 53 0x00000004,...S
1b10: 45 43 55 52 49 54 59 5f 46 4c 41 47 5f 50 43 54 ECURITY_FLAG_PCT
1b20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b30: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
1b40: 30 38 2c 0d 0a 09 53 45 43 55 52 49 54 59 5f 46 08,...SECURITY_F
1b50: 4c 41 47 5f 50 43 54 34 20 20 20 20 20 20 20 20 LAG_PCT4
1b60: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 = 0
1b70: 78 30 30 30 30 30 30 31 30 2c 0d 0a 09 53 45 43 x00000010,...SEC
1b80: 55 52 49 54 59 5f 46 4c 41 47 5f 49 45 54 46 53 URITY_FLAG_IETFS
1b90: 53 4c 34 20 20 20 20 20 20 20 20 20 20 20 20 20 SL4
1ba0: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 32 30 = 0x00000020
1bb0: 2c 0d 0a 09 53 45 43 55 52 49 54 59 5f 46 4c 41 ,...SECURITY_FLA
1bc0: 47 5f 49 47 4e 4f 52 45 5f 52 45 56 4f 43 41 54 G_IGNORE_REVOCAT
1bd0: 49 4f 4e 20 20 20 20 20 20 20 20 3d 20 30 78 30 ION = 0x0
1be0: 30 30 30 30 30 38 30 2c 0d 0a 09 53 45 43 55 52 0000080,...SECUR
1bf0: 49 54 59 5f 46 4c 41 47 5f 49 47 4e 4f 52 45 5f ITY_FLAG_IGNORE_
1c00: 55 4e 4b 4e 4f 57 4e 5f 43 41 20 20 20 20 20 20 UNKNOWN_CA
1c10: 20 20 3d 20 30 78 30 30 30 30 30 31 30 30 2c 0d = 0x00000100,.
1c20: 0a 09 53 45 43 55 52 49 54 59 5f 46 4c 41 47 5f ..SECURITY_FLAG_
1c30: 49 47 4e 4f 52 45 5f 57 52 4f 4e 47 5f 55 53 41 IGNORE_WRONG_USA
1c40: 47 45 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 GE = 0x000
1c50: 30 30 32 30 30 2c 0d 0a 09 53 45 43 55 52 49 54 00200,...SECURIT
1c60: 59 5f 46 4c 41 47 5f 34 30 42 49 54 20 20 20 20 Y_FLAG_40BIT
1c70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c80: 3d 20 30 78 31 30 30 30 30 30 30 30 2c 0d 0a 09 = 0x10000000,...
1c90: 53 45 43 55 52 49 54 59 5f 46 4c 41 47 5f 31 32 SECURITY_FLAG_12
1ca0: 38 42 49 54 20 20 20 20 20 20 20 20 20 20 20 20 8BIT
1cb0: 20 20 20 20 20 20 20 3d 20 30 78 32 30 30 30 30 = 0x20000
1cc0: 30 30 30 2c 0d 0a 09 53 45 43 55 52 49 54 59 5f 000,...SECURITY_
1cd0: 46 4c 41 47 5f 35 36 42 49 54 20 20 20 20 20 20 FLAG_56BIT
1ce0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 =
1cf0: 30 78 34 30 30 30 30 30 30 30 2c 0d 0a 09 53 45 0x40000000,...SE
1d00: 43 55 52 49 54 59 5f 46 4c 41 47 5f 55 4e 4b 4e CURITY_FLAG_UNKN
1d10: 4f 57 4e 42 49 54 20 20 20 20 20 20 20 20 20 20 OWNBIT
1d20: 20 20 20 20 20 3d 20 30 78 38 30 30 30 30 30 30 = 0x8000000
1d30: 30 2c 0d 0a 09 53 45 43 55 52 49 54 59 5f 46 4c 0,...SECURITY_FL
1d40: 41 47 5f 4e 4f 52 4d 41 4c 42 49 54 4e 45 53 53 AG_NORMALBITNESS
1d50: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 53 45 = SE
1d60: 43 55 52 49 54 59 5f 46 4c 41 47 5f 34 30 42 49 CURITY_FLAG_40BI
1d70: 54 2c 0d 0a 09 53 45 43 55 52 49 54 59 5f 46 4c T,...SECURITY_FL
1d80: 41 47 5f 49 47 4e 4f 52 45 5f 43 45 52 54 5f 43 AG_IGNORE_CERT_C
1d90: 4e 5f 49 4e 56 41 4c 49 44 20 20 20 3d 20 49 4e N_INVALID = IN
1da0: 54 45 52 4e 45 54 5f 46 4c 41 47 5f 49 47 4e 4f TERNET_FLAG_IGNO
1db0: 52 45 5f 43 45 52 54 5f 43 4e 5f 49 4e 56 41 4c RE_CERT_CN_INVAL
1dc0: 49 44 2c 0d 0a 09 53 45 43 55 52 49 54 59 5f 46 ID,...SECURITY_F
1dd0: 4c 41 47 5f 49 47 4e 4f 52 45 5f 43 45 52 54 5f LAG_IGNORE_CERT_
1de0: 44 41 54 45 5f 49 4e 56 41 4c 49 44 20 3d 20 49 DATE_INVALID = I
1df0: 4e 54 45 52 4e 45 54 5f 46 4c 41 47 5f 49 47 4e NTERNET_FLAG_IGN
1e00: 4f 52 45 5f 43 45 52 54 5f 44 41 54 45 5f 49 4e ORE_CERT_DATE_IN
1e10: 56 41 4c 49 44 2c 0d 0a 09 53 45 43 55 52 49 54 VALID,...SECURIT
1e20: 59 5f 46 4c 41 47 5f 49 47 4e 4f 52 45 5f 52 45 Y_FLAG_IGNORE_RE
1e30: 44 49 52 45 43 54 5f 54 4f 5f 48 54 54 50 53 20 DIRECT_TO_HTTPS
1e40: 3d 20 49 4e 54 45 52 4e 45 54 5f 46 4c 41 47 5f = INTERNET_FLAG_
1e50: 49 47 4e 4f 52 45 5f 52 45 44 49 52 45 43 54 5f IGNORE_REDIRECT_
1e60: 54 4f 5f 48 54 54 50 53 2c 0d 0a 09 53 45 43 55 TO_HTTPS,...SECU
1e70: 52 49 54 59 5f 46 4c 41 47 5f 49 47 4e 4f 52 45 RITY_FLAG_IGNORE
1e80: 5f 52 45 44 49 52 45 43 54 5f 54 4f 5f 48 54 54 _REDIRECT_TO_HTT
1e90: 50 20 20 3d 20 49 4e 54 45 52 4e 45 54 5f 46 4c P = INTERNET_FL
1ea0: 41 47 5f 49 47 4e 4f 52 45 5f 52 45 44 49 52 45 AG_IGNORE_REDIRE
1eb0: 43 54 5f 54 4f 5f 48 54 54 50 3b 0d 0a 0d 0a 65 CT_TO_HTTP;....e
1ec0: 6e 75 6d 20 7b 0d 0a 09 49 4e 54 45 52 4e 45 54 num {...INTERNET
1ed0: 5f 53 45 52 56 49 43 45 5f 46 54 50 20 3d 20 31 _SERVICE_FTP = 1
1ee0: 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 53 45 52 ,...INTERNET_SER
1ef0: 56 49 43 45 5f 47 4f 50 48 45 52 2c 0d 0a 09 49 VICE_GOPHER,...I
1f00: 4e 54 45 52 4e 45 54 5f 53 45 52 56 49 43 45 5f NTERNET_SERVICE_
1f10: 48 54 54 50 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 HTTP..}....enum
1f20: 7b 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 53 54 41 {...INTERNET_STA
1f30: 54 55 53 5f 52 45 53 4f 4c 56 49 4e 47 5f 4e 41 TUS_RESOLVING_NA
1f40: 4d 45 20 20 20 20 20 20 20 20 3d 20 20 31 30 2c ME = 10,
1f50: 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 53 54 41 54 ...INTERNET_STAT
1f60: 55 53 5f 4e 41 4d 45 5f 52 45 53 4f 4c 56 45 44 US_NAME_RESOLVED
1f70: 20 20 20 20 20 20 20 20 20 3d 20 20 31 31 2c 0d = 11,.
1f80: 0a 09 49 4e 54 45 52 4e 45 54 5f 53 54 41 54 55 ..INTERNET_STATU
1f90: 53 5f 43 4f 4e 4e 45 43 54 49 4e 47 5f 54 4f 5f S_CONNECTING_TO_
1fa0: 53 45 52 56 45 52 20 20 3d 20 20 32 30 2c 0d 0a SERVER = 20,..
1fb0: 09 49 4e 54 45 52 4e 45 54 5f 53 54 41 54 55 53 .INTERNET_STATUS
1fc0: 5f 43 4f 4e 4e 45 43 54 45 44 5f 54 4f 5f 53 45 _CONNECTED_TO_SE
1fd0: 52 56 45 52 20 20 20 3d 20 20 32 31 2c 0d 0a 09 RVER = 21,...
1fe0: 49 4e 54 45 52 4e 45 54 5f 53 54 41 54 55 53 5f INTERNET_STATUS_
1ff0: 53 45 4e 44 49 4e 47 5f 52 45 51 55 45 53 54 20 SENDING_REQUEST
2000: 20 20 20 20 20 20 3d 20 20 33 30 2c 0d 0a 09 49 = 30,...I
2010: 4e 54 45 52 4e 45 54 5f 53 54 41 54 55 53 5f 52 NTERNET_STATUS_R
2020: 45 51 55 45 53 54 5f 53 45 4e 54 20 20 20 20 20 EQUEST_SENT
2030: 20 20 20 20 20 3d 20 20 33 31 2c 0d 0a 09 49 4e = 31,...IN
2040: 54 45 52 4e 45 54 5f 53 54 41 54 55 53 5f 52 45 TERNET_STATUS_RE
2050: 43 45 49 56 49 4e 47 5f 52 45 53 50 4f 4e 53 45 CEIVING_RESPONSE
2060: 20 20 20 20 3d 20 20 34 30 2c 0d 0a 09 49 4e 54 = 40,...INT
2070: 45 52 4e 45 54 5f 53 54 41 54 55 53 5f 52 45 53 ERNET_STATUS_RES
2080: 50 4f 4e 53 45 5f 52 45 43 45 49 56 45 44 20 20 PONSE_RECEIVED
2090: 20 20 20 3d 20 20 34 31 2c 0d 0a 09 49 4e 54 45 = 41,...INTE
20a0: 52 4e 45 54 5f 53 54 41 54 55 53 5f 43 54 4c 5f RNET_STATUS_CTL_
20b0: 52 45 53 50 4f 4e 53 45 5f 52 45 43 45 49 56 45 RESPONSE_RECEIVE
20c0: 44 20 3d 20 20 34 32 2c 0d 0a 09 49 4e 54 45 52 D = 42,...INTER
20d0: 4e 45 54 5f 53 54 41 54 55 53 5f 50 52 45 46 45 NET_STATUS_PREFE
20e0: 54 43 48 20 20 20 20 20 20 20 20 20 20 20 20 20 TCH
20f0: 20 3d 20 20 34 33 2c 0d 0a 09 49 4e 54 45 52 4e = 43,...INTERN
2100: 45 54 5f 53 54 41 54 55 53 5f 43 4c 4f 53 49 4e ET_STATUS_CLOSIN
2110: 47 5f 43 4f 4e 4e 45 43 54 49 4f 4e 20 20 20 20 G_CONNECTION
2120: 3d 20 20 35 30 2c 0d 0a 09 49 4e 54 45 52 4e 45 = 50,...INTERNE
2130: 54 5f 53 54 41 54 55 53 5f 43 4f 4e 4e 45 43 54 T_STATUS_CONNECT
2140: 49 4f 4e 5f 43 4c 4f 53 45 44 20 20 20 20 20 3d ION_CLOSED =
2150: 20 20 35 31 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 51,...INTERNET
2160: 5f 53 54 41 54 55 53 5f 48 41 4e 44 4c 45 5f 43 _STATUS_HANDLE_C
2170: 52 45 41 54 45 44 20 20 20 20 20 20 20 20 3d 20 REATED =
2180: 20 36 30 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 60,...INTERNET_
2190: 53 54 41 54 55 53 5f 48 41 4e 44 4c 45 5f 43 4c STATUS_HANDLE_CL
21a0: 4f 53 49 4e 47 20 20 20 20 20 20 20 20 3d 20 20 OSING =
21b0: 37 30 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 53 70,...INTERNET_S
21c0: 54 41 54 55 53 5f 52 45 51 55 45 53 54 5f 43 4f TATUS_REQUEST_CO
21d0: 4d 50 4c 45 54 45 20 20 20 20 20 20 3d 20 31 30 MPLETE = 10
21e0: 30 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 53 54 0,...INTERNET_ST
21f0: 41 54 55 53 5f 52 45 44 49 52 45 43 54 20 20 20 ATUS_REDIRECT
2200: 20 20 20 20 20 20 20 20 20 20 20 3d 20 31 31 30 = 110
2210: 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 7b 0d 0a 09 ..}....enum {...
2220: 46 54 50 5f 54 52 41 4e 53 46 45 52 5f 54 59 50 FTP_TRANSFER_TYP
2230: 45 5f 55 4e 4b 4e 4f 57 4e 20 3d 20 30 2c 0d 0a E_UNKNOWN = 0,..
2240: 09 46 54 50 5f 54 52 41 4e 53 46 45 52 5f 54 59 .FTP_TRANSFER_TY
2250: 50 45 5f 41 53 43 49 49 20 20 20 3d 20 31 2c 0d PE_ASCII = 1,.
2260: 0a 09 46 54 50 5f 54 52 41 4e 53 46 45 52 5f 54 ..FTP_TRANSFER_T
2270: 59 50 45 5f 42 49 4e 41 52 59 20 20 3d 20 32 2c YPE_BINARY = 2,
2280: 0d 0a 09 46 54 50 5f 54 52 41 4e 53 46 45 52 5f ...FTP_TRANSFER_
2290: 54 59 50 45 5f 4d 41 53 4b 20 20 20 20 3d 20 33 TYPE_MASK = 3
22a0: 0d 0a 7d 0d 0a 0d 0a 63 6f 6e 73 74 20 73 69 7a ..}....const siz
22b0: 65 5f 74 0d 0a 09 4d 41 58 5f 47 4f 50 48 45 52 e_t...MAX_GOPHER
22c0: 5f 44 49 53 50 4c 41 59 5f 54 45 58 54 20 20 20 _DISPLAY_TEXT
22d0: 3d 20 31 32 38 2c 0d 0a 09 4d 41 58 5f 47 4f 50 = 128,...MAX_GOP
22e0: 48 45 52 5f 53 45 4c 45 43 54 4f 52 5f 54 45 58 HER_SELECTOR_TEX
22f0: 54 20 20 3d 20 32 35 36 2c 0d 0a 09 4d 41 58 5f T = 256,...MAX_
2300: 47 4f 50 48 45 52 5f 48 4f 53 54 5f 4e 41 4d 45 GOPHER_HOST_NAME
2310: 20 20 20 20 20 20 3d 20 49 4e 54 45 52 4e 45 54 = INTERNET
2320: 5f 4d 41 58 5f 48 4f 53 54 5f 4e 41 4d 45 5f 4c _MAX_HOST_NAME_L
2330: 45 4e 47 54 48 2c 0d 0a 09 4d 41 58 5f 47 4f 50 ENGTH,...MAX_GOP
2340: 48 45 52 5f 4c 4f 43 41 54 4f 52 5f 4c 45 4e 47 HER_LOCATOR_LENG
2350: 54 48 0d 0a 09 20 20 3d 20 31 20 2b 20 4d 41 58 TH... = 1 + MAX
2360: 5f 47 4f 50 48 45 52 5f 44 49 53 50 4c 41 59 5f _GOPHER_DISPLAY_
2370: 54 45 58 54 20 2b 20 31 20 2b 20 4d 41 58 5f 47 TEXT + 1 + MAX_G
2380: 4f 50 48 45 52 5f 53 45 4c 45 43 54 4f 52 5f 54 OPHER_SELECTOR_T
2390: 45 58 54 20 2b 20 31 0d 0a 09 20 20 20 20 2b 20 EXT + 1... +
23a0: 4d 41 58 5f 47 4f 50 48 45 52 5f 48 4f 53 54 5f MAX_GOPHER_HOST_
23b0: 4e 41 4d 45 20 2b 20 31 20 2b 20 49 4e 54 45 52 NAME + 1 + INTER
23c0: 4e 45 54 5f 4d 41 58 5f 50 4f 52 54 5f 4e 55 4d NET_MAX_PORT_NUM
23d0: 42 45 52 5f 4c 45 4e 47 54 48 20 2b 20 34 3b 0d BER_LENGTH + 4;.
23e0: 0a 0d 0a 63 6f 6e 73 74 20 44 57 4f 52 44 0d 0a ...const DWORD..
23f0: 09 47 4f 50 48 45 52 5f 54 59 50 45 5f 54 45 58 .GOPHER_TYPE_TEX
2400: 54 5f 46 49 4c 45 20 20 20 20 20 20 3d 20 30 78 T_FILE = 0x
2410: 30 30 30 30 30 30 30 31 2c 0d 0a 09 47 4f 50 48 00000001,...GOPH
2420: 45 52 5f 54 59 50 45 5f 44 49 52 45 43 54 4f 52 ER_TYPE_DIRECTOR
2430: 59 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 Y = 0x00000
2440: 30 30 32 2c 0d 0a 09 47 4f 50 48 45 52 5f 54 59 002,...GOPHER_TY
2450: 50 45 5f 43 53 4f 20 20 20 20 20 20 20 20 20 20 PE_CSO
2460: 20 20 3d 20 30 78 30 30 30 30 30 30 30 34 2c 0d = 0x00000004,.
2470: 0a 09 47 4f 50 48 45 52 5f 54 59 50 45 5f 45 52 ..GOPHER_TYPE_ER
2480: 52 4f 52 20 20 20 20 20 20 20 20 20 20 3d 20 30 ROR = 0
2490: 78 30 30 30 30 30 30 30 38 2c 0d 0a 09 47 4f 50 x00000008,...GOP
24a0: 48 45 52 5f 54 59 50 45 5f 4d 41 43 5f 42 49 4e HER_TYPE_MAC_BIN
24b0: 48 45 58 20 20 20 20 20 3d 20 30 78 30 30 30 30 HEX = 0x0000
24c0: 30 30 31 30 2c 0d 0a 09 47 4f 50 48 45 52 5f 54 0010,...GOPHER_T
24d0: 59 50 45 5f 44 4f 53 5f 41 52 43 48 49 56 45 20 YPE_DOS_ARCHIVE
24e0: 20 20 20 3d 20 30 78 30 30 30 30 30 30 32 30 2c = 0x00000020,
24f0: 0d 0a 09 47 4f 50 48 45 52 5f 54 59 50 45 5f 55 ...GOPHER_TYPE_U
2500: 4e 49 58 5f 55 55 45 4e 43 4f 44 45 44 20 3d 20 NIX_UUENCODED =
2510: 30 78 30 30 30 30 30 30 34 30 2c 0d 0a 09 47 4f 0x00000040,...GO
2520: 50 48 45 52 5f 54 59 50 45 5f 49 4e 44 45 58 5f PHER_TYPE_INDEX_
2530: 53 45 52 56 45 52 20 20 20 3d 20 30 78 30 30 30 SERVER = 0x000
2540: 30 30 30 38 30 2c 0d 0a 09 47 4f 50 48 45 52 5f 00080,...GOPHER_
2550: 54 59 50 45 5f 54 45 4c 4e 45 54 20 20 20 20 20 TYPE_TELNET
2560: 20 20 20 20 3d 20 30 78 30 30 30 30 30 31 30 30 = 0x00000100
2570: 2c 0d 0a 09 47 4f 50 48 45 52 5f 54 59 50 45 5f ,...GOPHER_TYPE_
2580: 42 49 4e 41 52 59 20 20 20 20 20 20 20 20 20 3d BINARY =
2590: 20 30 78 30 30 30 30 30 32 30 30 2c 0d 0a 09 47 0x00000200,...G
25a0: 4f 50 48 45 52 5f 54 59 50 45 5f 52 45 44 55 4e OPHER_TYPE_REDUN
25b0: 44 41 4e 54 20 20 20 20 20 20 3d 20 30 78 30 30 DANT = 0x00
25c0: 30 30 30 34 30 30 2c 0d 0a 09 47 4f 50 48 45 52 000400,...GOPHER
25d0: 5f 54 59 50 45 5f 54 4e 33 32 37 30 20 20 20 20 _TYPE_TN3270
25e0: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 38 30 = 0x0000080
25f0: 30 2c 0d 0a 09 47 4f 50 48 45 52 5f 54 59 50 45 0,...GOPHER_TYPE
2600: 5f 47 49 46 20 20 20 20 20 20 20 20 20 20 20 20 _GIF
2610: 3d 20 30 78 30 30 30 30 31 30 30 30 2c 0d 0a 09 = 0x00001000,...
2620: 47 4f 50 48 45 52 5f 54 59 50 45 5f 49 4d 41 47 GOPHER_TYPE_IMAG
2630: 45 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 E = 0x0
2640: 30 30 30 32 30 30 30 2c 0d 0a 09 47 4f 50 48 45 0002000,...GOPHE
2650: 52 5f 54 59 50 45 5f 42 49 54 4d 41 50 20 20 20 R_TYPE_BITMAP
2660: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 34 30 = 0x000040
2670: 30 30 2c 0d 0a 09 47 4f 50 48 45 52 5f 54 59 50 00,...GOPHER_TYP
2680: 45 5f 4d 4f 56 49 45 20 20 20 20 20 20 20 20 20 E_MOVIE
2690: 20 3d 20 30 78 30 30 30 30 38 30 30 30 2c 0d 0a = 0x00008000,..
26a0: 09 47 4f 50 48 45 52 5f 54 59 50 45 5f 53 4f 55 .GOPHER_TYPE_SOU
26b0: 4e 44 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 ND = 0x
26c0: 30 30 30 31 30 30 30 30 2c 0d 0a 09 47 4f 50 48 00010000,...GOPH
26d0: 45 52 5f 54 59 50 45 5f 48 54 4d 4c 20 20 20 20 ER_TYPE_HTML
26e0: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 32 30 = 0x00020
26f0: 30 30 30 2c 0d 0a 09 47 4f 50 48 45 52 5f 54 59 000,...GOPHER_TY
2700: 50 45 5f 50 44 46 20 20 20 20 20 20 20 20 20 20 PE_PDF
2710: 20 20 3d 20 30 78 30 30 30 34 30 30 30 30 2c 0d = 0x00040000,.
2720: 0a 09 47 4f 50 48 45 52 5f 54 59 50 45 5f 43 41 ..GOPHER_TYPE_CA
2730: 4c 45 4e 44 41 52 20 20 20 20 20 20 20 3d 20 30 LENDAR = 0
2740: 78 30 30 30 38 30 30 30 30 2c 0d 0a 09 47 4f 50 x00080000,...GOP
2750: 48 45 52 5f 54 59 50 45 5f 49 4e 4c 49 4e 45 20 HER_TYPE_INLINE
2760: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 31 30 = 0x0010
2770: 30 30 30 30 2c 0d 0a 09 47 4f 50 48 45 52 5f 54 0000,...GOPHER_T
2780: 59 50 45 5f 55 4e 4b 4e 4f 57 4e 20 20 20 20 20 YPE_UNKNOWN
2790: 20 20 20 3d 20 30 78 32 30 30 30 30 30 30 30 2c = 0x20000000,
27a0: 0d 0a 09 47 4f 50 48 45 52 5f 54 59 50 45 5f 41 ...GOPHER_TYPE_A
27b0: 53 4b 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 SK =
27c0: 30 78 34 30 30 30 30 30 30 30 2c 0d 0a 09 47 4f 0x40000000,...GO
27d0: 50 48 45 52 5f 54 59 50 45 5f 47 4f 50 48 45 52 PHER_TYPE_GOPHER
27e0: 5f 50 4c 55 53 20 20 20 20 3d 20 30 78 38 30 30 _PLUS = 0x800
27f0: 30 30 30 30 30 2c 0d 0a 09 47 4f 50 48 45 52 5f 00000,...GOPHER_
2800: 54 59 50 45 5f 46 49 4c 45 5f 4d 41 53 4b 20 20 TYPE_FILE_MASK
2810: 20 20 20 20 3d 20 30 78 30 30 31 46 46 32 37 31 = 0x001FF271
2820: 3b 0d 0a 0d 0a 42 4f 4f 4c 20 49 53 5f 47 4f 50 ;....BOOL IS_GOP
2830: 48 45 52 5f 46 49 4c 45 28 44 57 4f 52 44 20 74 HER_FILE(DWORD t
2840: 29 20 7b 0d 0a 09 72 65 74 75 72 6e 20 21 21 28 ) {...return !!(
2850: 74 20 26 20 47 4f 50 48 45 52 5f 54 59 50 45 5f t & GOPHER_TYPE_
2860: 46 49 4c 45 5f 4d 41 53 4b 29 3b 0d 0a 7d 0d 0a FILE_MASK);..}..
2870: 0d 0a 42 4f 4f 4c 20 49 53 5f 47 4f 50 48 45 52 ..BOOL IS_GOPHER
2880: 5f 44 49 52 45 43 54 4f 52 59 28 44 57 4f 52 44 _DIRECTORY(DWORD
2890: 20 74 29 20 7b 0d 0a 09 72 65 74 75 72 6e 20 21 t) {...return !
28a0: 21 28 74 20 26 20 47 4f 50 48 45 52 5f 54 59 50 !(t & GOPHER_TYP
28b0: 45 5f 44 49 52 45 43 54 4f 52 59 29 3b 0d 0a 7d E_DIRECTORY);..}
28c0: 0d 0a 0d 0a 42 4f 4f 4c 20 49 53 5f 47 4f 50 48 ....BOOL IS_GOPH
28d0: 45 52 5f 50 48 4f 4e 45 5f 53 45 52 56 45 52 28 ER_PHONE_SERVER(
28e0: 44 57 4f 52 44 20 74 29 20 7b 0d 0a 09 72 65 74 DWORD t) {...ret
28f0: 75 72 6e 20 21 21 28 74 20 26 20 47 4f 50 48 45 urn !!(t & GOPHE
2900: 52 5f 54 59 50 45 5f 43 53 4f 29 3b 0d 0a 7d 0d R_TYPE_CSO);..}.
2910: 0a 0d 0a 42 4f 4f 4c 20 49 53 5f 47 4f 50 48 45 ...BOOL IS_GOPHE
2920: 52 5f 45 52 52 4f 52 28 44 57 4f 52 44 20 74 29 R_ERROR(DWORD t)
2930: 20 7b 0d 0a 09 72 65 74 75 72 6e 20 21 21 28 74 {...return !!(t
2940: 20 26 20 47 4f 50 48 45 52 5f 54 59 50 45 5f 45 & GOPHER_TYPE_E
2950: 52 52 4f 52 29 3b 0d 0a 7d 0d 0a 0d 0a 42 4f 4f RROR);..}....BOO
2960: 4c 20 49 53 5f 47 4f 50 48 45 52 5f 49 4e 44 45 L IS_GOPHER_INDE
2970: 58 5f 53 45 52 56 45 52 28 44 57 4f 52 44 20 74 X_SERVER(DWORD t
2980: 29 20 7b 0d 0a 09 72 65 74 75 72 6e 20 21 21 28 ) {...return !!(
2990: 74 20 26 20 47 4f 50 48 45 52 5f 54 59 50 45 5f t & GOPHER_TYPE_
29a0: 49 4e 44 45 58 5f 53 45 52 56 45 52 29 3b 0d 0a INDEX_SERVER);..
29b0: 7d 0d 0a 0d 0a 42 4f 4f 4c 20 49 53 5f 47 4f 50 }....BOOL IS_GOP
29c0: 48 45 52 5f 54 45 4c 4e 45 54 5f 53 45 53 53 49 HER_TELNET_SESSI
29d0: 4f 4e 28 44 57 4f 52 44 20 74 29 20 7b 0d 0a 09 ON(DWORD t) {...
29e0: 72 65 74 75 72 6e 20 21 21 28 74 20 26 20 47 4f return !!(t & GO
29f0: 50 48 45 52 5f 54 59 50 45 5f 54 45 4c 4e 45 54 PHER_TYPE_TELNET
2a00: 29 3b 0d 0a 7d 0d 0a 0d 0a 42 4f 4f 4c 20 49 53 );..}....BOOL IS
2a10: 5f 47 4f 50 48 45 52 5f 42 41 43 4b 55 50 5f 53 _GOPHER_BACKUP_S
2a20: 45 52 56 45 52 28 44 57 4f 52 44 20 74 29 20 7b ERVER(DWORD t) {
2a30: 0d 0a 09 72 65 74 75 72 6e 20 21 21 28 74 20 26 ...return !!(t &
2a40: 20 47 4f 50 48 45 52 5f 54 59 50 45 5f 52 45 44 GOPHER_TYPE_RED
2a50: 55 4e 44 41 4e 54 29 3b 0d 0a 7d 0d 0a 0d 0a 42 UNDANT);..}....B
2a60: 4f 4f 4c 20 49 53 5f 47 4f 50 48 45 52 5f 54 4e OOL IS_GOPHER_TN
2a70: 33 32 37 30 5f 53 45 53 53 49 4f 4e 28 44 57 4f 3270_SESSION(DWO
2a80: 52 44 20 74 29 20 7b 0d 0a 09 72 65 74 75 72 6e RD t) {...return
2a90: 20 21 21 28 74 20 26 20 47 4f 50 48 45 52 5f 54 !!(t & GOPHER_T
2aa0: 59 50 45 5f 54 4e 33 32 37 30 29 3b 0d 0a 7d 0d YPE_TN3270);..}.
2ab0: 0a 0d 0a 42 4f 4f 4c 20 49 53 5f 47 4f 50 48 45 ...BOOL IS_GOPHE
2ac0: 52 5f 41 53 4b 28 44 57 4f 52 44 20 74 29 20 7b R_ASK(DWORD t) {
2ad0: 0d 0a 09 72 65 74 75 72 6e 20 21 21 28 74 20 26 ...return !!(t &
2ae0: 20 47 4f 50 48 45 52 5f 54 59 50 45 5f 41 53 4b GOPHER_TYPE_ASK
2af0: 29 3b 0d 0a 7d 0d 0a 0d 0a 42 4f 4f 4c 20 49 53 );..}....BOOL IS
2b00: 5f 47 4f 50 48 45 52 5f 50 4c 55 53 28 44 57 4f _GOPHER_PLUS(DWO
2b10: 52 44 20 74 29 20 7b 0d 0a 09 72 65 74 75 72 6e RD t) {...return
2b20: 20 21 21 28 74 20 26 20 47 4f 50 48 45 52 5f 54 !!(t & GOPHER_T
2b30: 59 50 45 5f 47 4f 50 48 45 52 5f 50 4c 55 53 29 YPE_GOPHER_PLUS)
2b40: 3b 0d 0a 7d 0d 0a 0d 0a 42 4f 4f 4c 20 49 53 5f ;..}....BOOL IS_
2b50: 47 4f 50 48 45 52 5f 54 59 50 45 5f 4b 4e 4f 57 GOPHER_TYPE_KNOW
2b60: 4e 28 44 57 4f 52 44 20 74 29 20 7b 0d 0a 09 72 N(DWORD t) {...r
2b70: 65 74 75 72 6e 20 21 28 74 20 26 20 47 4f 50 48 eturn !(t & GOPH
2b80: 45 52 5f 54 59 50 45 5f 55 4e 4b 4e 4f 57 4e 29 ER_TYPE_UNKNOWN)
2b90: 3b 0d 0a 7d 0d 0a 0d 0a 63 6f 6e 73 74 20 73 69 ;..}....const si
2ba0: 7a 65 5f 74 0d 0a 09 4d 41 58 5f 47 4f 50 48 45 ze_t...MAX_GOPHE
2bb0: 52 5f 43 41 54 45 47 4f 52 59 5f 4e 41 4d 45 20 R_CATEGORY_NAME
2bc0: 20 20 20 3d 20 31 32 38 2c 0d 0a 09 4d 41 58 5f = 128,...MAX_
2bd0: 47 4f 50 48 45 52 5f 41 54 54 52 49 42 55 54 45 GOPHER_ATTRIBUTE
2be0: 5f 4e 41 4d 45 20 20 20 3d 20 31 32 38 2c 0d 0a _NAME = 128,..
2bf0: 09 4d 49 4e 5f 47 4f 50 48 45 52 5f 41 54 54 52 .MIN_GOPHER_ATTR
2c00: 49 42 55 54 45 5f 4c 45 4e 47 54 48 20 3d 20 32 IBUTE_LENGTH = 2
2c10: 35 36 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 54 43 48 56;....const TCH
2c20: 41 52 5b 5d 0d 0a 09 47 4f 50 48 45 52 5f 49 4e AR[]...GOPHER_IN
2c30: 46 4f 5f 43 41 54 45 47 4f 52 59 20 20 20 20 20 FO_CATEGORY
2c40: 20 3d 20 22 2b 49 4e 46 4f 22 2c 0d 0a 09 47 4f = "+INFO",...GO
2c50: 50 48 45 52 5f 41 44 4d 49 4e 5f 43 41 54 45 47 PHER_ADMIN_CATEG
2c60: 4f 52 59 20 20 20 20 20 3d 20 22 2b 41 44 4d 49 ORY = "+ADMI
2c70: 4e 22 2c 0d 0a 09 47 4f 50 48 45 52 5f 56 49 45 N",...GOPHER_VIE
2c80: 57 53 5f 43 41 54 45 47 4f 52 59 20 20 20 20 20 WS_CATEGORY
2c90: 3d 20 22 2b 56 49 45 57 53 22 2c 0d 0a 09 47 4f = "+VIEWS",...GO
2ca0: 50 48 45 52 5f 41 42 53 54 52 41 43 54 5f 43 41 PHER_ABSTRACT_CA
2cb0: 54 45 47 4f 52 59 20 20 3d 20 22 2b 41 42 53 54 TEGORY = "+ABST
2cc0: 52 41 43 54 22 2c 0d 0a 09 47 4f 50 48 45 52 5f RACT",...GOPHER_
2cd0: 56 45 52 4f 4e 49 43 41 5f 43 41 54 45 47 4f 52 VERONICA_CATEGOR
2ce0: 59 20 20 3d 20 22 2b 56 45 52 4f 4e 49 43 41 22 Y = "+VERONICA"
2cf0: 2c 0d 0a 09 47 4f 50 48 45 52 5f 41 44 4d 49 4e ,...GOPHER_ADMIN
2d00: 5f 41 54 54 52 49 42 55 54 45 20 20 20 20 3d 20 _ATTRIBUTE =
2d10: 22 41 64 6d 69 6e 22 2c 0d 0a 09 47 4f 50 48 45 "Admin",...GOPHE
2d20: 52 5f 4d 4f 44 5f 44 41 54 45 5f 41 54 54 52 49 R_MOD_DATE_ATTRI
2d30: 42 55 54 45 20 3d 20 22 4d 6f 64 2d 44 61 74 65 BUTE = "Mod-Date
2d40: 22 2c 0d 0a 09 47 4f 50 48 45 52 5f 54 54 4c 5f ",...GOPHER_TTL_
2d50: 41 54 54 52 49 42 55 54 45 20 20 20 20 20 20 3d ATTRIBUTE =
2d60: 20 22 54 54 4c 22 2c 0d 0a 09 47 4f 50 48 45 52 "TTL",...GOPHER
2d70: 5f 53 43 4f 52 45 5f 41 54 54 52 49 42 55 54 45 _SCORE_ATTRIBUTE
2d80: 20 20 20 20 3d 20 22 53 63 6f 72 65 22 2c 0d 0a = "Score",..
2d90: 09 47 4f 50 48 45 52 5f 52 41 4e 47 45 5f 41 54 .GOPHER_RANGE_AT
2da0: 54 52 49 42 55 54 45 20 20 20 20 3d 20 22 53 63 TRIBUTE = "Sc
2db0: 6f 72 65 2d 72 61 6e 67 65 22 2c 0d 0a 09 47 4f ore-range",...GO
2dc0: 50 48 45 52 5f 53 49 54 45 5f 41 54 54 52 49 42 PHER_SITE_ATTRIB
2dd0: 55 54 45 20 20 20 20 20 3d 20 22 53 69 74 65 22 UTE = "Site"
2de0: 2c 0d 0a 09 47 4f 50 48 45 52 5f 4f 52 47 5f 41 ,...GOPHER_ORG_A
2df0: 54 54 52 49 42 55 54 45 20 20 20 20 20 20 3d 20 TTRIBUTE =
2e00: 22 4f 72 67 22 2c 0d 0a 09 47 4f 50 48 45 52 5f "Org",...GOPHER_
2e10: 4c 4f 43 41 54 49 4f 4e 5f 41 54 54 52 49 42 55 LOCATION_ATTRIBU
2e20: 54 45 20 3d 20 22 4c 6f 63 22 2c 0d 0a 09 47 4f TE = "Loc",...GO
2e30: 50 48 45 52 5f 47 45 4f 47 5f 41 54 54 52 49 42 PHER_GEOG_ATTRIB
2e40: 55 54 45 20 20 20 20 20 3d 20 22 47 65 6f 67 22 UTE = "Geog"
2e50: 2c 0d 0a 09 47 4f 50 48 45 52 5f 54 49 4d 45 5a ,...GOPHER_TIMEZ
2e60: 4f 4e 45 5f 41 54 54 52 49 42 55 54 45 20 3d 20 ONE_ATTRIBUTE =
2e70: 22 54 5a 22 2c 0d 0a 09 47 4f 50 48 45 52 5f 50 "TZ",...GOPHER_P
2e80: 52 4f 56 49 44 45 52 5f 41 54 54 52 49 42 55 54 ROVIDER_ATTRIBUT
2e90: 45 20 3d 20 22 50 72 6f 76 69 64 65 72 22 2c 0d E = "Provider",.
2ea0: 0a 09 47 4f 50 48 45 52 5f 56 45 52 53 49 4f 4e ..GOPHER_VERSION
2eb0: 5f 41 54 54 52 49 42 55 54 45 20 20 3d 20 22 56 _ATTRIBUTE = "V
2ec0: 65 72 73 69 6f 6e 22 2c 0d 0a 09 47 4f 50 48 45 ersion",...GOPHE
2ed0: 52 5f 41 42 53 54 52 41 43 54 5f 41 54 54 52 49 R_ABSTRACT_ATTRI
2ee0: 42 55 54 45 20 3d 20 22 41 62 73 74 72 61 63 74 BUTE = "Abstract
2ef0: 22 2c 0d 0a 09 47 4f 50 48 45 52 5f 56 49 45 57 ",...GOPHER_VIEW
2f00: 5f 41 54 54 52 49 42 55 54 45 20 20 20 20 20 3d _ATTRIBUTE =
2f10: 20 22 56 69 65 77 22 2c 0d 0a 09 47 4f 50 48 45 "View",...GOPHE
2f20: 52 5f 54 52 45 45 57 41 4c 4b 5f 41 54 54 52 49 R_TREEWALK_ATTRI
2f30: 42 55 54 45 20 3d 20 22 74 72 65 65 77 61 6c 6b BUTE = "treewalk
2f40: 22 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f ";....enum : DWO
2f50: 52 44 20 7b 0d 0a 09 47 4f 50 48 45 52 5f 41 54 RD {...GOPHER_AT
2f60: 54 52 49 42 55 54 45 5f 49 44 5f 42 41 53 45 20 TRIBUTE_ID_BASE
2f70: 3d 20 30 78 41 42 43 43 43 43 30 30 2c 0d 0a 09 = 0xABCCCC00,...
2f80: 47 4f 50 48 45 52 5f 43 41 54 45 47 4f 52 59 5f GOPHER_CATEGORY_
2f90: 49 44 5f 41 4c 4c 2c 0d 0a 09 47 4f 50 48 45 52 ID_ALL,...GOPHER
2fa0: 5f 43 41 54 45 47 4f 52 59 5f 49 44 5f 49 4e 46 _CATEGORY_ID_INF
2fb0: 4f 2c 0d 0a 09 47 4f 50 48 45 52 5f 43 41 54 45 O,...GOPHER_CATE
2fc0: 47 4f 52 59 5f 49 44 5f 41 44 4d 49 4e 2c 0d 0a GORY_ID_ADMIN,..
2fd0: 09 47 4f 50 48 45 52 5f 43 41 54 45 47 4f 52 59 .GOPHER_CATEGORY
2fe0: 5f 49 44 5f 56 49 45 57 53 2c 0d 0a 09 47 4f 50 _ID_VIEWS,...GOP
2ff0: 48 45 52 5f 43 41 54 45 47 4f 52 59 5f 49 44 5f HER_CATEGORY_ID_
3000: 41 42 53 54 52 41 43 54 2c 0d 0a 09 47 4f 50 48 ABSTRACT,...GOPH
3010: 45 52 5f 43 41 54 45 47 4f 52 59 5f 49 44 5f 56 ER_CATEGORY_ID_V
3020: 45 52 4f 4e 49 43 41 2c 0d 0a 09 47 4f 50 48 45 ERONICA,...GOPHE
3030: 52 5f 43 41 54 45 47 4f 52 59 5f 49 44 5f 41 53 R_CATEGORY_ID_AS
3040: 4b 2c 0d 0a 09 47 4f 50 48 45 52 5f 43 41 54 45 K,...GOPHER_CATE
3050: 47 4f 52 59 5f 49 44 5f 55 4e 4b 4e 4f 57 4e 2c GORY_ID_UNKNOWN,
3060: 0d 0a 09 47 4f 50 48 45 52 5f 41 54 54 52 49 42 ...GOPHER_ATTRIB
3070: 55 54 45 5f 49 44 5f 41 4c 4c 2c 0d 0a 09 47 4f UTE_ID_ALL,...GO
3080: 50 48 45 52 5f 41 54 54 52 49 42 55 54 45 5f 49 PHER_ATTRIBUTE_I
3090: 44 5f 41 44 4d 49 4e 2c 0d 0a 09 47 4f 50 48 45 D_ADMIN,...GOPHE
30a0: 52 5f 41 54 54 52 49 42 55 54 45 5f 49 44 5f 4d R_ATTRIBUTE_ID_M
30b0: 4f 44 5f 44 41 54 45 2c 0d 0a 09 47 4f 50 48 45 OD_DATE,...GOPHE
30c0: 52 5f 41 54 54 52 49 42 55 54 45 5f 49 44 5f 54 R_ATTRIBUTE_ID_T
30d0: 54 4c 2c 0d 0a 09 47 4f 50 48 45 52 5f 41 54 54 TL,...GOPHER_ATT
30e0: 52 49 42 55 54 45 5f 49 44 5f 53 43 4f 52 45 2c RIBUTE_ID_SCORE,
30f0: 0d 0a 09 47 4f 50 48 45 52 5f 41 54 54 52 49 42 ...GOPHER_ATTRIB
3100: 55 54 45 5f 49 44 5f 52 41 4e 47 45 2c 0d 0a 09 UTE_ID_RANGE,...
3110: 47 4f 50 48 45 52 5f 41 54 54 52 49 42 55 54 45 GOPHER_ATTRIBUTE
3120: 5f 49 44 5f 53 49 54 45 2c 0d 0a 09 47 4f 50 48 _ID_SITE,...GOPH
3130: 45 52 5f 41 54 54 52 49 42 55 54 45 5f 49 44 5f ER_ATTRIBUTE_ID_
3140: 4f 52 47 2c 0d 0a 09 47 4f 50 48 45 52 5f 41 54 ORG,...GOPHER_AT
3150: 54 52 49 42 55 54 45 5f 49 44 5f 4c 4f 43 41 54 TRIBUTE_ID_LOCAT
3160: 49 4f 4e 2c 0d 0a 09 47 4f 50 48 45 52 5f 41 54 ION,...GOPHER_AT
3170: 54 52 49 42 55 54 45 5f 49 44 5f 47 45 4f 47 2c TRIBUTE_ID_GEOG,
3180: 0d 0a 09 47 4f 50 48 45 52 5f 41 54 54 52 49 42 ...GOPHER_ATTRIB
3190: 55 54 45 5f 49 44 5f 54 49 4d 45 5a 4f 4e 45 2c UTE_ID_TIMEZONE,
31a0: 0d 0a 09 47 4f 50 48 45 52 5f 41 54 54 52 49 42 ...GOPHER_ATTRIB
31b0: 55 54 45 5f 49 44 5f 50 52 4f 56 49 44 45 52 2c UTE_ID_PROVIDER,
31c0: 0d 0a 09 47 4f 50 48 45 52 5f 41 54 54 52 49 42 ...GOPHER_ATTRIB
31d0: 55 54 45 5f 49 44 5f 56 45 52 53 49 4f 4e 2c 0d UTE_ID_VERSION,.
31e0: 0a 09 47 4f 50 48 45 52 5f 41 54 54 52 49 42 55 ..GOPHER_ATTRIBU
31f0: 54 45 5f 49 44 5f 41 42 53 54 52 41 43 54 2c 0d TE_ID_ABSTRACT,.
3200: 0a 09 47 4f 50 48 45 52 5f 41 54 54 52 49 42 55 ..GOPHER_ATTRIBU
3210: 54 45 5f 49 44 5f 56 49 45 57 2c 0d 0a 09 47 4f TE_ID_VIEW,...GO
3220: 50 48 45 52 5f 41 54 54 52 49 42 55 54 45 5f 49 PHER_ATTRIBUTE_I
3230: 44 5f 54 52 45 45 57 41 4c 4b 2c 0d 0a 09 47 4f D_TREEWALK,...GO
3240: 50 48 45 52 5f 41 54 54 52 49 42 55 54 45 5f 49 PHER_ATTRIBUTE_I
3250: 44 5f 55 4e 4b 4e 4f 57 4e 0d 0a 7d 0d 0a 0d 0a D_UNKNOWN..}....
3260: 63 6f 6e 73 74 20 48 54 54 50 5f 4d 41 4a 4f 52 const HTTP_MAJOR
3270: 5f 56 45 52 53 49 4f 4e 20 20 20 3d 20 31 3b 0d _VERSION = 1;.
3280: 0a 63 6f 6e 73 74 20 48 54 54 50 5f 4d 49 4e 4f .const HTTP_MINO
3290: 52 5f 56 45 52 53 49 4f 4e 20 20 20 3d 20 30 3b R_VERSION = 0;
32a0: 0d 0a 63 6f 6e 73 74 20 54 43 48 41 52 5b 5d 20 ..const TCHAR[]
32b0: 48 54 54 50 5f 56 45 52 53 49 4f 4e 20 3d 20 22 HTTP_VERSION = "
32c0: 48 54 54 50 2f 31 2e 30 22 3b 0d 0a 0d 0a 65 6e HTTP/1.0";....en
32d0: 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 48 um : DWORD {...H
32e0: 54 54 50 5f 51 55 45 52 59 5f 4d 49 4d 45 5f 56 TTP_QUERY_MIME_V
32f0: 45 52 53 49 4f 4e 2c 0d 0a 09 48 54 54 50 5f 51 ERSION,...HTTP_Q
3300: 55 45 52 59 5f 43 4f 4e 54 45 4e 54 5f 54 59 50 UERY_CONTENT_TYP
3310: 45 2c 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 5f E,...HTTP_QUERY_
3320: 43 4f 4e 54 45 4e 54 5f 54 52 41 4e 53 46 45 52 CONTENT_TRANSFER
3330: 5f 45 4e 43 4f 44 49 4e 47 2c 0d 0a 09 48 54 54 _ENCODING,...HTT
3340: 50 5f 51 55 45 52 59 5f 43 4f 4e 54 45 4e 54 5f P_QUERY_CONTENT_
3350: 49 44 2c 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 ID,...HTTP_QUERY
3360: 5f 43 4f 4e 54 45 4e 54 5f 44 45 53 43 52 49 50 _CONTENT_DESCRIP
3370: 54 49 4f 4e 2c 0d 0a 09 48 54 54 50 5f 51 55 45 TION,...HTTP_QUE
3380: 52 59 5f 43 4f 4e 54 45 4e 54 5f 4c 45 4e 47 54 RY_CONTENT_LENGT
3390: 48 2c 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 5f H,...HTTP_QUERY_
33a0: 43 4f 4e 54 45 4e 54 5f 4c 41 4e 47 55 41 47 45 CONTENT_LANGUAGE
33b0: 2c 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 41 ,...HTTP_QUERY_A
33c0: 4c 4c 4f 57 2c 0d 0a 09 48 54 54 50 5f 51 55 45 LLOW,...HTTP_QUE
33d0: 52 59 5f 50 55 42 4c 49 43 2c 0d 0a 09 48 54 54 RY_PUBLIC,...HTT
33e0: 50 5f 51 55 45 52 59 5f 44 41 54 45 2c 0d 0a 09 P_QUERY_DATE,...
33f0: 48 54 54 50 5f 51 55 45 52 59 5f 45 58 50 49 52 HTTP_QUERY_EXPIR
3400: 45 53 2c 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 ES,...HTTP_QUERY
3410: 5f 4c 41 53 54 5f 4d 4f 44 49 46 49 45 44 2c 0d _LAST_MODIFIED,.
3420: 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 4d 45 53 ..HTTP_QUERY_MES
3430: 53 41 47 45 5f 49 44 2c 0d 0a 09 48 54 54 50 5f SAGE_ID,...HTTP_
3440: 51 55 45 52 59 5f 55 52 49 2c 0d 0a 09 48 54 54 QUERY_URI,...HTT
3450: 50 5f 51 55 45 52 59 5f 44 45 52 49 56 45 44 5f P_QUERY_DERIVED_
3460: 46 52 4f 4d 2c 0d 0a 09 48 54 54 50 5f 51 55 45 FROM,...HTTP_QUE
3470: 52 59 5f 43 4f 53 54 2c 0d 0a 09 48 54 54 50 5f RY_COST,...HTTP_
3480: 51 55 45 52 59 5f 4c 49 4e 4b 2c 0d 0a 09 48 54 QUERY_LINK,...HT
3490: 54 50 5f 51 55 45 52 59 5f 50 52 41 47 4d 41 2c TP_QUERY_PRAGMA,
34a0: 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 56 45 ...HTTP_QUERY_VE
34b0: 52 53 49 4f 4e 2c 0d 0a 09 48 54 54 50 5f 51 55 RSION,...HTTP_QU
34c0: 45 52 59 5f 53 54 41 54 55 53 5f 43 4f 44 45 2c ERY_STATUS_CODE,
34d0: 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 53 54 ...HTTP_QUERY_ST
34e0: 41 54 55 53 5f 54 45 58 54 2c 0d 0a 09 48 54 54 ATUS_TEXT,...HTT
34f0: 50 5f 51 55 45 52 59 5f 52 41 57 5f 48 45 41 44 P_QUERY_RAW_HEAD
3500: 45 52 53 2c 0d 0a 09 48 54 54 50 5f 51 55 45 52 ERS,...HTTP_QUER
3510: 59 5f 52 41 57 5f 48 45 41 44 45 52 53 5f 43 52 Y_RAW_HEADERS_CR
3520: 4c 46 2c 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 LF,...HTTP_QUERY
3530: 5f 43 4f 4e 4e 45 43 54 49 4f 4e 2c 0d 0a 09 48 _CONNECTION,...H
3540: 54 54 50 5f 51 55 45 52 59 5f 41 43 43 45 50 54 TTP_QUERY_ACCEPT
3550: 2c 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 41 ,...HTTP_QUERY_A
3560: 43 43 45 50 54 5f 43 48 41 52 53 45 54 2c 0d 0a CCEPT_CHARSET,..
3570: 09 48 54 54 50 5f 51 55 45 52 59 5f 41 43 43 45 .HTTP_QUERY_ACCE
3580: 50 54 5f 45 4e 43 4f 44 49 4e 47 2c 0d 0a 09 48 PT_ENCODING,...H
3590: 54 54 50 5f 51 55 45 52 59 5f 41 43 43 45 50 54 TTP_QUERY_ACCEPT
35a0: 5f 4c 41 4e 47 55 41 47 45 2c 0d 0a 09 48 54 54 _LANGUAGE,...HTT
35b0: 50 5f 51 55 45 52 59 5f 41 55 54 48 4f 52 49 5a P_QUERY_AUTHORIZ
35c0: 41 54 49 4f 4e 2c 0d 0a 09 48 54 54 50 5f 51 55 ATION,...HTTP_QU
35d0: 45 52 59 5f 43 4f 4e 54 45 4e 54 5f 45 4e 43 4f ERY_CONTENT_ENCO
35e0: 44 49 4e 47 2c 0d 0a 09 48 54 54 50 5f 51 55 45 DING,...HTTP_QUE
35f0: 52 59 5f 46 4f 52 57 41 52 44 45 44 2c 0d 0a 09 RY_FORWARDED,...
3600: 48 54 54 50 5f 51 55 45 52 59 5f 46 52 4f 4d 2c HTTP_QUERY_FROM,
3610: 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 49 46 ...HTTP_QUERY_IF
3620: 5f 4d 4f 44 49 46 49 45 44 5f 53 49 4e 43 45 2c _MODIFIED_SINCE,
3630: 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 4c 4f ...HTTP_QUERY_LO
3640: 43 41 54 49 4f 4e 2c 0d 0a 09 48 54 54 50 5f 51 CATION,...HTTP_Q
3650: 55 45 52 59 5f 4f 52 49 47 5f 55 52 49 2c 0d 0a UERY_ORIG_URI,..
3660: 09 48 54 54 50 5f 51 55 45 52 59 5f 52 45 46 45 .HTTP_QUERY_REFE
3670: 52 45 52 2c 0d 0a 09 48 54 54 50 5f 51 55 45 52 RER,...HTTP_QUER
3680: 59 5f 52 45 54 52 59 5f 41 46 54 45 52 2c 0d 0a Y_RETRY_AFTER,..
3690: 09 48 54 54 50 5f 51 55 45 52 59 5f 53 45 52 56 .HTTP_QUERY_SERV
36a0: 45 52 2c 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 ER,...HTTP_QUERY
36b0: 5f 54 49 54 4c 45 2c 0d 0a 09 48 54 54 50 5f 51 _TITLE,...HTTP_Q
36c0: 55 45 52 59 5f 55 53 45 52 5f 41 47 45 4e 54 2c UERY_USER_AGENT,
36d0: 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 57 57 ...HTTP_QUERY_WW
36e0: 57 5f 41 55 54 48 45 4e 54 49 43 41 54 45 2c 0d W_AUTHENTICATE,.
36f0: 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 50 52 4f ..HTTP_QUERY_PRO
3700: 58 59 5f 41 55 54 48 45 4e 54 49 43 41 54 45 2c XY_AUTHENTICATE,
3710: 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 41 43 ...HTTP_QUERY_AC
3720: 43 45 50 54 5f 52 41 4e 47 45 53 2c 0d 0a 09 48 CEPT_RANGES,...H
3730: 54 54 50 5f 51 55 45 52 59 5f 53 45 54 5f 43 4f TTP_QUERY_SET_CO
3740: 4f 4b 49 45 2c 0d 0a 09 48 54 54 50 5f 51 55 45 OKIE,...HTTP_QUE
3750: 52 59 5f 43 4f 4f 4b 49 45 2c 0d 0a 09 48 54 54 RY_COOKIE,...HTT
3760: 50 5f 51 55 45 52 59 5f 52 45 51 55 45 53 54 5f P_QUERY_REQUEST_
3770: 4d 45 54 48 4f 44 2c 0d 0a 09 48 54 54 50 5f 51 METHOD,...HTTP_Q
3780: 55 45 52 59 5f 4d 41 58 20 20 20 20 3d 20 34 35 UERY_MAX = 45
3790: 2c 0d 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 43 ,...HTTP_QUERY_C
37a0: 55 53 54 4f 4d 20 3d 20 36 35 35 33 35 0d 0a 7d USTOM = 65535..}
37b0: 0d 0a 0d 0a 63 6f 6e 73 74 20 44 57 4f 52 44 0d ....const DWORD.
37c0: 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 46 4c 41 ..HTTP_QUERY_FLA
37d0: 47 5f 52 45 51 55 45 53 54 5f 48 45 41 44 45 52 G_REQUEST_HEADER
37e0: 53 20 3d 20 30 78 38 30 30 30 30 30 30 30 2c 0d S = 0x80000000,.
37f0: 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 46 4c 41 ..HTTP_QUERY_FLA
3800: 47 5f 53 59 53 54 45 4d 54 49 4d 45 20 20 20 20 G_SYSTEMTIME
3810: 20 20 3d 20 30 78 34 30 30 30 30 30 30 30 2c 0d = 0x40000000,.
3820: 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 46 4c 41 ..HTTP_QUERY_FLA
3830: 47 5f 4e 55 4d 42 45 52 20 20 20 20 20 20 20 20 G_NUMBER
3840: 20 20 3d 20 30 78 32 30 30 30 30 30 30 30 2c 0d = 0x20000000,.
3850: 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 46 4c 41 ..HTTP_QUERY_FLA
3860: 47 5f 43 4f 41 4c 45 53 43 45 20 20 20 20 20 20 G_COALESCE
3870: 20 20 3d 20 30 78 31 30 30 30 30 30 30 30 2c 0d = 0x10000000,.
3880: 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 4d 4f 44 ..HTTP_QUERY_MOD
3890: 49 46 49 45 52 5f 46 4c 41 47 53 5f 4d 41 53 4b IFIER_FLAGS_MASK
38a0: 20 20 3d 20 30 78 46 30 30 30 30 30 30 30 2c 0d = 0xF0000000,.
38b0: 0a 09 48 54 54 50 5f 51 55 45 52 59 5f 48 45 41 ..HTTP_QUERY_HEA
38c0: 44 45 52 5f 4d 41 53 4b 20 20 20 20 20 20 20 20 DER_MASK
38d0: 20 20 3d 20 7e 48 54 54 50 5f 51 55 45 52 59 5f = ~HTTP_QUERY_
38e0: 4d 4f 44 49 46 49 45 52 5f 46 4c 41 47 53 5f 4d MODIFIER_FLAGS_M
38f0: 41 53 4b 3b 0d 0a 0d 0a 65 6e 75 6d 20 7b 0d 0a ASK;....enum {..
3900: 09 48 54 54 50 5f 53 54 41 54 55 53 5f 4f 4b 20 .HTTP_STATUS_OK
3910: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
3920: 3d 20 32 30 30 2c 0d 0a 09 48 54 54 50 5f 53 54 = 200,...HTTP_ST
3930: 41 54 55 53 5f 43 52 45 41 54 45 44 2c 0d 0a 09 ATUS_CREATED,...
3940: 48 54 54 50 5f 53 54 41 54 55 53 5f 41 43 43 45 HTTP_STATUS_ACCE
3950: 50 54 45 44 2c 0d 0a 09 48 54 54 50 5f 53 54 41 PTED,...HTTP_STA
3960: 54 55 53 5f 50 41 52 54 49 41 4c 2c 0d 0a 09 48 TUS_PARTIAL,...H
3970: 54 54 50 5f 53 54 41 54 55 53 5f 4e 4f 5f 43 4f TTP_STATUS_NO_CO
3980: 4e 54 45 4e 54 2c 20 20 20 20 20 2f 2f 20 3d 20 NTENT, // =
3990: 32 30 34 0d 0a 09 48 54 54 50 5f 53 54 41 54 55 204...HTTP_STATU
39a0: 53 5f 41 4d 42 49 47 55 4f 55 53 20 20 20 20 20 S_AMBIGUOUS
39b0: 20 20 20 20 20 3d 20 33 30 30 2c 0d 0a 09 48 54 = 300,...HT
39c0: 54 50 5f 53 54 41 54 55 53 5f 4d 4f 56 45 44 2c TP_STATUS_MOVED,
39d0: 0d 0a 09 48 54 54 50 5f 53 54 41 54 55 53 5f 52 ...HTTP_STATUS_R
39e0: 45 44 49 52 45 43 54 2c 0d 0a 09 48 54 54 50 5f EDIRECT,...HTTP_
39f0: 53 54 41 54 55 53 5f 52 45 44 49 52 45 43 54 5f STATUS_REDIRECT_
3a00: 4d 45 54 48 4f 44 2c 0d 0a 09 48 54 54 50 5f 53 METHOD,...HTTP_S
3a10: 54 41 54 55 53 5f 4e 4f 54 5f 4d 4f 44 49 46 49 TATUS_NOT_MODIFI
3a20: 45 44 2c 20 20 20 2f 2f 20 3d 20 33 30 34 0d 0a ED, // = 304..
3a30: 09 48 54 54 50 5f 53 54 41 54 55 53 5f 42 41 44 .HTTP_STATUS_BAD
3a40: 5f 52 45 51 55 45 53 54 20 20 20 20 20 20 20 20 _REQUEST
3a50: 3d 20 34 30 30 2c 0d 0a 09 48 54 54 50 5f 53 54 = 400,...HTTP_ST
3a60: 41 54 55 53 5f 44 45 4e 49 45 44 2c 0d 0a 09 48 ATUS_DENIED,...H
3a70: 54 54 50 5f 53 54 41 54 55 53 5f 50 41 59 4d 45 TTP_STATUS_PAYME
3a80: 4e 54 5f 52 45 51 2c 0d 0a 09 48 54 54 50 5f 53 NT_REQ,...HTTP_S
3a90: 54 41 54 55 53 5f 46 4f 52 42 49 44 44 45 4e 2c TATUS_FORBIDDEN,
3aa0: 0d 0a 09 48 54 54 50 5f 53 54 41 54 55 53 5f 4e ...HTTP_STATUS_N
3ab0: 4f 54 5f 46 4f 55 4e 44 2c 0d 0a 09 48 54 54 50 OT_FOUND,...HTTP
3ac0: 5f 53 54 41 54 55 53 5f 42 41 44 5f 4d 45 54 48 _STATUS_BAD_METH
3ad0: 4f 44 2c 0d 0a 09 48 54 54 50 5f 53 54 41 54 55 OD,...HTTP_STATU
3ae0: 53 5f 4e 4f 4e 45 5f 41 43 43 45 50 54 41 42 4c S_NONE_ACCEPTABL
3af0: 45 2c 0d 0a 09 48 54 54 50 5f 53 54 41 54 55 53 E,...HTTP_STATUS
3b00: 5f 50 52 4f 58 59 5f 41 55 54 48 5f 52 45 51 2c _PROXY_AUTH_REQ,
3b10: 0d 0a 09 48 54 54 50 5f 53 54 41 54 55 53 5f 52 ...HTTP_STATUS_R
3b20: 45 51 55 45 53 54 5f 54 49 4d 45 4f 55 54 2c 0d EQUEST_TIMEOUT,.
3b30: 0a 09 48 54 54 50 5f 53 54 41 54 55 53 5f 43 4f ..HTTP_STATUS_CO
3b40: 4e 46 4c 49 43 54 2c 0d 0a 09 48 54 54 50 5f 53 NFLICT,...HTTP_S
3b50: 54 41 54 55 53 5f 47 4f 4e 45 2c 0d 0a 09 48 54 TATUS_GONE,...HT
3b60: 54 50 5f 53 54 41 54 55 53 5f 41 55 54 48 5f 52 TP_STATUS_AUTH_R
3b70: 45 46 55 53 45 44 2c 20 20 20 2f 2f 20 3d 20 34 EFUSED, // = 4
3b80: 31 31 0d 0a 09 48 54 54 50 5f 53 54 41 54 55 53 11...HTTP_STATUS
3b90: 5f 53 45 52 56 45 52 5f 45 52 52 4f 52 20 20 20 _SERVER_ERROR
3ba0: 20 20 20 20 3d 20 35 30 30 2c 0d 0a 09 48 54 54 = 500,...HTT
3bb0: 50 5f 53 54 41 54 55 53 5f 4e 4f 54 5f 53 55 50 P_STATUS_NOT_SUP
3bc0: 50 4f 52 54 45 44 2c 0d 0a 09 48 54 54 50 5f 53 PORTED,...HTTP_S
3bd0: 54 41 54 55 53 5f 42 41 44 5f 47 41 54 45 57 41 TATUS_BAD_GATEWA
3be0: 59 2c 0d 0a 09 48 54 54 50 5f 53 54 41 54 55 53 Y,...HTTP_STATUS
3bf0: 5f 53 45 52 56 49 43 45 5f 55 4e 41 56 41 49 4c _SERVICE_UNAVAIL
3c00: 2c 0d 0a 09 48 54 54 50 5f 53 54 41 54 55 53 5f ,...HTTP_STATUS_
3c10: 47 41 54 45 57 41 59 5f 54 49 4d 45 4f 55 54 20 GATEWAY_TIMEOUT
3c20: 2f 2f 20 3d 20 35 30 34 0d 0a 7d 0d 0a 0d 0a 65 // = 504..}....e
3c30: 6e 75 6d 20 7b 0d 0a 09 49 4e 54 45 52 4e 45 54 num {...INTERNET
3c40: 5f 50 52 45 46 45 54 43 48 5f 50 52 4f 47 52 45 _PREFETCH_PROGRE
3c50: 53 53 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 50 SS,...INTERNET_P
3c60: 52 45 46 45 54 43 48 5f 43 4f 4d 50 4c 45 54 45 REFETCH_COMPLETE
3c70: 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 50 52 45 ,...INTERNET_PRE
3c80: 46 45 54 43 48 5f 41 42 4f 52 54 45 44 0d 0a 7d FETCH_ABORTED..}
3c90: 0d 0a 0d 0a 63 6f 6e 73 74 20 46 4c 41 47 53 5f ....const FLAGS_
3ca0: 45 52 52 4f 52 5f 55 49 5f 46 49 4c 54 45 52 5f ERROR_UI_FILTER_
3cb0: 46 4f 52 5f 45 52 52 4f 52 53 20 20 20 20 3d 20 FOR_ERRORS =
3cc0: 30 78 30 31 3b 0d 0a 63 6f 6e 73 74 20 46 4c 41 0x01;..const FLA
3cd0: 47 53 5f 45 52 52 4f 52 5f 55 49 5f 46 4c 41 47 GS_ERROR_UI_FLAG
3ce0: 53 5f 43 48 41 4e 47 45 5f 4f 50 54 49 4f 4e 53 S_CHANGE_OPTIONS
3cf0: 20 3d 20 30 78 30 32 3b 0d 0a 63 6f 6e 73 74 20 = 0x02;..const
3d00: 46 4c 41 47 53 5f 45 52 52 4f 52 5f 55 49 5f 46 FLAGS_ERROR_UI_F
3d10: 4c 41 47 53 5f 47 45 4e 45 52 41 54 45 5f 44 41 LAGS_GENERATE_DA
3d20: 54 41 20 20 3d 20 30 78 30 34 3b 0d 0a 63 6f 6e TA = 0x04;..con
3d30: 73 74 20 46 4c 41 47 53 5f 45 52 52 4f 52 5f 55 st FLAGS_ERROR_U
3d40: 49 5f 46 4c 41 47 53 5f 4e 4f 5f 55 49 20 20 20 I_FLAGS_NO_UI
3d50: 20 20 20 20 20 20 20 3d 20 30 78 30 38 3b 0d 0a = 0x08;..
3d60: 0d 0a 63 6f 6e 73 74 20 44 57 4f 52 44 0d 0a 09 ..const DWORD...
3d70: 48 54 54 50 5f 41 44 44 52 45 51 5f 49 4e 44 45 HTTP_ADDREQ_INDE
3d80: 58 5f 4d 41 53 4b 20 20 20 20 20 20 20 20 20 20 X_MASK
3d90: 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 = 0x000
3da0: 30 46 46 46 46 2c 0d 0a 09 48 54 54 50 5f 41 44 0FFFF,...HTTP_AD
3db0: 44 52 45 51 5f 46 4c 41 47 53 5f 4d 41 53 4b 20 DREQ_FLAGS_MASK
3dc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
3dd0: 20 20 3d 20 30 78 46 46 46 46 30 30 30 30 2c 0d = 0xFFFF0000,.
3de0: 0a 09 48 54 54 50 5f 41 44 44 52 45 51 5f 46 4c ..HTTP_ADDREQ_FL
3df0: 41 47 5f 43 4f 41 4c 45 53 43 45 5f 57 49 54 48 AG_COALESCE_WITH
3e00: 5f 53 45 4d 49 43 4f 4c 4f 4e 20 3d 20 30 78 30 _SEMICOLON = 0x0
3e10: 31 30 30 30 30 30 30 2c 0d 0a 09 48 54 54 50 5f 1000000,...HTTP_
3e20: 41 44 44 52 45 51 5f 46 4c 41 47 5f 41 44 44 5f ADDREQ_FLAG_ADD_
3e30: 49 46 5f 4e 45 57 20 20 20 20 20 20 20 20 20 20 IF_NEW
3e40: 20 20 20 20 3d 20 30 78 31 30 30 30 30 30 30 30 = 0x10000000
3e50: 2c 0d 0a 09 48 54 54 50 5f 41 44 44 52 45 51 5f ,...HTTP_ADDREQ_
3e60: 46 4c 41 47 5f 41 44 44 20 20 20 20 20 20 20 20 FLAG_ADD
3e70: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 = 0
3e80: 78 32 30 30 30 30 30 30 30 2c 0d 0a 09 48 54 54 x20000000,...HTT
3e90: 50 5f 41 44 44 52 45 51 5f 46 4c 41 47 5f 43 4f P_ADDREQ_FLAG_CO
3ea0: 41 4c 45 53 43 45 5f 57 49 54 48 5f 43 4f 4d 4d ALESCE_WITH_COMM
3eb0: 41 20 20 20 20 20 3d 20 30 78 34 30 30 30 30 30 A = 0x400000
3ec0: 30 30 2c 0d 0a 09 48 54 54 50 5f 41 44 44 52 45 00,...HTTP_ADDRE
3ed0: 51 5f 46 4c 41 47 5f 43 4f 41 4c 45 53 43 45 20 Q_FLAG_COALESCE
3ee0: 20 20 20 20 20 20 20 20 20 3d 20 48 54 54 50 5f = HTTP_
3ef0: 41 44 44 52 45 51 5f 46 4c 41 47 5f 43 4f 41 4c ADDREQ_FLAG_COAL
3f00: 45 53 43 45 5f 57 49 54 48 5f 43 4f 4d 4d 41 2c ESCE_WITH_COMMA,
3f10: 0d 0a 09 48 54 54 50 5f 41 44 44 52 45 51 5f 46 ...HTTP_ADDREQ_F
3f20: 4c 41 47 5f 52 45 50 4c 41 43 45 20 20 20 20 20 LAG_REPLACE
3f30: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 = 0x
3f40: 38 30 30 30 30 30 30 30 3b 0d 0a 0d 0a 65 6e 75 80000000;....enu
3f50: 6d 20 7b 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 45 m {...INTERNET_E
3f60: 52 52 4f 52 5f 42 41 53 45 20 20 20 20 20 20 20 RROR_BASE
3f70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
3f80: 3d 20 31 32 30 30 30 2c 0d 0a 09 45 52 52 4f 52 = 12000,...ERROR
3f90: 5f 49 4e 54 45 52 4e 45 54 5f 4f 55 54 5f 4f 46 _INTERNET_OUT_OF
3fa0: 5f 48 41 4e 44 4c 45 53 2c 0d 0a 09 45 52 52 4f _HANDLES,...ERRO
3fb0: 52 5f 49 4e 54 45 52 4e 45 54 5f 54 49 4d 45 4f R_INTERNET_TIMEO
3fc0: 55 54 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 UT,...ERROR_INTE
3fd0: 52 4e 45 54 5f 45 58 54 45 4e 44 45 44 5f 45 52 RNET_EXTENDED_ER
3fe0: 52 4f 52 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 ROR,...ERROR_INT
3ff0: 45 52 4e 45 54 5f 49 4e 54 45 52 4e 41 4c 5f 45 ERNET_INTERNAL_E
4000: 52 52 4f 52 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e RROR,...ERROR_IN
4010: 54 45 52 4e 45 54 5f 49 4e 56 41 4c 49 44 5f 55 TERNET_INVALID_U
4020: 52 4c 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 RL,...ERROR_INTE
4030: 52 4e 45 54 5f 55 4e 52 45 43 4f 47 4e 49 5a 45 RNET_UNRECOGNIZE
4040: 44 5f 53 43 48 45 4d 45 2c 0d 0a 09 45 52 52 4f D_SCHEME,...ERRO
4050: 52 5f 49 4e 54 45 52 4e 45 54 5f 4e 41 4d 45 5f R_INTERNET_NAME_
4060: 4e 4f 54 5f 52 45 53 4f 4c 56 45 44 2c 0d 0a 09 NOT_RESOLVED,...
4070: 45 52 52 4f 52 5f 49 4e 54 45 52 4e 45 54 5f 50 ERROR_INTERNET_P
4080: 52 4f 54 4f 43 4f 4c 5f 4e 4f 54 5f 46 4f 55 4e ROTOCOL_NOT_FOUN
4090: 44 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 52 D,...ERROR_INTER
40a0: 4e 45 54 5f 49 4e 56 41 4c 49 44 5f 4f 50 54 49 NET_INVALID_OPTI
40b0: 4f 4e 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 ON,...ERROR_INTE
40c0: 52 4e 45 54 5f 42 41 44 5f 4f 50 54 49 4f 4e 5f RNET_BAD_OPTION_
40d0: 4c 45 4e 47 54 48 2c 0d 0a 09 45 52 52 4f 52 5f LENGTH,...ERROR_
40e0: 49 4e 54 45 52 4e 45 54 5f 4f 50 54 49 4f 4e 5f INTERNET_OPTION_
40f0: 4e 4f 54 5f 53 45 54 54 41 42 4c 45 2c 0d 0a 09 NOT_SETTABLE,...
4100: 45 52 52 4f 52 5f 49 4e 54 45 52 4e 45 54 5f 53 ERROR_INTERNET_S
4110: 48 55 54 44 4f 57 4e 2c 0d 0a 09 45 52 52 4f 52 HUTDOWN,...ERROR
4120: 5f 49 4e 54 45 52 4e 45 54 5f 49 4e 43 4f 52 52 _INTERNET_INCORR
4130: 45 43 54 5f 55 53 45 52 5f 4e 41 4d 45 2c 0d 0a ECT_USER_NAME,..
4140: 09 45 52 52 4f 52 5f 49 4e 54 45 52 4e 45 54 5f .ERROR_INTERNET_
4150: 49 4e 43 4f 52 52 45 43 54 5f 50 41 53 53 57 4f INCORRECT_PASSWO
4160: 52 44 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 RD,...ERROR_INTE
4170: 52 4e 45 54 5f 4c 4f 47 49 4e 5f 46 41 49 4c 55 RNET_LOGIN_FAILU
4180: 52 45 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 RE,...ERROR_INTE
4190: 52 4e 45 54 5f 49 4e 56 41 4c 49 44 5f 4f 50 45 RNET_INVALID_OPE
41a0: 52 41 54 49 4f 4e 2c 0d 0a 09 45 52 52 4f 52 5f RATION,...ERROR_
41b0: 49 4e 54 45 52 4e 45 54 5f 4f 50 45 52 41 54 49 INTERNET_OPERATI
41c0: 4f 4e 5f 43 41 4e 43 45 4c 4c 45 44 2c 0d 0a 09 ON_CANCELLED,...
41d0: 45 52 52 4f 52 5f 49 4e 54 45 52 4e 45 54 5f 49 ERROR_INTERNET_I
41e0: 4e 43 4f 52 52 45 43 54 5f 48 41 4e 44 4c 45 5f NCORRECT_HANDLE_
41f0: 54 59 50 45 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e TYPE,...ERROR_IN
4200: 54 45 52 4e 45 54 5f 49 4e 43 4f 52 52 45 43 54 TERNET_INCORRECT
4210: 5f 48 41 4e 44 4c 45 5f 53 54 41 54 45 2c 0d 0a _HANDLE_STATE,..
4220: 09 45 52 52 4f 52 5f 49 4e 54 45 52 4e 45 54 5f .ERROR_INTERNET_
4230: 4e 4f 54 5f 50 52 4f 58 59 5f 52 45 51 55 45 53 NOT_PROXY_REQUES
4240: 54 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 52 T,...ERROR_INTER
4250: 4e 45 54 5f 52 45 47 49 53 54 52 59 5f 56 41 4c NET_REGISTRY_VAL
4260: 55 45 5f 4e 4f 54 5f 46 4f 55 4e 44 2c 0d 0a 09 UE_NOT_FOUND,...
4270: 45 52 52 4f 52 5f 49 4e 54 45 52 4e 45 54 5f 42 ERROR_INTERNET_B
4280: 41 44 5f 52 45 47 49 53 54 52 59 5f 50 41 52 41 AD_REGISTRY_PARA
4290: 4d 45 54 45 52 2c 0d 0a 09 45 52 52 4f 52 5f 49 METER,...ERROR_I
42a0: 4e 54 45 52 4e 45 54 5f 4e 4f 5f 44 49 52 45 43 NTERNET_NO_DIREC
42b0: 54 5f 41 43 43 45 53 53 2c 0d 0a 09 45 52 52 4f T_ACCESS,...ERRO
42c0: 52 5f 49 4e 54 45 52 4e 45 54 5f 4e 4f 5f 43 4f R_INTERNET_NO_CO
42d0: 4e 54 45 58 54 2c 0d 0a 09 45 52 52 4f 52 5f 49 NTEXT,...ERROR_I
42e0: 4e 54 45 52 4e 45 54 5f 4e 4f 5f 43 41 4c 4c 42 NTERNET_NO_CALLB
42f0: 41 43 4b 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 ACK,...ERROR_INT
4300: 45 52 4e 45 54 5f 52 45 51 55 45 53 54 5f 50 45 ERNET_REQUEST_PE
4310: 4e 44 49 4e 47 2c 0d 0a 09 45 52 52 4f 52 5f 49 NDING,...ERROR_I
4320: 4e 54 45 52 4e 45 54 5f 49 4e 43 4f 52 52 45 43 NTERNET_INCORREC
4330: 54 5f 46 4f 52 4d 41 54 2c 0d 0a 09 45 52 52 4f T_FORMAT,...ERRO
4340: 52 5f 49 4e 54 45 52 4e 45 54 5f 49 54 45 4d 5f R_INTERNET_ITEM_
4350: 4e 4f 54 5f 46 4f 55 4e 44 2c 0d 0a 09 45 52 52 NOT_FOUND,...ERR
4360: 4f 52 5f 49 4e 54 45 52 4e 45 54 5f 43 41 4e 4e OR_INTERNET_CANN
4370: 4f 54 5f 43 4f 4e 4e 45 43 54 2c 0d 0a 09 45 52 OT_CONNECT,...ER
4380: 52 4f 52 5f 49 4e 54 45 52 4e 45 54 5f 43 4f 4e ROR_INTERNET_CON
4390: 4e 45 43 54 49 4f 4e 5f 41 42 4f 52 54 45 44 2c NECTION_ABORTED,
43a0: 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 52 4e 45 ...ERROR_INTERNE
43b0: 54 5f 43 4f 4e 4e 45 43 54 49 4f 4e 5f 52 45 53 T_CONNECTION_RES
43c0: 45 54 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 ET,...ERROR_INTE
43d0: 52 4e 45 54 5f 46 4f 52 43 45 5f 52 45 54 52 59 RNET_FORCE_RETRY
43e0: 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 52 4e ,...ERROR_INTERN
43f0: 45 54 5f 49 4e 56 41 4c 49 44 5f 50 52 4f 58 59 ET_INVALID_PROXY
4400: 5f 52 45 51 55 45 53 54 2c 0d 0a 09 45 52 52 4f _REQUEST,...ERRO
4410: 52 5f 49 4e 54 45 52 4e 45 54 5f 4e 45 45 44 5f R_INTERNET_NEED_
4420: 55 49 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 UI,
4430: 20 20 20 2f 2f 20 3d 20 49 4e 54 45 52 4e 45 54 // = INTERNET
4440: 5f 45 52 52 4f 52 5f 42 41 53 45 20 2b 20 20 33 _ERROR_BASE + 3
4450: 34 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 52 4e 4...ERROR_INTERN
4460: 45 54 5f 48 41 4e 44 4c 45 5f 45 58 49 53 54 53 ET_HANDLE_EXISTS
4470: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 =
4480: 49 4e 54 45 52 4e 45 54 5f 45 52 52 4f 52 5f 42 INTERNET_ERROR_B
4490: 41 53 45 20 2b 20 20 33 36 2c 0d 0a 09 45 52 52 ASE + 36,...ERR
44a0: 4f 52 5f 49 4e 54 45 52 4e 45 54 5f 53 45 43 5f OR_INTERNET_SEC_
44b0: 43 45 52 54 5f 44 41 54 45 5f 49 4e 56 41 4c 49 CERT_DATE_INVALI
44c0: 44 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 52 D,...ERROR_INTER
44d0: 4e 45 54 5f 53 45 43 5f 43 45 52 54 5f 43 4e 5f NET_SEC_CERT_CN_
44e0: 49 4e 56 41 4c 49 44 2c 0d 0a 09 45 52 52 4f 52 INVALID,...ERROR
44f0: 5f 49 4e 54 45 52 4e 45 54 5f 48 54 54 50 5f 54 _INTERNET_HTTP_T
4500: 4f 5f 48 54 54 50 53 5f 4f 4e 5f 52 45 44 49 52 O_HTTPS_ON_REDIR
4510: 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 52 4e ,...ERROR_INTERN
4520: 45 54 5f 48 54 54 50 53 5f 54 4f 5f 48 54 54 50 ET_HTTPS_TO_HTTP
4530: 5f 4f 4e 5f 52 45 44 49 52 2c 0d 0a 09 45 52 52 _ON_REDIR,...ERR
4540: 4f 52 5f 49 4e 54 45 52 4e 45 54 5f 4d 49 58 45 OR_INTERNET_MIXE
4550: 44 5f 53 45 43 55 52 49 54 59 2c 0d 0a 09 45 52 D_SECURITY,...ER
4560: 52 4f 52 5f 49 4e 54 45 52 4e 45 54 5f 43 48 47 ROR_INTERNET_CHG
4570: 5f 50 4f 53 54 5f 49 53 5f 4e 4f 4e 5f 53 45 43 _POST_IS_NON_SEC
4580: 55 52 45 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 URE,...ERROR_INT
4590: 45 52 4e 45 54 5f 50 4f 53 54 5f 49 53 5f 4e 4f ERNET_POST_IS_NO
45a0: 4e 5f 53 45 43 55 52 45 2c 0d 0a 09 45 52 52 4f N_SECURE,...ERRO
45b0: 52 5f 49 4e 54 45 52 4e 45 54 5f 43 4c 49 45 4e R_INTERNET_CLIEN
45c0: 54 5f 41 55 54 48 5f 43 45 52 54 5f 4e 45 45 44 T_AUTH_CERT_NEED
45d0: 45 44 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 ED,...ERROR_INTE
45e0: 52 4e 45 54 5f 49 4e 56 41 4c 49 44 5f 43 41 2c RNET_INVALID_CA,
45f0: 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 52 4e 45 ...ERROR_INTERNE
4600: 54 5f 43 4c 49 45 4e 54 5f 41 55 54 48 5f 4e 4f T_CLIENT_AUTH_NO
4610: 54 5f 53 45 54 55 50 2c 0d 0a 09 45 52 52 4f 52 T_SETUP,...ERROR
4620: 5f 49 4e 54 45 52 4e 45 54 5f 41 53 59 4e 43 5f _INTERNET_ASYNC_
4630: 54 48 52 45 41 44 5f 46 41 49 4c 45 44 2c 0d 0a THREAD_FAILED,..
4640: 09 45 52 52 4f 52 5f 49 4e 54 45 52 4e 45 54 5f .ERROR_INTERNET_
4650: 52 45 44 49 52 45 43 54 5f 53 43 48 45 4d 45 5f REDIRECT_SCHEME_
4660: 43 48 41 4e 47 45 2c 20 2f 2f 20 3d 20 49 4e 54 CHANGE, // = INT
4670: 45 52 4e 45 54 5f 45 52 52 4f 52 5f 42 41 53 45 ERNET_ERROR_BASE
4680: 20 2b 20 20 34 38 0d 0a 0d 0a 09 45 52 52 4f 52 + 48.....ERROR
4690: 5f 46 54 50 5f 54 52 41 4e 53 46 45 52 5f 49 4e _FTP_TRANSFER_IN
46a0: 5f 50 52 4f 47 52 45 53 53 20 20 20 20 20 20 20 _PROGRESS
46b0: 20 20 20 20 20 3d 20 49 4e 54 45 52 4e 45 54 5f = INTERNET_
46c0: 45 52 52 4f 52 5f 42 41 53 45 20 2b 20 31 31 30 ERROR_BASE + 110
46d0: 2c 0d 0a 09 45 52 52 4f 52 5f 46 54 50 5f 44 52 ,...ERROR_FTP_DR
46e0: 4f 50 50 45 44 2c 20 20 20 20 20 20 20 20 20 20 OPPED,
46f0: 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 3d 20 // =
4700: 49 4e 54 45 52 4e 45 54 5f 45 52 52 4f 52 5f 42 INTERNET_ERROR_B
4710: 41 53 45 20 2b 20 31 31 31 0d 0a 09 45 52 52 4f ASE + 111...ERRO
4720: 52 5f 47 4f 50 48 45 52 5f 50 52 4f 54 4f 43 4f R_GOPHER_PROTOCO
4730: 4c 5f 45 52 52 4f 52 20 20 20 20 20 20 20 20 20 L_ERROR
4740: 20 20 20 20 20 20 3d 20 49 4e 54 45 52 4e 45 54 = INTERNET
4750: 5f 45 52 52 4f 52 5f 42 41 53 45 20 2b 20 31 33 _ERROR_BASE + 13
4760: 30 2c 0d 0a 09 45 52 52 4f 52 5f 47 4f 50 48 45 0,...ERROR_GOPHE
4770: 52 5f 4e 4f 54 5f 46 49 4c 45 2c 0d 0a 09 45 52 R_NOT_FILE,...ER
4780: 52 4f 52 5f 47 4f 50 48 45 52 5f 44 41 54 41 5f ROR_GOPHER_DATA_
4790: 45 52 52 4f 52 2c 0d 0a 09 45 52 52 4f 52 5f 47 ERROR,...ERROR_G
47a0: 4f 50 48 45 52 5f 45 4e 44 5f 4f 46 5f 44 41 54 OPHER_END_OF_DAT
47b0: 41 2c 0d 0a 09 45 52 52 4f 52 5f 47 4f 50 48 45 A,...ERROR_GOPHE
47c0: 52 5f 49 4e 56 41 4c 49 44 5f 4c 4f 43 41 54 4f R_INVALID_LOCATO
47d0: 52 2c 0d 0a 09 45 52 52 4f 52 5f 47 4f 50 48 45 R,...ERROR_GOPHE
47e0: 52 5f 49 4e 43 4f 52 52 45 43 54 5f 4c 4f 43 41 R_INCORRECT_LOCA
47f0: 54 4f 52 5f 54 59 50 45 2c 0d 0a 09 45 52 52 4f TOR_TYPE,...ERRO
4800: 52 5f 47 4f 50 48 45 52 5f 4e 4f 54 5f 47 4f 50 R_GOPHER_NOT_GOP
4810: 48 45 52 5f 50 4c 55 53 2c 0d 0a 09 45 52 52 4f HER_PLUS,...ERRO
4820: 52 5f 47 4f 50 48 45 52 5f 41 54 54 52 49 42 55 R_GOPHER_ATTRIBU
4830: 54 45 5f 4e 4f 54 5f 46 4f 55 4e 44 2c 0d 0a 09 TE_NOT_FOUND,...
4840: 45 52 52 4f 52 5f 47 4f 50 48 45 52 5f 55 4e 4b ERROR_GOPHER_UNK
4850: 4e 4f 57 4e 5f 4c 4f 43 41 54 4f 52 2c 20 20 20 NOWN_LOCATOR,
4860: 20 20 20 20 20 20 20 2f 2f 20 3d 20 49 4e 54 45 // = INTE
4870: 52 4e 45 54 5f 45 52 52 4f 52 5f 42 41 53 45 20 RNET_ERROR_BASE
4880: 2b 20 31 33 38 2c 0d 0a 09 45 52 52 4f 52 5f 48 + 138,...ERROR_H
4890: 54 54 50 5f 48 45 41 44 45 52 5f 4e 4f 54 5f 46 TTP_HEADER_NOT_F
48a0: 4f 55 4e 44 20 20 20 20 20 20 20 20 20 20 20 20 OUND
48b0: 20 20 20 3d 20 49 4e 54 45 52 4e 45 54 5f 45 52 = INTERNET_ER
48c0: 52 4f 52 5f 42 41 53 45 20 2b 20 31 35 30 2c 0d ROR_BASE + 150,.
48d0: 0a 09 45 52 52 4f 52 5f 48 54 54 50 5f 44 4f 57 ..ERROR_HTTP_DOW
48e0: 4e 4c 45 56 45 4c 5f 53 45 52 56 45 52 2c 0d 0a NLEVEL_SERVER,..
48f0: 09 45 52 52 4f 52 5f 48 54 54 50 5f 49 4e 56 41 .ERROR_HTTP_INVA
4900: 4c 49 44 5f 53 45 52 56 45 52 5f 52 45 53 50 4f LID_SERVER_RESPO
4910: 4e 53 45 2c 0d 0a 09 45 52 52 4f 52 5f 48 54 54 NSE,...ERROR_HTT
4920: 50 5f 49 4e 56 41 4c 49 44 5f 48 45 41 44 45 52 P_INVALID_HEADER
4930: 2c 0d 0a 09 45 52 52 4f 52 5f 48 54 54 50 5f 49 ,...ERROR_HTTP_I
4940: 4e 56 41 4c 49 44 5f 51 55 45 52 59 5f 52 45 51 NVALID_QUERY_REQ
4950: 55 45 53 54 2c 0d 0a 09 45 52 52 4f 52 5f 48 54 UEST,...ERROR_HT
4960: 54 50 5f 48 45 41 44 45 52 5f 41 4c 52 45 41 44 TP_HEADER_ALREAD
4970: 59 5f 45 58 49 53 54 53 2c 0d 0a 09 45 52 52 4f Y_EXISTS,...ERRO
4980: 52 5f 48 54 54 50 5f 52 45 44 49 52 45 43 54 5f R_HTTP_REDIRECT_
4990: 46 41 49 4c 45 44 2c 0d 0a 09 45 52 52 4f 52 5f FAILED,...ERROR_
49a0: 49 4e 54 45 52 4e 45 54 5f 53 45 43 55 52 49 54 INTERNET_SECURIT
49b0: 59 5f 43 48 41 4e 4e 45 4c 5f 45 52 52 4f 52 2c Y_CHANNEL_ERROR,
49c0: 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 52 4e 45 ...ERROR_INTERNE
49d0: 54 5f 55 4e 41 42 4c 45 5f 54 4f 5f 43 41 43 48 T_UNABLE_TO_CACH
49e0: 45 5f 46 49 4c 45 2c 0d 0a 09 45 52 52 4f 52 5f E_FILE,...ERROR_
49f0: 49 4e 54 45 52 4e 45 54 5f 54 43 50 49 50 5f 4e INTERNET_TCPIP_N
4a00: 4f 54 5f 49 4e 53 54 41 4c 4c 45 44 2c 0d 0a 09 OT_INSTALLED,...
4a10: 45 52 52 4f 52 5f 48 54 54 50 5f 4e 4f 54 5f 52 ERROR_HTTP_NOT_R
4a20: 45 44 49 52 45 43 54 45 44 2c 20 20 20 20 20 20 EDIRECTED,
4a30: 20 20 20 20 20 20 20 2f 2f 20 3d 20 49 4e 54 45 // = INTE
4a40: 52 4e 45 54 5f 45 52 52 4f 52 5f 42 41 53 45 20 RNET_ERROR_BASE
4a50: 2b 20 31 36 30 0d 0a 09 2f 2f 20 77 68 79 3f 0d + 160...// why?.
4a60: 0a 09 49 4e 54 45 52 4e 45 54 5f 45 52 52 4f 52 ..INTERNET_ERROR
4a70: 5f 4c 41 53 54 20 20 20 20 20 20 20 20 20 20 20 _LAST
4a80: 20 20 20 20 20 20 20 3d 20 45 52 52 4f 52 5f 49 = ERROR_I
4a90: 4e 54 45 52 4e 45 54 5f 54 43 50 49 50 5f 4e 4f NTERNET_TCPIP_NO
4aa0: 54 5f 49 4e 53 54 41 4c 4c 45 44 0d 0a 7d 0d 0a T_INSTALLED..}..
4ab0: 0d 0a 0d 0a 63 6f 6e 73 74 20 4e 4f 52 4d 41 4c ....const NORMAL
4ac0: 5f 43 41 43 48 45 5f 45 4e 54 52 59 20 20 20 20 _CACHE_ENTRY
4ad0: 20 3d 20 30 78 30 30 30 30 30 31 3b 0d 0a 63 6f = 0x000001;..co
4ae0: 6e 73 74 20 53 54 41 42 4c 45 5f 43 41 43 48 45 nst STABLE_CACHE
4af0: 5f 45 4e 54 52 59 20 20 20 20 20 3d 20 30 78 30 _ENTRY = 0x0
4b00: 30 30 30 30 32 3b 0d 0a 63 6f 6e 73 74 20 53 54 00002;..const ST
4b10: 49 43 4b 59 5f 43 41 43 48 45 5f 45 4e 54 52 59 ICKY_CACHE_ENTRY
4b20: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 34 3b = 0x000004;
4b30: 0d 0a 63 6f 6e 73 74 20 53 50 41 52 53 45 5f 43 ..const SPARSE_C
4b40: 41 43 48 45 5f 45 4e 54 52 59 20 20 20 20 20 3d ACHE_ENTRY =
4b50: 20 30 78 30 31 30 30 30 30 3b 0d 0a 63 6f 6e 73 0x010000;..cons
4b60: 74 20 4f 43 58 5f 43 41 43 48 45 5f 45 4e 54 52 t OCX_CACHE_ENTR
4b70: 59 20 20 20 20 20 20 20 20 3d 20 30 78 30 32 30 Y = 0x020
4b80: 30 30 30 3b 0d 0a 63 6f 6e 73 74 20 43 4f 4f 4b 000;..const COOK
4b90: 49 45 5f 43 41 43 48 45 5f 45 4e 54 52 59 20 20 IE_CACHE_ENTRY
4ba0: 20 20 20 3d 20 30 78 31 30 30 30 30 30 3b 0d 0a = 0x100000;..
4bb0: 63 6f 6e 73 74 20 55 52 4c 48 49 53 54 4f 52 59 const URLHISTORY
4bc0: 5f 43 41 43 48 45 5f 45 4e 54 52 59 20 3d 20 30 _CACHE_ENTRY = 0
4bd0: 78 32 30 30 30 30 30 3b 0d 0a 0d 0a 63 6f 6e 73 x200000;....cons
4be0: 74 20 43 41 43 48 45 5f 45 4e 54 52 59 5f 41 54 t CACHE_ENTRY_AT
4bf0: 54 52 49 42 55 54 45 5f 46 43 20 20 3d 20 30 78 TRIBUTE_FC = 0x
4c00: 30 30 30 34 3b 0d 0a 63 6f 6e 73 74 20 43 41 43 0004;..const CAC
4c10: 48 45 5f 45 4e 54 52 59 5f 48 49 54 52 41 54 45 HE_ENTRY_HITRATE
4c20: 5f 46 43 20 20 20 20 3d 20 30 78 30 30 31 30 3b _FC = 0x0010;
4c30: 0d 0a 63 6f 6e 73 74 20 43 41 43 48 45 5f 45 4e ..const CACHE_EN
4c40: 54 52 59 5f 4d 4f 44 54 49 4d 45 5f 46 43 20 20 TRY_MODTIME_FC
4c50: 20 20 3d 20 30 78 30 30 34 30 3b 0d 0a 63 6f 6e = 0x0040;..con
4c60: 73 74 20 43 41 43 48 45 5f 45 4e 54 52 59 5f 45 st CACHE_ENTRY_E
4c70: 58 50 54 49 4d 45 5f 46 43 20 20 20 20 3d 20 30 XPTIME_FC = 0
4c80: 78 30 30 38 30 3b 0d 0a 63 6f 6e 73 74 20 43 41 x0080;..const CA
4c90: 43 48 45 5f 45 4e 54 52 59 5f 41 43 43 54 49 4d CHE_ENTRY_ACCTIM
4ca0: 45 5f 46 43 20 20 20 20 3d 20 30 78 30 31 30 30 E_FC = 0x0100
4cb0: 3b 0d 0a 63 6f 6e 73 74 20 43 41 43 48 45 5f 45 ;..const CACHE_E
4cc0: 4e 54 52 59 5f 53 59 4e 43 54 49 4d 45 5f 46 43 NTRY_SYNCTIME_FC
4cd0: 20 20 20 3d 20 30 78 30 32 30 30 3b 0d 0a 63 6f = 0x0200;..co
4ce0: 6e 73 74 20 43 41 43 48 45 5f 45 4e 54 52 59 5f nst CACHE_ENTRY_
4cf0: 48 45 41 44 45 52 49 4e 46 4f 5f 46 43 20 3d 20 HEADERINFO_FC =
4d00: 30 78 30 34 30 30 3b 0d 0a 0d 0a 65 6e 75 6d 20 0x0400;....enum
4d10: 7b 0d 0a 09 57 49 4e 49 4e 45 54 5f 41 50 49 5f {...WININET_API_
4d20: 46 4c 41 47 5f 41 53 59 4e 43 20 20 20 20 20 20 FLAG_ASYNC
4d30: 20 3d 20 31 2c 0d 0a 09 57 49 4e 49 4e 45 54 5f = 1,...WININET_
4d40: 41 50 49 5f 46 4c 41 47 5f 53 59 4e 43 20 20 20 API_FLAG_SYNC
4d50: 20 20 20 20 20 3d 20 34 2c 0d 0a 09 57 49 4e 49 = 4,...WINI
4d60: 4e 45 54 5f 41 50 49 5f 46 4c 41 47 5f 55 53 45 NET_API_FLAG_USE
4d70: 5f 43 4f 4e 54 45 58 54 20 3d 20 38 0d 0a 7d 0d _CONTEXT = 8..}.
4d80: 0a 0d 0a 2f 2f 20 46 49 58 4d 45 3a 20 68 6f 77 ...// FIXME: how
4d90: 20 73 68 6f 75 6c 64 20 74 68 65 73 65 20 72 65 should these re
4da0: 61 6c 6c 79 20 62 65 20 67 72 6f 75 70 65 64 3f ally be grouped?
4db0: 0d 0a 65 6e 75 6d 20 7b 0d 0a 09 49 52 46 5f 41 ..enum {...IRF_A
4dc0: 53 59 4e 43 20 20 20 20 20 20 20 3d 20 57 49 4e SYNC = WIN
4dd0: 49 4e 45 54 5f 41 50 49 5f 46 4c 41 47 5f 41 53 INET_API_FLAG_AS
4de0: 59 4e 43 2c 0d 0a 09 49 52 46 5f 53 59 4e 43 20 YNC,...IRF_SYNC
4df0: 20 20 20 20 20 20 20 3d 20 57 49 4e 49 4e 45 54 = WININET
4e00: 5f 41 50 49 5f 46 4c 41 47 5f 53 59 4e 43 2c 0d _API_FLAG_SYNC,.
4e10: 0a 09 49 52 46 5f 55 53 45 5f 43 4f 4e 54 45 58 ..IRF_USE_CONTEX
4e20: 54 20 3d 20 57 49 4e 49 4e 45 54 5f 41 50 49 5f T = WININET_API_
4e30: 46 4c 41 47 5f 55 53 45 5f 43 4f 4e 54 45 58 54 FLAG_USE_CONTEXT
4e40: 2c 0d 0a 7d 0d 0a 63 6f 6e 73 74 20 49 52 46 5f ,..}..const IRF_
4e50: 4e 4f 5f 57 41 49 54 20 3d 20 38 3b 0d 0a 0d 0a NO_WAIT = 8;....
4e60: 65 6e 75 6d 20 7b 0d 0a 09 48 53 52 5f 41 53 59 enum {...HSR_ASY
4e70: 4e 43 20 3d 20 57 49 4e 49 4e 45 54 5f 41 50 49 NC = WININET_API
4e80: 5f 46 4c 41 47 5f 41 53 59 4e 43 2c 0d 0a 09 48 _FLAG_ASYNC,...H
4e90: 53 52 5f 53 59 4e 43 20 3d 20 57 49 4e 49 4e 45 SR_SYNC = WININE
4ea0: 54 5f 41 50 49 5f 46 4c 41 47 5f 53 59 4e 43 2c T_API_FLAG_SYNC,
4eb0: 0d 0a 09 48 53 52 5f 55 53 45 5f 43 4f 4e 54 45 ...HSR_USE_CONTE
4ec0: 58 54 20 3d 20 57 49 4e 49 4e 45 54 5f 41 50 49 XT = WININET_API
4ed0: 5f 46 4c 41 47 5f 55 53 45 5f 43 4f 4e 54 45 58 _FLAG_USE_CONTEX
4ee0: 54 2c 0d 0a 7d 0d 0a 0d 0a 63 6f 6e 73 74 20 48 T,..}....const H
4ef0: 53 52 5f 49 4e 49 54 49 41 54 45 20 3d 20 20 38 SR_INITIATE = 8
4f00: 3b 0d 0a 63 6f 6e 73 74 20 48 53 52 5f 44 4f 57 ;..const HSR_DOW
4f10: 4e 4c 4f 41 44 20 3d 20 31 36 3b 0d 0a 63 6f 6e NLOAD = 16;..con
4f20: 73 74 20 48 53 52 5f 43 48 55 4e 4b 45 44 20 20 st HSR_CHUNKED
4f30: 3d 20 33 32 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 49 = 32;....const I
4f40: 4e 54 45 52 4e 45 54 5f 44 49 41 4c 5f 55 4e 41 NTERNET_DIAL_UNA
4f50: 54 54 45 4e 44 45 44 20 20 20 20 20 20 20 20 20 TTENDED
4f60: 20 20 20 20 20 3d 20 30 78 38 30 30 30 3b 0d 0a = 0x8000;..
4f70: 63 6f 6e 73 74 20 49 4e 54 45 52 4e 45 54 5f 44 const INTERNET_D
4f80: 49 41 4c 53 54 41 54 45 5f 44 49 53 43 4f 4e 4e IALSTATE_DISCONN
4f90: 45 43 54 45 44 20 20 20 20 20 20 20 3d 20 31 3b ECTED = 1;
4fa0: 0d 0a 63 6f 6e 73 74 20 49 4e 54 45 52 45 4e 54 ..const INTERENT
4fb0: 5f 47 4f 4f 4e 4c 49 4e 45 5f 52 45 46 52 45 53 _GOONLINE_REFRES
4fc0: 48 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 H =
4fd0: 31 3b 0d 0a 63 6f 6e 73 74 20 49 4e 54 45 52 45 1;..const INTERE
4fe0: 4e 54 5f 47 4f 4f 4e 4c 49 4e 45 5f 4d 41 53 4b NT_GOONLINE_MASK
4ff0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
5000: 3d 20 31 3b 0d 0a 63 6f 6e 73 74 20 49 4e 54 45 = 1;..const INTE
5010: 52 4e 45 54 5f 41 55 54 4f 44 49 41 4c 5f 46 4f RNET_AUTODIAL_FO
5020: 52 43 45 5f 4f 4e 4c 49 4e 45 20 20 20 20 20 20 RCE_ONLINE
5030: 20 20 3d 20 31 3b 0d 0a 63 6f 6e 73 74 20 49 4e = 1;..const IN
5040: 54 45 52 4e 45 54 5f 41 55 54 4f 44 49 41 4c 5f TERNET_AUTODIAL_
5050: 46 4f 52 43 45 5f 55 4e 41 54 54 45 4e 44 45 44 FORCE_UNATTENDED
5060: 20 20 20 20 3d 20 32 3b 0d 0a 63 6f 6e 73 74 20 = 2;..const
5070: 49 4e 54 45 52 4e 45 54 5f 41 55 54 4f 44 49 41 INTERNET_AUTODIA
5080: 4c 5f 46 41 49 4c 49 46 53 45 43 55 52 49 54 59 L_FAILIFSECURITY
5090: 43 48 45 43 4b 20 3d 20 34 3b 0d 0a 63 6f 6e 73 CHECK = 4;..cons
50a0: 74 20 49 4e 54 45 52 4e 45 54 5f 43 4f 4e 4e 45 t INTERNET_CONNE
50b0: 43 54 49 4f 4e 5f 4d 4f 44 45 4d 20 20 20 20 20 CTION_MODEM
50c0: 20 20 20 20 20 20 20 20 3d 20 30 78 30 31 3b 0d = 0x01;.
50d0: 0a 63 6f 6e 73 74 20 49 4e 54 45 52 4e 45 54 5f .const INTERNET_
50e0: 43 4f 4e 4e 45 43 54 49 4f 4e 5f 4c 41 4e 20 20 CONNECTION_LAN
50f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 = 0
5100: 78 30 32 3b 0d 0a 63 6f 6e 73 74 20 49 4e 54 45 x02;..const INTE
5110: 52 4e 45 54 5f 43 4f 4e 4e 45 43 54 49 4f 4e 5f RNET_CONNECTION_
5120: 50 52 4f 58 59 20 20 20 20 20 20 20 20 20 20 20 PROXY
5130: 20 20 3d 20 30 78 30 34 3b 0d 0a 63 6f 6e 73 74 = 0x04;..const
5140: 20 49 4e 54 45 52 4e 45 54 5f 43 4f 4e 4e 45 43 INTERNET_CONNEC
5150: 54 49 4f 4e 5f 4d 4f 44 45 4d 5f 42 55 53 59 20 TION_MODEM_BUSY
5160: 20 20 20 20 20 20 20 3d 20 30 78 30 38 3b 0d 0a = 0x08;..
5170: 63 6f 6e 73 74 20 49 4e 54 45 52 4e 45 54 5f 52 const INTERNET_R
5180: 41 53 5f 49 4e 53 54 41 4c 4c 45 44 20 20 20 20 AS_INSTALLED
5190: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 = 0x
51a0: 31 30 3b 0d 0a 63 6f 6e 73 74 20 49 4e 54 45 52 10;..const INTER
51b0: 4e 45 54 5f 43 4f 4e 4e 45 43 54 49 4f 4e 5f 4f NET_CONNECTION_O
51c0: 46 46 4c 49 4e 45 20 20 20 20 20 20 20 20 20 20 FFLINE
51d0: 20 3d 20 30 78 32 30 3b 0d 0a 63 6f 6e 73 74 20 = 0x20;..const
51e0: 49 4e 54 45 52 4e 45 54 5f 43 4f 4e 4e 45 43 54 INTERNET_CONNECT
51f0: 49 4f 4e 5f 43 4f 4e 46 49 47 55 52 45 44 20 20 ION_CONFIGURED
5200: 20 20 20 20 20 20 3d 20 30 78 34 30 3b 0d 0a 0d = 0x40;...
5210: 0a 65 6e 75 6d 20 7b 0d 0a 09 43 41 43 48 45 47 .enum {...CACHEG
5220: 52 4f 55 50 5f 53 45 41 52 43 48 5f 41 4c 4c 20 ROUP_SEARCH_ALL
5230: 20 20 3d 20 30 2c 0d 0a 09 43 41 43 48 45 47 52 = 0,...CACHEGR
5240: 4f 55 50 5f 53 45 41 52 43 48 5f 42 59 55 52 4c OUP_SEARCH_BYURL
5250: 20 3d 20 31 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 = 1..}....enum
5260: 7b 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 43 41 43 {...INTERNET_CAC
5270: 48 45 5f 47 52 4f 55 50 5f 41 44 44 20 20 20 20 HE_GROUP_ADD
5280: 3d 20 30 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f = 0,...INTERNET_
5290: 43 41 43 48 45 5f 47 52 4f 55 50 5f 52 45 4d 4f CACHE_GROUP_REMO
52a0: 56 45 20 3d 20 31 0d 0a 7d 0d 0a 0d 0a 6d 69 78 VE = 1..}....mix
52b0: 69 6e 20 44 45 43 4c 41 52 45 5f 48 41 4e 44 4c in DECLARE_HANDL
52c0: 45 21 28 22 48 49 4e 54 45 52 4e 45 54 22 29 3b E!("HINTERNET");
52d0: 20 2f 2f 20 64 6f 65 73 6e 27 74 20 77 6f 72 6b // doesn't work
52e0: 20 2d 20 62 75 67 0d 0a 2f 2a 73 74 72 75 63 74 - bug../*struct
52f0: 20 48 49 4e 54 45 52 4e 45 54 20 7b 0d 0a 09 48 HINTERNET {...H
5300: 41 4e 44 4c 45 20 68 3b 0d 0a 09 61 6c 69 61 73 ANDLE h;...alias
5310: 20 68 20 74 68 69 73 3b 0d 0a 7d 2a 2f 0d 0a 61 h this;..}*/..a
5320: 6c 69 61 73 20 48 49 4e 54 45 52 4e 45 54 2a 20 lias HINTERNET*
5330: 4c 50 48 49 4e 54 45 52 4e 45 54 3b 0d 0a 0d 0a LPHINTERNET;....
5340: 61 6c 69 61 73 20 4c 4f 4e 47 4c 4f 4e 47 20 47 alias LONGLONG G
5350: 52 4f 55 50 49 44 3b 0d 0a 61 6c 69 61 73 20 57 ROUPID;..alias W
5360: 4f 52 44 20 49 4e 54 45 52 4e 45 54 5f 50 4f 52 ORD INTERNET_POR
5370: 54 3b 0d 0a 61 6c 69 61 73 20 57 4f 52 44 2a 20 T;..alias WORD*
5380: 4c 50 49 4e 54 45 52 4e 45 54 5f 50 4f 52 54 3b LPINTERNET_PORT;
5390: 0d 0a 0d 0a 65 6e 75 6d 20 49 4e 54 45 52 4e 45 ....enum INTERNE
53a0: 54 5f 53 43 48 45 4d 45 20 7b 0d 0a 09 49 4e 54 T_SCHEME {...INT
53b0: 45 52 4e 45 54 5f 53 43 48 45 4d 45 5f 50 41 52 ERNET_SCHEME_PAR
53c0: 54 49 41 4c 20 3d 20 2d 32 2c 0d 0a 09 49 4e 54 TIAL = -2,...INT
53d0: 45 52 4e 45 54 5f 53 43 48 45 4d 45 5f 55 4e 4b ERNET_SCHEME_UNK
53e0: 4e 4f 57 4e 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 NOWN,...INTERNET
53f0: 5f 53 43 48 45 4d 45 5f 44 45 46 41 55 4c 54 2c _SCHEME_DEFAULT,
5400: 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 53 43 48 45 ...INTERNET_SCHE
5410: 4d 45 5f 46 54 50 2c 0d 0a 09 49 4e 54 45 52 4e ME_FTP,...INTERN
5420: 45 54 5f 53 43 48 45 4d 45 5f 47 4f 50 48 45 52 ET_SCHEME_GOPHER
5430: 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 53 43 48 ,...INTERNET_SCH
5440: 45 4d 45 5f 48 54 54 50 2c 0d 0a 09 49 4e 54 45 EME_HTTP,...INTE
5450: 52 4e 45 54 5f 53 43 48 45 4d 45 5f 48 54 54 50 RNET_SCHEME_HTTP
5460: 53 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 53 43 S,...INTERNET_SC
5470: 48 45 4d 45 5f 46 49 4c 45 2c 0d 0a 09 49 4e 54 HEME_FILE,...INT
5480: 45 52 4e 45 54 5f 53 43 48 45 4d 45 5f 4e 45 57 ERNET_SCHEME_NEW
5490: 53 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 53 43 S,...INTERNET_SC
54a0: 48 45 4d 45 5f 4d 41 49 4c 54 4f 2c 0d 0a 09 49 HEME_MAILTO,...I
54b0: 4e 54 45 52 4e 45 54 5f 53 43 48 45 4d 45 5f 53 NTERNET_SCHEME_S
54c0: 4f 43 4b 53 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 OCKS,...INTERNET
54d0: 5f 53 43 48 45 4d 45 5f 46 49 52 53 54 20 3d 20 _SCHEME_FIRST =
54e0: 49 4e 54 45 52 4e 45 54 5f 53 43 48 45 4d 45 5f INTERNET_SCHEME_
54f0: 46 54 50 2c 0d 0a 09 49 4e 54 45 52 4e 45 54 5f FTP,...INTERNET_
5500: 53 43 48 45 4d 45 5f 4c 41 53 54 20 3d 20 49 4e SCHEME_LAST = IN
5510: 54 45 52 4e 45 54 5f 53 43 48 45 4d 45 5f 53 4f TERNET_SCHEME_SO
5520: 43 4b 53 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4e CKS..}..alias IN
5530: 54 45 52 4e 45 54 5f 53 43 48 45 4d 45 2a 20 4c TERNET_SCHEME* L
5540: 50 49 4e 54 45 52 4e 45 54 5f 53 43 48 45 4d 45 PINTERNET_SCHEME
5550: 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 49 4e 54 45 ;....struct INTE
5560: 52 4e 45 54 5f 41 53 59 4e 43 5f 52 45 53 55 4c RNET_ASYNC_RESUL
5570: 54 20 7b 0d 0a 09 44 57 4f 52 44 20 64 77 52 65 T {...DWORD dwRe
5580: 73 75 6c 74 3b 0d 0a 09 44 57 4f 52 44 20 64 77 sult;...DWORD dw
5590: 45 72 72 6f 72 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 Error;..}..alias
55a0: 20 49 4e 54 45 52 4e 45 54 5f 41 53 59 4e 43 5f INTERNET_ASYNC_
55b0: 52 45 53 55 4c 54 2a 20 4c 50 49 4e 54 45 52 4e RESULT* LPINTERN
55c0: 45 54 5f 41 53 59 4e 43 5f 52 45 53 55 4c 54 3b ET_ASYNC_RESULT;
55d0: 0d 0a 0d 0a 73 74 72 75 63 74 20 49 4e 54 45 52 ....struct INTER
55e0: 4e 45 54 5f 50 52 45 46 45 54 43 48 5f 53 54 41 NET_PREFETCH_STA
55f0: 54 55 53 20 7b 0d 0a 09 44 57 4f 52 44 20 64 77 TUS {...DWORD dw
5600: 53 74 61 74 75 73 3b 0d 0a 09 44 57 4f 52 44 20 Status;...DWORD
5610: 64 77 53 69 7a 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 dwSize;..}..alia
5620: 73 20 49 4e 54 45 52 4e 45 54 5f 50 52 45 46 45 s INTERNET_PREFE
5630: 54 43 48 5f 53 54 41 54 55 53 2a 20 4c 50 49 4e TCH_STATUS* LPIN
5640: 54 45 52 4e 45 54 5f 50 52 45 46 45 54 43 48 5f TERNET_PREFETCH_
5650: 53 54 41 54 55 53 3b 0d 0a 0d 0a 73 74 72 75 63 STATUS;....struc
5660: 74 20 49 4e 54 45 52 4e 45 54 5f 50 52 4f 58 59 t INTERNET_PROXY
5670: 5f 49 4e 46 4f 20 7b 0d 0a 09 44 57 4f 52 44 20 _INFO {...DWORD
5680: 64 77 41 63 63 65 73 73 54 79 70 65 3b 0d 0a 09 dwAccessType;...
5690: 4c 50 43 54 53 54 52 20 6c 70 73 7a 50 72 6f 78 LPCTSTR lpszProx
56a0: 79 3b 0d 0a 09 4c 50 43 54 53 54 52 20 6c 70 73 y;...LPCTSTR lps
56b0: 7a 50 72 6f 78 79 42 79 70 61 73 73 3b 0d 0a 7d zProxyBypass;..}
56c0: 0d 0a 61 6c 69 61 73 20 49 4e 54 45 52 4e 45 54 ..alias INTERNET
56d0: 5f 50 52 4f 58 59 5f 49 4e 46 4f 2a 20 4c 50 49 _PROXY_INFO* LPI
56e0: 4e 54 45 52 4e 45 54 5f 50 52 4f 58 59 5f 49 4e NTERNET_PROXY_IN
56f0: 46 4f 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 49 4e FO;....struct IN
5700: 54 45 52 4e 45 54 5f 56 45 52 53 49 4f 4e 5f 49 TERNET_VERSION_I
5710: 4e 46 4f 20 7b 0d 0a 09 44 57 4f 52 44 20 64 77 NFO {...DWORD dw
5720: 4d 61 6a 6f 72 56 65 72 73 69 6f 6e 3b 0d 0a 09 MajorVersion;...
5730: 44 57 4f 52 44 20 64 77 4d 69 6e 6f 72 56 65 72 DWORD dwMinorVer
5740: 73 69 6f 6e 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 sion;..}..alias
5750: 49 4e 54 45 52 4e 45 54 5f 56 45 52 53 49 4f 4e INTERNET_VERSION
5760: 5f 49 4e 46 4f 2a 20 4c 50 49 4e 54 45 52 4e 45 _INFO* LPINTERNE
5770: 54 5f 56 45 52 53 49 4f 4e 5f 49 4e 46 4f 3b 0d T_VERSION_INFO;.
5780: 0a 0d 0a 73 74 72 75 63 74 20 55 52 4c 5f 43 4f ...struct URL_CO
5790: 4d 50 4f 4e 45 4e 54 53 41 20 7b 0d 0a 09 44 57 MPONENTSA {...DW
57a0: 4f 52 44 20 20 20 20 20 20 20 20 20 20 20 64 77 ORD dw
57b0: 53 74 72 75 63 74 53 69 7a 65 20 3d 20 55 52 4c StructSize = URL
57c0: 5f 43 4f 4d 50 4f 4e 45 4e 54 53 41 2e 73 69 7a _COMPONENTSA.siz
57d0: 65 6f 66 3b 0d 0a 09 4c 50 53 54 52 20 20 20 20 eof;...LPSTR
57e0: 20 20 20 20 20 20 20 6c 70 73 7a 53 63 68 65 6d lpszSchem
57f0: 65 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 e;...DWORD
5800: 20 20 20 20 20 64 77 53 63 68 65 6d 65 4c 65 6e dwSchemeLen
5810: 67 74 68 3b 0d 0a 09 49 4e 54 45 52 4e 45 54 5f gth;...INTERNET_
5820: 53 43 48 45 4d 45 20 6e 53 63 68 65 6d 65 3b 0d SCHEME nScheme;.
5830: 0a 09 4c 50 53 54 52 20 20 20 20 20 20 20 20 20 ..LPSTR
5840: 20 20 6c 70 73 7a 48 6f 73 74 4e 61 6d 65 3b 0d lpszHostName;.
5850: 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 ..DWORD
5860: 20 20 64 77 48 6f 73 74 4e 61 6d 65 4c 65 6e 67 dwHostNameLeng
5870: 74 68 3b 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 50 th;...INTERNET_P
5880: 4f 52 54 20 20 20 6e 50 6f 72 74 3b 0d 0a 09 4c ORT nPort;...L
5890: 50 53 54 52 20 20 20 20 20 20 20 20 20 20 20 6c PSTR l
58a0: 70 73 7a 55 73 65 72 4e 61 6d 65 3b 0d 0a 09 44 pszUserName;...D
58b0: 57 4f 52 44 20 20 20 20 20 20 20 20 20 20 20 64 WORD d
58c0: 77 55 73 65 72 4e 61 6d 65 4c 65 6e 67 74 68 3b wUserNameLength;
58d0: 0d 0a 09 4c 50 53 54 52 20 20 20 20 20 20 20 20 ...LPSTR
58e0: 20 20 20 6c 70 73 7a 50 61 73 73 77 6f 72 64 3b lpszPassword;
58f0: 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 ...DWORD
5900: 20 20 20 64 77 50 61 73 73 77 6f 72 64 4c 65 6e dwPasswordLen
5910: 67 74 68 3b 0d 0a 09 4c 50 53 54 52 20 20 20 20 gth;...LPSTR
5920: 20 20 20 20 20 20 20 6c 70 73 7a 55 72 6c 50 61 lpszUrlPa
5930: 74 68 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 th;...DWORD
5940: 20 20 20 20 20 20 64 77 55 72 6c 50 61 74 68 4c dwUrlPathL
5950: 65 6e 67 74 68 3b 0d 0a 09 4c 50 53 54 52 20 20 ength;...LPSTR
5960: 20 20 20 20 20 20 20 20 20 6c 70 73 7a 45 78 74 lpszExt
5970: 72 61 49 6e 66 6f 3b 0d 0a 09 44 57 4f 52 44 20 raInfo;...DWORD
5980: 20 20 20 20 20 20 20 20 20 20 64 77 45 78 74 72 dwExtr
5990: 61 49 6e 66 6f 4c 65 6e 67 74 68 3b 0d 0a 7d 0d aInfoLength;..}.
59a0: 0a 61 6c 69 61 73 20 55 52 4c 5f 43 4f 4d 50 4f .alias URL_COMPO
59b0: 4e 45 4e 54 53 41 2a 20 4c 50 55 52 4c 5f 43 4f NENTSA* LPURL_CO
59c0: 4d 50 4f 4e 45 4e 54 53 41 3b 0d 0a 0d 0a 73 74 MPONENTSA;....st
59d0: 72 75 63 74 20 55 52 4c 5f 43 4f 4d 50 4f 4e 45 ruct URL_COMPONE
59e0: 4e 54 53 57 20 7b 0d 0a 09 44 57 4f 52 44 20 20 NTSW {...DWORD
59f0: 64 77 53 74 72 75 63 74 53 69 7a 65 20 3d 20 55 dwStructSize = U
5a00: 52 4c 5f 43 4f 4d 50 4f 4e 45 4e 54 53 57 2e 73 RL_COMPONENTSW.s
5a10: 69 7a 65 6f 66 3b 0d 0a 09 4c 50 57 53 54 52 20 izeof;...LPWSTR
5a20: 6c 70 73 7a 53 63 68 65 6d 65 3b 0d 0a 09 44 57 lpszScheme;...DW
5a30: 4f 52 44 20 20 64 77 53 63 68 65 6d 65 4c 65 6e ORD dwSchemeLen
5a40: 67 74 68 3b 0d 0a 09 49 4e 54 45 52 4e 45 54 5f gth;...INTERNET_
5a50: 53 43 48 45 4d 45 20 6e 53 63 68 65 6d 65 3b 0d SCHEME nScheme;.
5a60: 0a 09 4c 50 57 53 54 52 20 6c 70 73 7a 48 6f 73 ..LPWSTR lpszHos
5a70: 74 4e 61 6d 65 3b 0d 0a 09 44 57 4f 52 44 20 20 tName;...DWORD
5a80: 64 77 48 6f 73 74 4e 61 6d 65 4c 65 6e 67 74 68 dwHostNameLength
5a90: 3b 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 50 4f 52 ;...INTERNET_POR
5aa0: 54 20 6e 50 6f 72 74 3b 0d 0a 09 4c 50 57 53 54 T nPort;...LPWST
5ab0: 52 20 6c 70 73 7a 55 73 65 72 4e 61 6d 65 3b 0d R lpszUserName;.
5ac0: 0a 09 44 57 4f 52 44 20 20 64 77 55 73 65 72 4e ..DWORD dwUserN
5ad0: 61 6d 65 4c 65 6e 67 74 68 3b 0d 0a 09 4c 50 57 ameLength;...LPW
5ae0: 53 54 52 20 6c 70 73 7a 50 61 73 73 77 6f 72 64 STR lpszPassword
5af0: 3b 0d 0a 09 44 57 4f 52 44 20 20 64 77 50 61 73 ;...DWORD dwPas
5b00: 73 77 6f 72 64 4c 65 6e 67 74 68 3b 0d 0a 09 4c swordLength;...L
5b10: 50 57 53 54 52 20 6c 70 73 7a 55 72 6c 50 61 74 PWSTR lpszUrlPat
5b20: 68 3b 0d 0a 09 44 57 4f 52 44 20 20 64 77 55 72 h;...DWORD dwUr
5b30: 6c 50 61 74 68 4c 65 6e 67 74 68 3b 0d 0a 09 4c lPathLength;...L
5b40: 50 57 53 54 52 20 6c 70 73 7a 45 78 74 72 61 49 PWSTR lpszExtraI
5b50: 6e 66 6f 3b 0d 0a 09 44 57 4f 52 44 20 20 64 77 nfo;...DWORD dw
5b60: 45 78 74 72 61 49 6e 66 6f 4c 65 6e 67 74 68 3b ExtraInfoLength;
5b70: 0d 0a 7d 0d 0a 61 6c 69 61 73 20 55 52 4c 5f 43 ..}..alias URL_C
5b80: 4f 4d 50 4f 4e 45 4e 54 53 57 2a 20 4c 50 55 52 OMPONENTSW* LPUR
5b90: 4c 5f 43 4f 4d 50 4f 4e 45 4e 54 53 57 3b 0d 0a L_COMPONENTSW;..
5ba0: 0d 0a 73 74 72 75 63 74 20 49 4e 54 45 52 4e 45 ..struct INTERNE
5bb0: 54 5f 43 45 52 54 49 46 49 43 41 54 45 5f 49 4e T_CERTIFICATE_IN
5bc0: 46 4f 20 7b 0d 0a 09 46 49 4c 45 54 49 4d 45 20 FO {...FILETIME
5bd0: 66 74 45 78 70 69 72 79 3b 0d 0a 09 46 49 4c 45 ftExpiry;...FILE
5be0: 54 49 4d 45 20 66 74 53 74 61 72 74 3b 0d 0a 09 TIME ftStart;...
5bf0: 4c 50 54 53 54 52 20 20 20 6c 70 73 7a 53 75 62 LPTSTR lpszSub
5c00: 6a 65 63 74 49 6e 66 6f 3b 0d 0a 09 4c 50 54 53 jectInfo;...LPTS
5c10: 54 52 20 20 20 6c 70 73 7a 49 73 73 75 65 72 49 TR lpszIssuerI
5c20: 6e 66 6f 3b 0d 0a 09 4c 50 54 53 54 52 20 20 20 nfo;...LPTSTR
5c30: 6c 70 73 7a 50 72 6f 74 6f 63 6f 6c 4e 61 6d 65 lpszProtocolName
5c40: 3b 0d 0a 09 4c 50 54 53 54 52 20 20 20 6c 70 73 ;...LPTSTR lps
5c50: 7a 53 69 67 6e 61 74 75 72 65 41 6c 67 4e 61 6d zSignatureAlgNam
5c60: 65 3b 0d 0a 09 4c 50 54 53 54 52 20 20 20 6c 70 e;...LPTSTR lp
5c70: 73 7a 45 6e 63 72 79 70 74 69 6f 6e 41 6c 67 4e szEncryptionAlgN
5c80: 61 6d 65 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 ame;...DWORD
5c90: 64 77 4b 65 79 53 69 7a 65 3b 0d 0a 7d 0d 0a 61 dwKeySize;..}..a
5ca0: 6c 69 61 73 20 49 4e 54 45 52 4e 45 54 5f 43 45 lias INTERNET_CE
5cb0: 52 54 49 46 49 43 41 54 45 5f 49 4e 46 4f 2a 20 RTIFICATE_INFO*
5cc0: 4c 50 49 4e 54 45 52 4e 45 54 5f 43 45 52 54 49 LPINTERNET_CERTI
5cd0: 46 49 43 41 54 45 5f 49 4e 46 4f 3b 0d 0a 0d 0a FICATE_INFO;....
5ce0: 65 78 74 65 72 6e 20 28 57 69 6e 64 6f 77 73 29 extern (Windows)
5cf0: 20 61 6c 69 61 73 20 76 6f 69 64 20 66 75 6e 63 alias void func
5d00: 74 69 6f 6e 28 48 49 4e 54 45 52 4e 45 54 2c 20 tion(HINTERNET,
5d10: 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 50 56 DWORD, DWORD, PV
5d20: 4f 49 44 2c 20 44 57 4f 52 44 29 0d 0a 20 20 49 OID, DWORD).. I
5d30: 4e 54 45 52 4e 45 54 5f 53 54 41 54 55 53 5f 43 NTERNET_STATUS_C
5d40: 41 4c 4c 42 41 43 4b 3b 0d 0a 61 6c 69 61 73 20 ALLBACK;..alias
5d50: 49 4e 54 45 52 4e 45 54 5f 53 54 41 54 55 53 5f INTERNET_STATUS_
5d60: 43 41 4c 4c 42 41 43 4b 2a 20 4c 50 49 4e 54 45 CALLBACK* LPINTE
5d70: 52 4e 45 54 5f 53 54 41 54 55 53 5f 43 41 4c 4c RNET_STATUS_CALL
5d80: 42 41 43 4b 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 49 BACK;....const I
5d90: 4e 54 45 52 4e 45 54 5f 49 4e 56 41 4c 49 44 5f NTERNET_INVALID_
5da0: 53 54 41 54 55 53 5f 43 41 4c 4c 42 41 43 4b 0d STATUS_CALLBACK.
5db0: 0a 20 20 3d 20 63 61 73 74 28 49 4e 54 45 52 4e . = cast(INTERN
5dc0: 45 54 5f 53 54 41 54 55 53 5f 43 41 4c 4c 42 41 ET_STATUS_CALLBA
5dd0: 43 4b 29 20 2d 31 3b 0d 0a 0d 0a 73 74 72 75 63 CK) -1;....struc
5de0: 74 20 47 4f 50 48 45 52 5f 46 49 4e 44 5f 44 41 t GOPHER_FIND_DA
5df0: 54 41 41 20 7b 0d 0a 09 43 48 41 52 5b 4d 41 58 TAA {...CHAR[MAX
5e00: 5f 47 4f 50 48 45 52 5f 44 49 53 50 4c 41 59 5f _GOPHER_DISPLAY_
5e10: 54 45 58 54 2b 31 5d 20 44 69 73 70 6c 61 79 53 TEXT+1] DisplayS
5e20: 74 72 69 6e 67 3b 0d 0a 09 44 57 4f 52 44 20 20 tring;...DWORD
5e30: 20 20 47 6f 70 68 65 72 54 79 70 65 3b 0d 0a 09 GopherType;...
5e40: 44 57 4f 52 44 20 20 20 20 53 69 7a 65 4c 6f 77 DWORD SizeLow
5e50: 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 53 69 7a ;...DWORD Siz
5e60: 65 48 69 67 68 3b 0d 0a 09 46 49 4c 45 54 49 4d eHigh;...FILETIM
5e70: 45 20 4c 61 73 74 4d 6f 64 69 66 69 63 61 74 69 E LastModificati
5e80: 6f 6e 54 69 6d 65 3b 0d 0a 09 43 48 41 52 5b 4d onTime;...CHAR[M
5e90: 41 58 5f 47 4f 50 48 45 52 5f 4c 4f 43 41 54 4f AX_GOPHER_LOCATO
5ea0: 52 5f 4c 45 4e 47 54 48 2b 31 5d 20 4c 6f 63 61 R_LENGTH+1] Loca
5eb0: 74 6f 72 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 47 tor;..}..alias G
5ec0: 4f 50 48 45 52 5f 46 49 4e 44 5f 44 41 54 41 41 OPHER_FIND_DATAA
5ed0: 2a 20 4c 50 47 4f 50 48 45 52 5f 46 49 4e 44 5f * LPGOPHER_FIND_
5ee0: 44 41 54 41 41 3b 0d 0a 0d 0a 73 74 72 75 63 74 DATAA;....struct
5ef0: 20 47 4f 50 48 45 52 5f 46 49 4e 44 5f 44 41 54 GOPHER_FIND_DAT
5f00: 41 57 20 7b 0d 0a 09 57 43 48 41 52 5b 4d 41 58 AW {...WCHAR[MAX
5f10: 5f 47 4f 50 48 45 52 5f 44 49 53 50 4c 41 59 5f _GOPHER_DISPLAY_
5f20: 54 45 58 54 2b 31 5d 20 44 69 73 70 6c 61 79 53 TEXT+1] DisplayS
5f30: 74 72 69 6e 67 3b 0d 0a 09 44 57 4f 52 44 20 20 tring;...DWORD
5f40: 20 20 47 6f 70 68 65 72 54 79 70 65 3b 0d 0a 09 GopherType;...
5f50: 44 57 4f 52 44 20 20 20 20 53 69 7a 65 4c 6f 77 DWORD SizeLow
5f60: 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 53 69 7a ;...DWORD Siz
5f70: 65 48 69 67 68 3b 0d 0a 09 46 49 4c 45 54 49 4d eHigh;...FILETIM
5f80: 45 20 4c 61 73 74 4d 6f 64 69 66 69 63 61 74 69 E LastModificati
5f90: 6f 6e 54 69 6d 65 3b 0d 0a 09 57 43 48 41 52 5b onTime;...WCHAR[
5fa0: 4d 41 58 5f 47 4f 50 48 45 52 5f 4c 4f 43 41 54 MAX_GOPHER_LOCAT
5fb0: 4f 52 5f 4c 45 4e 47 54 48 2b 31 5d 20 4c 6f 63 OR_LENGTH+1] Loc
5fc0: 61 74 6f 72 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 ator;..}..alias
5fd0: 47 4f 50 48 45 52 5f 46 49 4e 44 5f 44 41 54 41 GOPHER_FIND_DATA
5fe0: 57 2a 20 4c 50 47 4f 50 48 45 52 5f 46 49 4e 44 W* LPGOPHER_FIND
5ff0: 5f 44 41 54 41 57 3b 0d 0a 0d 0a 73 74 72 75 63 _DATAW;....struc
6000: 74 20 47 4f 50 48 45 52 5f 41 44 4d 49 4e 5f 41 t GOPHER_ADMIN_A
6010: 54 54 52 49 42 55 54 45 5f 54 59 50 45 20 7b 0d TTRIBUTE_TYPE {.
6020: 0a 09 4c 50 43 54 53 54 52 20 43 6f 6d 6d 65 6e ..LPCTSTR Commen
6030: 74 3b 0d 0a 09 4c 50 43 54 53 54 52 20 45 6d 61 t;...LPCTSTR Ema
6040: 69 6c 41 64 64 72 65 73 73 3b 0d 0a 7d 0d 0a 61 ilAddress;..}..a
6050: 6c 69 61 73 20 47 4f 50 48 45 52 5f 41 44 4d 49 lias GOPHER_ADMI
6060: 4e 5f 41 54 54 52 49 42 55 54 45 5f 54 59 50 45 N_ATTRIBUTE_TYPE
6070: 2a 20 4c 50 47 4f 50 48 45 52 5f 41 44 4d 49 4e * LPGOPHER_ADMIN
6080: 5f 41 54 54 52 49 42 55 54 45 5f 54 59 50 45 3b _ATTRIBUTE_TYPE;
6090: 0d 0a 0d 0a 73 74 72 75 63 74 20 47 4f 50 48 45 ....struct GOPHE
60a0: 52 5f 4d 4f 44 5f 44 41 54 45 5f 41 54 54 52 49 R_MOD_DATE_ATTRI
60b0: 42 55 54 45 5f 54 59 50 45 20 7b 0d 0a 09 46 49 BUTE_TYPE {...FI
60c0: 4c 45 54 49 4d 45 20 44 61 74 65 41 6e 64 54 69 LETIME DateAndTi
60d0: 6d 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 47 4f me;..}..alias GO
60e0: 50 48 45 52 5f 4d 4f 44 5f 44 41 54 45 5f 41 54 PHER_MOD_DATE_AT
60f0: 54 52 49 42 55 54 45 5f 54 59 50 45 2a 20 4c 50 TRIBUTE_TYPE* LP
6100: 47 4f 50 48 45 52 5f 4d 4f 44 5f 44 41 54 45 5f GOPHER_MOD_DATE_
6110: 41 54 54 52 49 42 55 54 45 5f 54 59 50 45 3b 0d ATTRIBUTE_TYPE;.
6120: 0a 0d 0a 73 74 72 75 63 74 20 47 4f 50 48 45 52 ...struct GOPHER
6130: 5f 54 54 4c 5f 41 54 54 52 49 42 55 54 45 5f 54 _TTL_ATTRIBUTE_T
6140: 59 50 45 20 7b 0d 0a 09 44 57 4f 52 44 20 54 74 YPE {...DWORD Tt
6150: 6c 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 47 4f 50 l;..}..alias GOP
6160: 48 45 52 5f 54 54 4c 5f 41 54 54 52 49 42 55 54 HER_TTL_ATTRIBUT
6170: 45 5f 54 59 50 45 2a 20 4c 50 47 4f 50 48 45 52 E_TYPE* LPGOPHER
6180: 5f 54 54 4c 5f 41 54 54 52 49 42 55 54 45 5f 54 _TTL_ATTRIBUTE_T
6190: 59 50 45 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 47 YPE;....struct G
61a0: 4f 50 48 45 52 5f 53 43 4f 52 45 5f 41 54 54 52 OPHER_SCORE_ATTR
61b0: 49 42 55 54 45 5f 54 59 50 45 20 7b 0d 0a 09 49 IBUTE_TYPE {...I
61c0: 4e 54 20 53 63 6f 72 65 3b 0d 0a 7d 0d 0a 61 6c NT Score;..}..al
61d0: 69 61 73 20 47 4f 50 48 45 52 5f 53 43 4f 52 45 ias GOPHER_SCORE
61e0: 5f 41 54 54 52 49 42 55 54 45 5f 54 59 50 45 2a _ATTRIBUTE_TYPE*
61f0: 20 4c 50 47 4f 50 48 45 52 5f 53 43 4f 52 45 5f LPGOPHER_SCORE_
6200: 41 54 54 52 49 42 55 54 45 5f 54 59 50 45 3b 0d ATTRIBUTE_TYPE;.
6210: 0a 0d 0a 73 74 72 75 63 74 20 47 4f 50 48 45 52 ...struct GOPHER
6220: 5f 53 43 4f 52 45 5f 52 41 4e 47 45 5f 41 54 54 _SCORE_RANGE_ATT
6230: 52 49 42 55 54 45 5f 54 59 50 45 20 7b 0d 0a 09 RIBUTE_TYPE {...
6240: 49 4e 54 20 4c 6f 77 65 72 42 6f 75 6e 64 3b 0d INT LowerBound;.
6250: 0a 09 49 4e 54 20 55 70 70 65 72 42 6f 75 6e 64 ..INT UpperBound
6260: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 47 4f 50 48 ;..}..alias GOPH
6270: 45 52 5f 53 43 4f 52 45 5f 52 41 4e 47 45 5f 41 ER_SCORE_RANGE_A
6280: 54 54 52 49 42 55 54 45 5f 54 59 50 45 2a 20 4c TTRIBUTE_TYPE* L
6290: 50 47 4f 50 48 45 52 5f 53 43 4f 52 45 5f 52 41 PGOPHER_SCORE_RA
62a0: 4e 47 45 5f 41 54 54 52 49 42 55 54 45 5f 54 59 NGE_ATTRIBUTE_TY
62b0: 50 45 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 47 4f PE;....struct GO
62c0: 50 48 45 52 5f 53 49 54 45 5f 41 54 54 52 49 42 PHER_SITE_ATTRIB
62d0: 55 54 45 5f 54 59 50 45 20 7b 0d 0a 09 4c 50 43 UTE_TYPE {...LPC
62e0: 54 53 54 52 20 53 69 74 65 3b 0d 0a 7d 0d 0a 61 TSTR Site;..}..a
62f0: 6c 69 61 73 20 47 4f 50 48 45 52 5f 53 49 54 45 lias GOPHER_SITE
6300: 5f 41 54 54 52 49 42 55 54 45 5f 54 59 50 45 2a _ATTRIBUTE_TYPE*
6310: 20 4c 50 47 4f 50 48 45 52 5f 53 49 54 45 5f 41 LPGOPHER_SITE_A
6320: 54 54 52 49 42 55 54 45 5f 54 59 50 45 3b 0d 0a TTRIBUTE_TYPE;..
6330: 0d 0a 73 74 72 75 63 74 20 47 4f 50 48 45 52 5f ..struct GOPHER_
6340: 4f 52 47 41 4e 49 5a 41 54 49 4f 4e 5f 41 54 54 ORGANIZATION_ATT
6350: 52 49 42 55 54 45 5f 54 59 50 45 20 7b 0d 0a 09 RIBUTE_TYPE {...
6360: 4c 50 43 54 53 54 52 20 4f 72 67 61 6e 69 7a 61 LPCTSTR Organiza
6370: 74 69 6f 6e 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 tion;..}..alias
6380: 47 4f 50 48 45 52 5f 4f 52 47 41 4e 49 5a 41 54 GOPHER_ORGANIZAT
6390: 49 4f 4e 5f 41 54 54 52 49 42 55 54 45 5f 54 59 ION_ATTRIBUTE_TY
63a0: 50 45 2a 20 4c 50 47 4f 50 48 45 52 5f 4f 52 47 PE* LPGOPHER_ORG
63b0: 41 4e 49 5a 41 54 49 4f 4e 5f 41 54 54 52 49 42 ANIZATION_ATTRIB
63c0: 55 54 45 5f 54 59 50 45 3b 0d 0a 0d 0a 73 74 72 UTE_TYPE;....str
63d0: 75 63 74 20 47 4f 50 48 45 52 5f 4c 4f 43 41 54 uct GOPHER_LOCAT
63e0: 49 4f 4e 5f 41 54 54 52 49 42 55 54 45 5f 54 59 ION_ATTRIBUTE_TY
63f0: 50 45 20 7b 0d 0a 09 4c 50 43 54 53 54 52 20 4c PE {...LPCTSTR L
6400: 6f 63 61 74 69 6f 6e 3b 0d 0a 7d 0d 0a 61 6c 69 ocation;..}..ali
6410: 61 73 20 47 4f 50 48 45 52 5f 4c 4f 43 41 54 49 as GOPHER_LOCATI
6420: 4f 4e 5f 41 54 54 52 49 42 55 54 45 5f 54 59 50 ON_ATTRIBUTE_TYP
6430: 45 2a 20 4c 50 47 4f 50 48 45 52 5f 4c 4f 43 41 E* LPGOPHER_LOCA
6440: 54 49 4f 4e 5f 41 54 54 52 49 42 55 54 45 5f 54 TION_ATTRIBUTE_T
6450: 59 50 45 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 47 YPE;....struct G
6460: 4f 50 48 45 52 5f 47 45 4f 47 52 41 50 48 49 43 OPHER_GEOGRAPHIC
6470: 41 4c 5f 4c 4f 43 41 54 49 4f 4e 5f 41 54 54 52 AL_LOCATION_ATTR
6480: 49 42 55 54 45 5f 54 59 50 45 20 7b 0d 0a 09 49 IBUTE_TYPE {...I
6490: 4e 54 20 44 65 67 72 65 65 73 4e 6f 72 74 68 3b NT DegreesNorth;
64a0: 0d 0a 09 49 4e 54 20 4d 69 6e 75 74 65 73 4e 6f ...INT MinutesNo
64b0: 72 74 68 3b 0d 0a 09 49 4e 54 20 53 65 63 6f 6e rth;...INT Secon
64c0: 64 73 4e 6f 72 74 68 3b 0d 0a 09 49 4e 54 20 44 dsNorth;...INT D
64d0: 65 67 72 65 65 73 45 61 73 74 3b 0d 0a 09 49 4e egreesEast;...IN
64e0: 54 20 4d 69 6e 75 74 65 73 45 61 73 74 3b 0d 0a T MinutesEast;..
64f0: 09 49 4e 54 20 53 65 63 6f 6e 64 73 45 61 73 74 .INT SecondsEast
6500: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 47 4f 50 48 ;..}..alias GOPH
6510: 45 52 5f 47 45 4f 47 52 41 50 48 49 43 41 4c 5f ER_GEOGRAPHICAL_
6520: 4c 4f 43 41 54 49 4f 4e 5f 41 54 54 52 49 42 55 LOCATION_ATTRIBU
6530: 54 45 5f 54 59 50 45 2a 0d 0a 20 20 4c 50 47 4f TE_TYPE*.. LPGO
6540: 50 48 45 52 5f 47 45 4f 47 52 41 50 48 49 43 41 PHER_GEOGRAPHICA
6550: 4c 5f 4c 4f 43 41 54 49 4f 4e 5f 41 54 54 52 49 L_LOCATION_ATTRI
6560: 42 55 54 45 5f 54 59 50 45 3b 0d 0a 0d 0a 73 74 BUTE_TYPE;....st
6570: 72 75 63 74 20 47 4f 50 48 45 52 5f 54 49 4d 45 ruct GOPHER_TIME
6580: 5a 4f 4e 45 5f 41 54 54 52 49 42 55 54 45 5f 54 ZONE_ATTRIBUTE_T
6590: 59 50 45 20 7b 0d 0a 09 49 4e 54 20 5a 6f 6e 65 YPE {...INT Zone
65a0: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 47 4f 50 48 ;..}..alias GOPH
65b0: 45 52 5f 54 49 4d 45 5a 4f 4e 45 5f 41 54 54 52 ER_TIMEZONE_ATTR
65c0: 49 42 55 54 45 5f 54 59 50 45 2a 20 4c 50 47 4f IBUTE_TYPE* LPGO
65d0: 50 48 45 52 5f 54 49 4d 45 5a 4f 4e 45 5f 41 54 PHER_TIMEZONE_AT
65e0: 54 52 49 42 55 54 45 5f 54 59 50 45 3b 0d 0a 0d TRIBUTE_TYPE;...
65f0: 0a 73 74 72 75 63 74 20 47 4f 50 48 45 52 5f 50 .struct GOPHER_P
6600: 52 4f 56 49 44 45 52 5f 41 54 54 52 49 42 55 54 ROVIDER_ATTRIBUT
6610: 45 5f 54 59 50 45 20 7b 0d 0a 09 4c 50 43 54 53 E_TYPE {...LPCTS
6620: 54 52 20 50 72 6f 76 69 64 65 72 3b 0d 0a 7d 0d TR Provider;..}.
6630: 0a 61 6c 69 61 73 20 47 4f 50 48 45 52 5f 50 52 .alias GOPHER_PR
6640: 4f 56 49 44 45 52 5f 41 54 54 52 49 42 55 54 45 OVIDER_ATTRIBUTE
6650: 5f 54 59 50 45 2a 20 4c 50 47 4f 50 48 45 52 5f _TYPE* LPGOPHER_
6660: 50 52 4f 56 49 44 45 52 5f 41 54 54 52 49 42 55 PROVIDER_ATTRIBU
6670: 54 45 5f 54 59 50 45 3b 0d 0a 0d 0a 73 74 72 75 TE_TYPE;....stru
6680: 63 74 20 47 4f 50 48 45 52 5f 56 45 52 53 49 4f ct GOPHER_VERSIO
6690: 4e 5f 41 54 54 52 49 42 55 54 45 5f 54 59 50 45 N_ATTRIBUTE_TYPE
66a0: 20 7b 0d 0a 09 4c 50 43 54 53 54 52 20 56 65 72 {...LPCTSTR Ver
66b0: 73 69 6f 6e 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 sion;..}..alias
66c0: 47 4f 50 48 45 52 5f 56 45 52 53 49 4f 4e 5f 41 GOPHER_VERSION_A
66d0: 54 54 52 49 42 55 54 45 5f 54 59 50 45 2a 20 4c TTRIBUTE_TYPE* L
66e0: 50 47 4f 50 48 45 52 5f 56 45 52 53 49 4f 4e 5f PGOPHER_VERSION_
66f0: 41 54 54 52 49 42 55 54 45 5f 54 59 50 45 3b 0d ATTRIBUTE_TYPE;.
6700: 0a 0d 0a 73 74 72 75 63 74 20 47 4f 50 48 45 52 ...struct GOPHER
6710: 5f 41 42 53 54 52 41 43 54 5f 41 54 54 52 49 42 _ABSTRACT_ATTRIB
6720: 55 54 45 5f 54 59 50 45 20 7b 0d 0a 09 4c 50 43 UTE_TYPE {...LPC
6730: 54 53 54 52 20 53 68 6f 72 74 41 62 73 74 72 61 TSTR ShortAbstra
6740: 63 74 3b 0d 0a 09 4c 50 43 54 53 54 52 20 41 62 ct;...LPCTSTR Ab
6750: 73 74 72 61 63 74 46 69 6c 65 3b 0d 0a 7d 0d 0a stractFile;..}..
6760: 61 6c 69 61 73 20 47 4f 50 48 45 52 5f 41 42 53 alias GOPHER_ABS
6770: 54 52 41 43 54 5f 41 54 54 52 49 42 55 54 45 5f TRACT_ATTRIBUTE_
6780: 54 59 50 45 2a 20 4c 50 47 4f 50 48 45 52 5f 41 TYPE* LPGOPHER_A
6790: 42 53 54 52 41 43 54 5f 41 54 54 52 49 42 55 54 BSTRACT_ATTRIBUT
67a0: 45 5f 54 59 50 45 3b 0d 0a 0d 0a 73 74 72 75 63 E_TYPE;....struc
67b0: 74 20 47 4f 50 48 45 52 5f 56 49 45 57 5f 41 54 t GOPHER_VIEW_AT
67c0: 54 52 49 42 55 54 45 5f 54 59 50 45 20 7b 0d 0a TRIBUTE_TYPE {..
67d0: 09 4c 50 43 54 53 54 52 20 43 6f 6e 74 65 6e 74 .LPCTSTR Content
67e0: 54 79 70 65 3b 0d 0a 09 4c 50 43 54 53 54 52 20 Type;...LPCTSTR
67f0: 4c 61 6e 67 75 61 67 65 3b 0d 0a 09 44 57 4f 52 Language;...DWOR
6800: 44 20 20 20 53 69 7a 65 3b 0d 0a 7d 0d 0a 61 6c D Size;..}..al
6810: 69 61 73 20 47 4f 50 48 45 52 5f 56 49 45 57 5f ias GOPHER_VIEW_
6820: 41 54 54 52 49 42 55 54 45 5f 54 59 50 45 2a 20 ATTRIBUTE_TYPE*
6830: 4c 50 47 4f 50 48 45 52 5f 56 49 45 57 5f 41 54 LPGOPHER_VIEW_AT
6840: 54 52 49 42 55 54 45 5f 54 59 50 45 3b 0d 0a 0d TRIBUTE_TYPE;...
6850: 0a 73 74 72 75 63 74 20 47 4f 50 48 45 52 5f 56 .struct GOPHER_V
6860: 45 52 4f 4e 49 43 41 5f 41 54 54 52 49 42 55 54 ERONICA_ATTRIBUT
6870: 45 5f 54 59 50 45 20 7b 0d 0a 09 42 4f 4f 4c 20 E_TYPE {...BOOL
6880: 54 72 65 65 57 61 6c 6b 3b 0d 0a 7d 0d 0a 61 6c TreeWalk;..}..al
6890: 69 61 73 20 47 4f 50 48 45 52 5f 56 45 52 4f 4e ias GOPHER_VERON
68a0: 49 43 41 5f 41 54 54 52 49 42 55 54 45 5f 54 59 ICA_ATTRIBUTE_TY
68b0: 50 45 2a 20 4c 50 47 4f 50 48 45 52 5f 56 45 52 PE* LPGOPHER_VER
68c0: 4f 4e 49 43 41 5f 41 54 54 52 49 42 55 54 45 5f ONICA_ATTRIBUTE_
68d0: 54 59 50 45 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 TYPE;....struct
68e0: 47 4f 50 48 45 52 5f 41 53 4b 5f 41 54 54 52 49 GOPHER_ASK_ATTRI
68f0: 42 55 54 45 5f 54 59 50 45 20 7b 0d 0a 09 4c 50 BUTE_TYPE {...LP
6900: 43 54 53 54 52 20 51 75 65 73 74 69 6f 6e 54 79 CTSTR QuestionTy
6910: 70 65 3b 0d 0a 09 4c 50 43 54 53 54 52 20 51 75 pe;...LPCTSTR Qu
6920: 65 73 74 69 6f 6e 54 65 78 74 3b 0d 0a 7d 0d 0a estionText;..}..
6930: 61 6c 69 61 73 20 47 4f 50 48 45 52 5f 41 53 4b alias GOPHER_ASK
6940: 5f 41 54 54 52 49 42 55 54 45 5f 54 59 50 45 2a _ATTRIBUTE_TYPE*
6950: 20 4c 50 47 4f 50 48 45 52 5f 41 53 4b 5f 41 54 LPGOPHER_ASK_AT
6960: 54 52 49 42 55 54 45 5f 54 59 50 45 3b 0d 0a 0d TRIBUTE_TYPE;...
6970: 0a 73 74 72 75 63 74 20 47 4f 50 48 45 52 5f 55 .struct GOPHER_U
6980: 4e 4b 4e 4f 57 4e 5f 41 54 54 52 49 42 55 54 45 NKNOWN_ATTRIBUTE
6990: 5f 54 59 50 45 20 7b 0d 0a 09 4c 50 43 54 53 54 _TYPE {...LPCTST
69a0: 52 20 54 65 78 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 R Text;..}..alia
69b0: 73 20 47 4f 50 48 45 52 5f 55 4e 4b 4e 4f 57 4e s GOPHER_UNKNOWN
69c0: 5f 41 54 54 52 49 42 55 54 45 5f 54 59 50 45 2a _ATTRIBUTE_TYPE*
69d0: 20 4c 50 47 4f 50 48 45 52 5f 55 4e 4b 4e 4f 57 LPGOPHER_UNKNOW
69e0: 4e 5f 41 54 54 52 49 42 55 54 45 5f 54 59 50 45 N_ATTRIBUTE_TYPE
69f0: 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 47 4f 50 48 ;....struct GOPH
6a00: 45 52 5f 41 54 54 52 49 42 55 54 45 5f 54 59 50 ER_ATTRIBUTE_TYP
6a10: 45 20 7b 0d 0a 09 44 57 4f 52 44 20 43 61 74 65 E {...DWORD Cate
6a20: 67 6f 72 79 49 64 3b 0d 0a 09 44 57 4f 52 44 20 goryId;...DWORD
6a30: 41 74 74 72 69 62 75 74 65 49 64 3b 0d 0a 09 75 AttributeId;...u
6a40: 6e 69 6f 6e 20 7b 0d 0a 09 09 47 4f 50 48 45 52 nion {....GOPHER
6a50: 5f 41 44 4d 49 4e 5f 41 54 54 52 49 42 55 54 45 _ADMIN_ATTRIBUTE
6a60: 5f 54 59 50 45 20 20 20 20 20 20 20 20 20 20 20 _TYPE
6a70: 20 20 20 20 20 20 41 64 6d 69 6e 3b 0d 0a 09 09 Admin;....
6a80: 47 4f 50 48 45 52 5f 4d 4f 44 5f 44 41 54 45 5f GOPHER_MOD_DATE_
6a90: 41 54 54 52 49 42 55 54 45 5f 54 59 50 45 20 20 ATTRIBUTE_TYPE
6aa0: 20 20 20 20 20 20 20 20 20 20 20 20 4d 6f 64 44 ModD
6ab0: 61 74 65 3b 0d 0a 09 09 47 4f 50 48 45 52 5f 54 ate;....GOPHER_T
6ac0: 54 4c 5f 41 54 54 52 49 42 55 54 45 5f 54 59 50 TL_ATTRIBUTE_TYP
6ad0: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 E
6ae0: 20 20 20 20 54 74 6c 3b 0d 0a 09 09 47 4f 50 48 Ttl;....GOPH
6af0: 45 52 5f 53 43 4f 52 45 5f 41 54 54 52 49 42 55 ER_SCORE_ATTRIBU
6b00: 54 45 5f 54 59 50 45 20 20 20 20 20 20 20 20 20 TE_TYPE
6b10: 20 20 20 20 20 20 20 20 53 63 6f 72 65 3b 0d 0a Score;..
6b20: 09 09 47 4f 50 48 45 52 5f 53 43 4f 52 45 5f 52 ..GOPHER_SCORE_R
6b30: 41 4e 47 45 5f 41 54 54 52 49 42 55 54 45 5f 54 ANGE_ATTRIBUTE_T
6b40: 59 50 45 20 20 20 20 20 20 20 20 20 20 20 53 63 YPE Sc
6b50: 6f 72 65 52 61 6e 67 65 3b 0d 0a 09 09 47 4f 50 oreRange;....GOP
6b60: 48 45 52 5f 53 49 54 45 5f 41 54 54 52 49 42 55 HER_SITE_ATTRIBU
6b70: 54 45 5f 54 59 50 45 20 20 20 20 20 20 20 20 20 TE_TYPE
6b80: 20 20 20 20 20 20 20 20 20 53 69 74 65 3b 0d 0a Site;..
6b90: 09 09 47 4f 50 48 45 52 5f 4f 52 47 41 4e 49 5a ..GOPHER_ORGANIZ
6ba0: 41 54 49 4f 4e 5f 41 54 54 52 49 42 55 54 45 5f ATION_ATTRIBUTE_
6bb0: 54 59 50 45 20 20 20 20 20 20 20 20 20 20 4f 72 TYPE Or
6bc0: 67 61 6e 69 7a 61 74 69 6f 6e 3b 0d 0a 09 09 47 ganization;....G
6bd0: 4f 50 48 45 52 5f 4c 4f 43 41 54 49 4f 4e 5f 41 OPHER_LOCATION_A
6be0: 54 54 52 49 42 55 54 45 5f 54 59 50 45 20 20 20 TTRIBUTE_TYPE
6bf0: 20 20 20 20 20 20 20 20 20 20 20 4c 6f 63 61 74 Locat
6c00: 69 6f 6e 3b 0d 0a 09 09 47 4f 50 48 45 52 5f 47 ion;....GOPHER_G
6c10: 45 4f 47 52 41 50 48 49 43 41 4c 5f 4c 4f 43 41 EOGRAPHICAL_LOCA
6c20: 54 49 4f 4e 5f 41 54 54 52 49 42 55 54 45 5f 54 TION_ATTRIBUTE_T
6c30: 59 50 45 20 47 65 6f 67 72 61 70 68 69 63 61 6c YPE Geographical
6c40: 4c 6f 63 61 74 69 6f 6e 3b 0d 0a 09 09 47 4f 50 Location;....GOP
6c50: 48 45 52 5f 54 49 4d 45 5a 4f 4e 45 5f 41 54 54 HER_TIMEZONE_ATT
6c60: 52 49 42 55 54 45 5f 54 59 50 45 20 20 20 20 20 RIBUTE_TYPE
6c70: 20 20 20 20 20 20 20 20 20 54 69 6d 65 5a 6f 6e TimeZon
6c80: 65 3b 0d 0a 09 09 47 4f 50 48 45 52 5f 50 52 4f e;....GOPHER_PRO
6c90: 56 49 44 45 52 5f 41 54 54 52 49 42 55 54 45 5f VIDER_ATTRIBUTE_
6ca0: 54 59 50 45 20 20 20 20 20 20 20 20 20 20 20 20 TYPE
6cb0: 20 20 50 72 6f 76 69 64 65 72 3b 0d 0a 09 09 47 Provider;....G
6cc0: 4f 50 48 45 52 5f 56 45 52 53 49 4f 4e 5f 41 54 OPHER_VERSION_AT
6cd0: 54 52 49 42 55 54 45 5f 54 59 50 45 20 20 20 20 TRIBUTE_TYPE
6ce0: 20 20 20 20 20 20 20 20 20 20 20 56 65 72 73 69 Versi
6cf0: 6f 6e 3b 0d 0a 09 09 47 4f 50 48 45 52 5f 41 42 on;....GOPHER_AB
6d00: 53 54 52 41 43 54 5f 41 54 54 52 49 42 55 54 45 STRACT_ATTRIBUTE
6d10: 5f 54 59 50 45 20 20 20 20 20 20 20 20 20 20 20 _TYPE
6d20: 20 20 20 41 62 73 74 72 61 63 74 3b 0d 0a 09 09 Abstract;....
6d30: 47 4f 50 48 45 52 5f 56 49 45 57 5f 41 54 54 52 GOPHER_VIEW_ATTR
6d40: 49 42 55 54 45 5f 54 59 50 45 20 20 20 20 20 20 IBUTE_TYPE
6d50: 20 20 20 20 20 20 20 20 20 20 20 20 56 69 65 77 View
6d60: 3b 0d 0a 09 09 47 4f 50 48 45 52 5f 56 45 52 4f ;....GOPHER_VERO
6d70: 4e 49 43 41 5f 41 54 54 52 49 42 55 54 45 5f 54 NICA_ATTRIBUTE_T
6d80: 59 50 45 20 20 20 20 20 20 20 20 20 20 20 20 20 YPE
6d90: 20 56 65 72 6f 6e 69 63 61 3b 0d 0a 09 09 47 4f Veronica;....GO
6da0: 50 48 45 52 5f 41 53 4b 5f 41 54 54 52 49 42 55 PHER_ASK_ATTRIBU
6db0: 54 45 5f 54 59 50 45 20 20 20 20 20 20 20 20 20 TE_TYPE
6dc0: 20 20 20 20 20 20 20 20 20 20 41 73 6b 3b 0d 0a Ask;..
6dd0: 09 09 47 4f 50 48 45 52 5f 55 4e 4b 4e 4f 57 4e ..GOPHER_UNKNOWN
6de0: 5f 41 54 54 52 49 42 55 54 45 5f 54 59 50 45 20 _ATTRIBUTE_TYPE
6df0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 55 6e Un
6e00: 6b 6e 6f 77 6e 3b 0d 0a 09 7d 20 2f 2b 41 74 74 known;...} /+Att
6e10: 72 69 62 75 74 65 54 79 70 65 3b 2b 2f 0d 0a 7d ributeType;+/..}
6e20: 0d 0a 61 6c 69 61 73 20 47 4f 50 48 45 52 5f 41 ..alias GOPHER_A
6e30: 54 54 52 49 42 55 54 45 5f 54 59 50 45 2a 20 4c TTRIBUTE_TYPE* L
6e40: 50 47 4f 50 48 45 52 5f 41 54 54 52 49 42 55 54 PGOPHER_ATTRIBUT
6e50: 45 5f 54 59 50 45 3b 0d 0a 0d 0a 61 6c 69 61 73 E_TYPE;....alias
6e60: 20 42 4f 4f 4c 20 66 75 6e 63 74 69 6f 6e 28 4c BOOL function(L
6e70: 50 47 4f 50 48 45 52 5f 41 54 54 52 49 42 55 54 PGOPHER_ATTRIBUT
6e80: 45 5f 54 59 50 45 2c 20 44 57 4f 52 44 29 0d 0a E_TYPE, DWORD)..
6e90: 20 20 47 4f 50 48 45 52 5f 41 54 54 52 49 42 55 GOPHER_ATTRIBU
6ea0: 54 45 5f 45 4e 55 4d 45 52 41 54 4f 52 3b 0d 0a TE_ENUMERATOR;..
6eb0: 0d 0a 73 74 72 75 63 74 20 49 4e 54 45 52 4e 45 ..struct INTERNE
6ec0: 54 5f 43 41 43 48 45 5f 45 4e 54 52 59 5f 49 4e T_CACHE_ENTRY_IN
6ed0: 46 4f 41 20 7b 0d 0a 09 44 57 4f 52 44 20 20 20 FOA {...DWORD
6ee0: 20 64 77 53 74 72 75 63 74 53 69 7a 65 20 3d 20 dwStructSize =
6ef0: 49 4e 54 45 52 4e 45 54 5f 43 41 43 48 45 5f 45 INTERNET_CACHE_E
6f00: 4e 54 52 59 5f 49 4e 46 4f 41 2e 73 69 7a 65 6f NTRY_INFOA.sizeo
6f10: 66 3b 0d 0a 09 4c 50 53 54 52 20 20 20 20 6c 70 f;...LPSTR lp
6f20: 73 7a 53 6f 75 72 63 65 55 72 6c 4e 61 6d 65 3b szSourceUrlName;
6f30: 0d 0a 09 4c 50 53 54 52 20 20 20 20 6c 70 73 7a ...LPSTR lpsz
6f40: 4c 6f 63 61 6c 46 69 6c 65 4e 61 6d 65 3b 0d 0a LocalFileName;..
6f50: 09 44 57 4f 52 44 20 20 20 20 43 61 63 68 65 45 .DWORD CacheE
6f60: 6e 74 72 79 54 79 70 65 3b 0d 0a 09 44 57 4f 52 ntryType;...DWOR
6f70: 44 20 20 20 20 64 77 55 73 65 43 6f 75 6e 74 3b D dwUseCount;
6f80: 0d 0a 09 44 57 4f 52 44 20 20 20 20 64 77 48 69 ...DWORD dwHi
6f90: 74 52 61 74 65 3b 0d 0a 09 44 57 4f 52 44 20 20 tRate;...DWORD
6fa0: 20 20 64 77 53 69 7a 65 4c 6f 77 3b 0d 0a 09 44 dwSizeLow;...D
6fb0: 57 4f 52 44 20 20 20 20 64 77 53 69 7a 65 48 69 WORD dwSizeHi
6fc0: 67 68 3b 0d 0a 09 46 49 4c 45 54 49 4d 45 20 4c gh;...FILETIME L
6fd0: 61 73 74 4d 6f 64 69 66 69 65 64 54 69 6d 65 3b astModifiedTime;
6fe0: 0d 0a 09 46 49 4c 45 54 49 4d 45 20 45 78 70 69 ...FILETIME Expi
6ff0: 72 65 54 69 6d 65 3b 0d 0a 09 46 49 4c 45 54 49 reTime;...FILETI
7000: 4d 45 20 4c 61 73 74 41 63 63 65 73 73 54 69 6d ME LastAccessTim
7010: 65 3b 0d 0a 09 46 49 4c 45 54 49 4d 45 20 4c 61 e;...FILETIME La
7020: 73 74 53 79 6e 63 54 69 6d 65 3b 0d 0a 09 50 42 stSyncTime;...PB
7030: 59 54 45 20 20 20 20 6c 70 48 65 61 64 65 72 49 YTE lpHeaderI
7040: 6e 66 6f 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 nfo;...DWORD
7050: 64 77 48 65 61 64 65 72 49 6e 66 6f 53 69 7a 65 dwHeaderInfoSize
7060: 3b 0d 0a 09 4c 50 53 54 52 20 20 20 20 6c 70 73 ;...LPSTR lps
7070: 7a 46 69 6c 65 45 78 74 65 6e 73 69 6f 6e 3b 0d zFileExtension;.
7080: 0a 09 44 57 4f 52 44 20 20 20 20 64 77 52 65 73 ..DWORD dwRes
7090: 65 72 76 65 64 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 erved;..}..alias
70a0: 20 49 4e 54 45 52 4e 45 54 5f 43 41 43 48 45 5f INTERNET_CACHE_
70b0: 45 4e 54 52 59 5f 49 4e 46 4f 41 2a 20 4c 50 49 ENTRY_INFOA* LPI
70c0: 4e 54 45 52 4e 45 54 5f 43 41 43 48 45 5f 45 4e NTERNET_CACHE_EN
70d0: 54 52 59 5f 49 4e 46 4f 41 3b 0d 0a 0d 0a 73 74 TRY_INFOA;....st
70e0: 72 75 63 74 20 49 4e 54 45 52 4e 45 54 5f 43 41 ruct INTERNET_CA
70f0: 43 48 45 5f 45 4e 54 52 59 5f 49 4e 46 4f 57 20 CHE_ENTRY_INFOW
7100: 7b 0d 0a 09 44 57 4f 52 44 20 20 20 20 64 77 53 {...DWORD dwS
7110: 74 72 75 63 74 53 69 7a 65 20 3d 20 49 4e 54 45 tructSize = INTE
7120: 52 4e 45 54 5f 43 41 43 48 45 5f 45 4e 54 52 59 RNET_CACHE_ENTRY
7130: 5f 49 4e 46 4f 57 2e 73 69 7a 65 6f 66 3b 0d 0a _INFOW.sizeof;..
7140: 09 4c 50 57 53 54 52 20 20 20 6c 70 73 7a 53 6f .LPWSTR lpszSo
7150: 75 72 63 65 55 72 6c 4e 61 6d 65 3b 0d 0a 09 4c urceUrlName;...L
7160: 50 57 53 54 52 20 20 20 6c 70 73 7a 4c 6f 63 61 PWSTR lpszLoca
7170: 6c 46 69 6c 65 4e 61 6d 65 3b 0d 0a 09 44 57 4f lFileName;...DWO
7180: 52 44 20 20 20 20 43 61 63 68 65 45 6e 74 72 79 RD CacheEntry
7190: 54 79 70 65 3b 0d 0a 09 44 57 4f 52 44 20 20 20 Type;...DWORD
71a0: 20 64 77 55 73 65 43 6f 75 6e 74 3b 0d 0a 09 44 dwUseCount;...D
71b0: 57 4f 52 44 20 20 20 20 64 77 48 69 74 52 61 74 WORD dwHitRat
71c0: 65 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 64 77 e;...DWORD dw
71d0: 53 69 7a 65 4c 6f 77 3b 0d 0a 09 44 57 4f 52 44 SizeLow;...DWORD
71e0: 20 20 20 20 64 77 53 69 7a 65 48 69 67 68 3b 0d dwSizeHigh;.
71f0: 0a 09 46 49 4c 45 54 49 4d 45 20 4c 61 73 74 4d ..FILETIME LastM
7200: 6f 64 69 66 69 65 64 54 69 6d 65 3b 0d 0a 09 46 odifiedTime;...F
7210: 49 4c 45 54 49 4d 45 20 45 78 70 69 72 65 54 69 ILETIME ExpireTi
7220: 6d 65 3b 0d 0a 09 46 49 4c 45 54 49 4d 45 20 4c me;...FILETIME L
7230: 61 73 74 41 63 63 65 73 73 54 69 6d 65 3b 0d 0a astAccessTime;..
7240: 09 46 49 4c 45 54 49 4d 45 20 4c 61 73 74 53 79 .FILETIME LastSy
7250: 6e 63 54 69 6d 65 3b 0d 0a 09 50 42 59 54 45 20 ncTime;...PBYTE
7260: 20 20 20 6c 70 48 65 61 64 65 72 49 6e 66 6f 3b lpHeaderInfo;
7270: 0d 0a 09 44 57 4f 52 44 20 20 20 20 64 77 48 65 ...DWORD dwHe
7280: 61 64 65 72 49 6e 66 6f 53 69 7a 65 3b 0d 0a 09 aderInfoSize;...
7290: 4c 50 57 53 54 52 20 20 20 6c 70 73 7a 46 69 6c LPWSTR lpszFil
72a0: 65 45 78 74 65 6e 73 69 6f 6e 3b 0d 0a 09 44 57 eExtension;...DW
72b0: 4f 52 44 20 20 20 20 64 77 52 65 73 65 72 76 65 ORD dwReserve
72c0: 64 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4e 54 d;..}..alias INT
72d0: 45 52 4e 45 54 5f 43 41 43 48 45 5f 45 4e 54 52 ERNET_CACHE_ENTR
72e0: 59 5f 49 4e 46 4f 57 2a 20 4c 50 49 4e 54 45 52 Y_INFOW* LPINTER
72f0: 4e 45 54 5f 43 41 43 48 45 5f 45 4e 54 52 59 5f NET_CACHE_ENTRY_
7300: 49 4e 46 4f 57 3b 0d 0a 0d 0a 73 74 72 75 63 74 INFOW;....struct
7310: 20 49 4e 54 45 52 4e 45 54 5f 42 55 46 46 45 52 INTERNET_BUFFER
7320: 53 41 20 7b 0d 0a 09 44 57 4f 52 44 20 20 20 20 SA {...DWORD
7330: 20 20 20 20 20 20 20 20 20 20 64 77 53 74 72 75 dwStru
7340: 63 74 53 69 7a 65 20 3d 20 49 4e 54 45 52 4e 45 ctSize = INTERNE
7350: 54 5f 42 55 46 46 45 52 53 41 2e 73 69 7a 65 6f T_BUFFERSA.sizeo
7360: 66 3b 0d 0a 09 49 4e 54 45 52 4e 45 54 5f 42 55 f;...INTERNET_BU
7370: 46 46 45 52 53 41 2a 20 4e 65 78 74 3b 0d 0a 09 FFERSA* Next;...
7380: 4c 50 43 53 54 52 20 20 20 20 20 20 20 20 20 20 LPCSTR
7390: 20 20 20 6c 70 63 73 7a 48 65 61 64 65 72 3b 0d lpcszHeader;.
73a0: 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 ..DWORD
73b0: 20 20 20 20 20 64 77 48 65 61 64 65 72 73 4c 65 dwHeadersLe
73c0: 6e 67 74 68 3b 0d 0a 09 44 57 4f 52 44 20 20 20 ngth;...DWORD
73d0: 20 20 20 20 20 20 20 20 20 20 20 64 77 48 65 61 dwHea
73e0: 64 65 72 73 54 6f 74 61 6c 3b 0d 0a 09 4c 50 56 dersTotal;...LPV
73f0: 4f 49 44 20 20 20 20 20 20 20 20 20 20 20 20 20 OID
7400: 6c 70 76 42 75 66 66 65 72 3b 0d 0a 09 44 57 4f lpvBuffer;...DWO
7410: 52 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RD
7420: 64 77 42 75 66 66 65 72 4c 65 6e 67 74 68 3b 0d dwBufferLength;.
7430: 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 ..DWORD
7440: 20 20 20 20 20 64 77 42 75 66 66 65 72 54 6f 74 dwBufferTot
7450: 61 6c 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 al;...DWORD
7460: 20 20 20 20 20 20 20 20 20 64 77 4f 66 66 73 65 dwOffse
7470: 74 4c 6f 77 3b 0d 0a 09 44 57 4f 52 44 20 20 20 tLow;...DWORD
7480: 20 20 20 20 20 20 20 20 20 20 20 64 77 4f 66 66 dwOff
7490: 73 65 74 48 69 67 68 3b 0d 0a 7d 0d 0a 61 6c 69 setHigh;..}..ali
74a0: 61 73 20 49 4e 54 45 52 4e 45 54 5f 42 55 46 46 as INTERNET_BUFF
74b0: 45 52 53 41 2a 20 4c 50 49 4e 54 45 52 4e 45 54 ERSA* LPINTERNET
74c0: 5f 42 55 46 46 45 52 53 41 3b 0d 0a 0d 0a 73 74 _BUFFERSA;....st
74d0: 72 75 63 74 20 49 4e 54 45 52 4e 45 54 5f 42 55 ruct INTERNET_BU
74e0: 46 46 45 52 53 57 20 7b 0d 0a 09 44 57 4f 52 44 FFERSW {...DWORD
74f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 77 dw
7500: 53 74 72 75 63 74 53 69 7a 65 20 3d 20 49 4e 54 StructSize = INT
7510: 45 52 4e 45 54 5f 42 55 46 46 45 52 53 57 2e 73 ERNET_BUFFERSW.s
7520: 69 7a 65 6f 66 3b 0d 0a 09 49 4e 54 45 52 4e 45 izeof;...INTERNE
7530: 54 5f 42 55 46 46 45 52 53 57 2a 20 4e 65 78 74 T_BUFFERSW* Next
7540: 3b 0d 0a 09 4c 50 43 57 53 54 52 20 20 20 20 20 ;...LPCWSTR
7550: 20 20 20 20 20 20 20 6c 70 63 73 7a 48 65 61 64 lpcszHead
7560: 65 72 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 er;...DWORD
7570: 20 20 20 20 20 20 20 20 20 64 77 48 65 61 64 65 dwHeade
7580: 72 73 4c 65 6e 67 74 68 3b 0d 0a 09 44 57 4f 52 rsLength;...DWOR
7590: 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 D d
75a0: 77 48 65 61 64 65 72 73 54 6f 74 61 6c 3b 0d 0a wHeadersTotal;..
75b0: 09 4c 50 56 4f 49 44 20 20 20 20 20 20 20 20 20 .LPVOID
75c0: 20 20 20 20 6c 70 76 42 75 66 66 65 72 3b 0d 0a lpvBuffer;..
75d0: 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 20 .DWORD
75e0: 20 20 20 20 64 77 42 75 66 66 65 72 4c 65 6e 67 dwBufferLeng
75f0: 74 68 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 th;...DWORD
7600: 20 20 20 20 20 20 20 20 20 64 77 42 75 66 66 65 dwBuffe
7610: 72 54 6f 74 61 6c 3b 0d 0a 09 44 57 4f 52 44 20 rTotal;...DWORD
7620: 20 20 20 20 20 20 20 20 20 20 20 20 20 64 77 4f dwO
7630: 66 66 73 65 74 4c 6f 77 3b 0d 0a 09 44 57 4f 52 ffsetLow;...DWOR
7640: 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 D d
7650: 77 4f 66 66 73 65 74 48 69 67 68 3b 0d 0a 7d 0d wOffsetHigh;..}.
7660: 0a 61 6c 69 61 73 20 49 4e 54 45 52 4e 45 54 5f .alias INTERNET_
7670: 42 55 46 46 45 52 53 57 2a 20 4c 50 49 4e 54 45 BUFFERSW* LPINTE
7680: 52 4e 45 54 5f 42 55 46 46 45 52 53 57 3b 0d 0a RNET_BUFFERSW;..
7690: 0d 0a 63 6f 6e 73 74 20 73 69 7a 65 5f 74 0d 0a ..const size_t..
76a0: 09 47 52 4f 55 50 5f 4f 57 4e 45 52 5f 53 54 4f .GROUP_OWNER_STO
76b0: 52 41 47 45 5f 53 49 5a 45 20 3d 20 20 20 34 2c RAGE_SIZE = 4,
76c0: 0d 0a 09 47 52 4f 55 50 4e 41 4d 45 5f 4d 41 58 ...GROUPNAME_MAX
76d0: 5f 4c 45 4e 47 54 48 20 20 20 20 20 3d 20 31 32 _LENGTH = 12
76e0: 30 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 49 4e 54 0;....struct INT
76f0: 45 52 4e 45 54 5f 43 41 43 48 45 5f 47 52 4f 55 ERNET_CACHE_GROU
7700: 50 5f 49 4e 46 4f 41 20 7b 0d 0a 09 44 57 4f 52 P_INFOA {...DWOR
7710: 44 20 64 77 47 72 6f 75 70 53 69 7a 65 3b 0d 0a D dwGroupSize;..
7720: 09 44 57 4f 52 44 20 64 77 47 72 6f 75 70 46 6c .DWORD dwGroupFl
7730: 61 67 73 3b 0d 0a 09 44 57 4f 52 44 20 64 77 47 ags;...DWORD dwG
7740: 72 6f 75 70 54 79 70 65 3b 0d 0a 09 44 57 4f 52 roupType;...DWOR
7750: 44 20 64 77 44 69 73 6b 55 73 61 67 65 3b 0d 0a D dwDiskUsage;..
7760: 09 44 57 4f 52 44 20 64 77 44 69 73 6b 51 75 6f .DWORD dwDiskQuo
7770: 74 61 3b 0d 0a 09 44 57 4f 52 44 5b 47 52 4f 55 ta;...DWORD[GROU
7780: 50 5f 4f 57 4e 45 52 5f 53 54 4f 52 41 47 45 5f P_OWNER_STORAGE_
7790: 53 49 5a 45 5d 20 64 77 4f 77 6e 65 72 53 74 6f SIZE] dwOwnerSto
77a0: 72 61 67 65 3b 0d 0a 09 43 48 41 52 5b 47 52 4f rage;...CHAR[GRO
77b0: 55 50 4e 41 4d 45 5f 4d 41 58 5f 4c 45 4e 47 54 UPNAME_MAX_LENGT
77c0: 48 5d 20 20 20 20 20 20 73 7a 47 72 6f 75 70 4e H] szGroupN
77d0: 61 6d 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 ame;..}..alias I
77e0: 4e 54 45 52 4e 45 54 5f 43 41 43 48 45 5f 47 52 NTERNET_CACHE_GR
77f0: 4f 55 50 5f 49 4e 46 4f 41 2a 20 4c 50 49 4e 54 OUP_INFOA* LPINT
7800: 45 52 4e 45 54 5f 43 41 43 48 45 5f 47 52 4f 55 ERNET_CACHE_GROU
7810: 50 5f 49 4e 46 4f 41 3b 0d 0a 0d 0a 73 74 72 75 P_INFOA;....stru
7820: 63 74 20 49 4e 54 45 52 4e 45 54 5f 43 41 43 48 ct INTERNET_CACH
7830: 45 5f 47 52 4f 55 50 5f 49 4e 46 4f 57 20 7b 0d E_GROUP_INFOW {.
7840: 0a 09 44 57 4f 52 44 20 64 77 47 72 6f 75 70 53 ..DWORD dwGroupS
7850: 69 7a 65 3b 0d 0a 09 44 57 4f 52 44 20 64 77 47 ize;...DWORD dwG
7860: 72 6f 75 70 46 6c 61 67 73 3b 0d 0a 09 44 57 4f roupFlags;...DWO
7870: 52 44 20 64 77 47 72 6f 75 70 54 79 70 65 3b 0d RD dwGroupType;.
7880: 0a 09 44 57 4f 52 44 20 64 77 44 69 73 6b 55 73 ..DWORD dwDiskUs
7890: 61 67 65 3b 0d 0a 09 44 57 4f 52 44 20 64 77 44 age;...DWORD dwD
78a0: 69 73 6b 51 75 6f 74 61 3b 0d 0a 09 44 57 4f 52 iskQuota;...DWOR
78b0: 44 5b 47 52 4f 55 50 5f 4f 57 4e 45 52 5f 53 54 D[GROUP_OWNER_ST
78c0: 4f 52 41 47 45 5f 53 49 5a 45 5d 20 64 77 4f 77 ORAGE_SIZE] dwOw
78d0: 6e 65 72 53 74 6f 72 61 67 65 3b 0d 0a 09 57 43 nerStorage;...WC
78e0: 48 41 52 5b 47 52 4f 55 50 4e 41 4d 45 5f 4d 41 HAR[GROUPNAME_MA
78f0: 58 5f 4c 45 4e 47 54 48 5d 20 20 20 20 20 73 7a X_LENGTH] sz
7900: 47 72 6f 75 70 4e 61 6d 65 3b 0d 0a 7d 0d 0a 61 GroupName;..}..a
7910: 6c 69 61 73 20 49 4e 54 45 52 4e 45 54 5f 43 41 lias INTERNET_CA
7920: 43 48 45 5f 47 52 4f 55 50 5f 49 4e 46 4f 57 2a CHE_GROUP_INFOW*
7930: 20 4c 50 49 4e 54 45 52 4e 45 54 5f 43 41 43 48 LPINTERNET_CACH
7940: 45 5f 47 52 4f 55 50 5f 49 4e 46 4f 57 3b 0d 0a E_GROUP_INFOW;..
7950: 0d 0a 65 78 74 65 72 6e 20 28 57 69 6e 64 6f 77 ..extern (Window
7960: 73 29 20 7b 0d 0a 09 42 4f 4f 4c 20 49 6e 74 65 s) {...BOOL Inte
7970: 72 6e 65 74 54 69 6d 65 46 72 6f 6d 53 79 73 74 rnetTimeFromSyst
7980: 65 6d 54 69 6d 65 28 53 59 53 54 45 4d 54 49 4d emTime(SYSTEMTIM
7990: 45 2a 2c 20 44 57 4f 52 44 2c 20 4c 50 53 54 52 E*, DWORD, LPSTR
79a0: 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c , DWORD);...BOOL
79b0: 20 49 6e 74 65 72 6e 65 74 54 69 6d 65 54 6f 53 InternetTimeToS
79c0: 79 73 74 65 6d 54 69 6d 65 28 4c 50 43 53 54 52 ystemTime(LPCSTR
79d0: 2c 20 53 59 53 54 45 4d 54 49 4d 45 2a 2c 20 44 , SYSTEMTIME*, D
79e0: 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 49 6e WORD);...BOOL In
79f0: 74 65 72 6e 65 74 44 65 62 75 67 47 65 74 4c 6f ternetDebugGetLo
7a00: 63 61 6c 54 69 6d 65 28 53 59 53 54 45 4d 54 49 calTime(SYSTEMTI
7a10: 4d 45 2a 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 ME*, PDWORD);...
7a20: 42 4f 4f 4c 20 49 6e 74 65 72 6e 65 74 43 72 61 BOOL InternetCra
7a30: 63 6b 55 72 6c 41 28 4c 50 43 53 54 52 2c 20 44 ckUrlA(LPCSTR, D
7a40: 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 4c 50 55 WORD, DWORD, LPU
7a50: 52 4c 5f 43 4f 4d 50 4f 4e 45 4e 54 53 41 29 3b RL_COMPONENTSA);
7a60: 0d 0a 09 42 4f 4f 4c 20 49 6e 74 65 72 6e 65 74 ...BOOL Internet
7a70: 43 72 61 63 6b 55 72 6c 57 28 4c 50 43 57 53 54 CrackUrlW(LPCWST
7a80: 52 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c R, DWORD, DWORD,
7a90: 20 4c 50 55 52 4c 5f 43 4f 4d 50 4f 4e 45 4e 54 LPURL_COMPONENT
7aa0: 53 57 29 3b 0d 0a 09 42 4f 4f 4c 20 49 6e 74 65 SW);...BOOL Inte
7ab0: 72 6e 65 74 43 72 65 61 74 65 55 72 6c 41 28 4c rnetCreateUrlA(L
7ac0: 50 55 52 4c 5f 43 4f 4d 50 4f 4e 45 4e 54 53 41 PURL_COMPONENTSA
7ad0: 2c 20 44 57 4f 52 44 2c 20 4c 50 53 54 52 2c 20 , DWORD, LPSTR,
7ae0: 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 PDWORD);...BOOL
7af0: 49 6e 74 65 72 6e 65 74 43 72 65 61 74 65 55 72 InternetCreateUr
7b00: 6c 57 28 4c 50 55 52 4c 5f 43 4f 4d 50 4f 4e 45 lW(LPURL_COMPONE
7b10: 4e 54 53 57 2c 20 44 57 4f 52 44 2c 20 4c 50 57 NTSW, DWORD, LPW
7b20: 53 54 52 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 STR, PDWORD);...
7b30: 42 4f 4f 4c 20 49 6e 74 65 72 6e 65 74 43 61 6e BOOL InternetCan
7b40: 6f 6e 69 63 61 6c 69 7a 65 55 72 6c 41 28 4c 50 onicalizeUrlA(LP
7b50: 43 53 54 52 2c 20 4c 50 53 54 52 2c 20 50 44 57 CSTR, LPSTR, PDW
7b60: 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 ORD, DWORD);...B
7b70: 4f 4f 4c 20 49 6e 74 65 72 6e 65 74 43 61 6e 6f OOL InternetCano
7b80: 6e 69 63 61 6c 69 7a 65 55 72 6c 57 28 4c 50 43 nicalizeUrlW(LPC
7b90: 57 53 54 52 2c 20 4c 50 57 53 54 52 2c 20 50 44 WSTR, LPWSTR, PD
7ba0: 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 WORD, DWORD);...
7bb0: 42 4f 4f 4c 20 49 6e 74 65 72 6e 65 74 43 68 65 BOOL InternetChe
7bc0: 63 6b 43 6f 6e 6e 65 63 74 69 6f 6e 41 28 4c 50 ckConnectionA(LP
7bd0: 43 53 54 52 2c 20 44 57 4f 52 44 2c 20 44 57 4f CSTR, DWORD, DWO
7be0: 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 49 6e 74 65 RD);...BOOL Inte
7bf0: 72 6e 65 74 43 68 65 63 6b 43 6f 6e 6e 65 63 74 rnetCheckConnect
7c00: 69 6f 6e 57 28 4c 50 43 57 53 54 52 2c 20 44 57 ionW(LPCWSTR, DW
7c10: 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 ORD, DWORD);...B
7c20: 4f 4f 4c 20 49 6e 74 65 72 6e 65 74 43 6f 6d 62 OOL InternetComb
7c30: 69 6e 65 55 72 6c 41 28 4c 50 43 53 54 52 2c 20 ineUrlA(LPCSTR,
7c40: 4c 50 43 53 54 52 2c 20 4c 50 53 54 52 2c 20 50 LPCSTR, LPSTR, P
7c50: 44 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0d 0a DWORD, DWORD);..
7c60: 09 42 4f 4f 4c 20 49 6e 74 65 72 6e 65 74 43 6f .BOOL InternetCo
7c70: 6d 62 69 6e 65 55 72 6c 57 28 4c 50 43 57 53 54 mbineUrlW(LPCWST
7c80: 52 2c 20 4c 50 43 57 53 54 52 2c 20 4c 50 57 53 R, LPCWSTR, LPWS
7c90: 54 52 2c 20 50 44 57 4f 52 44 2c 20 44 57 4f 52 TR, PDWORD, DWOR
7ca0: 44 29 3b 0d 0a 09 48 49 4e 54 45 52 4e 45 54 20 D);...HINTERNET
7cb0: 49 6e 74 65 72 6e 65 74 4f 70 65 6e 41 28 4c 50 InternetOpenA(LP
7cc0: 43 53 54 52 2c 20 44 57 4f 52 44 2c 20 4c 50 43 CSTR, DWORD, LPC
7cd0: 53 54 52 2c 20 4c 50 43 53 54 52 2c 20 44 57 4f STR, LPCSTR, DWO
7ce0: 52 44 29 3b 0d 0a 09 48 49 4e 54 45 52 4e 45 54 RD);...HINTERNET
7cf0: 20 49 6e 74 65 72 6e 65 74 4f 70 65 6e 57 28 4c InternetOpenW(L
7d00: 50 43 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 4c PCWSTR, DWORD, L
7d10: 50 43 57 53 54 52 2c 20 4c 50 43 57 53 54 52 2c PCWSTR, LPCWSTR,
7d20: 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 DWORD);...BOOL
7d30: 49 6e 74 65 72 6e 65 74 43 6c 6f 73 65 48 61 6e InternetCloseHan
7d40: 64 6c 65 28 48 49 4e 54 45 52 4e 45 54 29 3b 0d dle(HINTERNET);.
7d50: 0a 09 48 49 4e 54 45 52 4e 45 54 20 49 6e 74 65 ..HINTERNET Inte
7d60: 72 6e 65 74 43 6f 6e 6e 65 63 74 41 28 48 49 4e rnetConnectA(HIN
7d70: 54 45 52 4e 45 54 2c 20 4c 50 43 53 54 52 2c 20 TERNET, LPCSTR,
7d80: 49 4e 54 45 52 4e 45 54 5f 50 4f 52 54 2c 20 4c INTERNET_PORT, L
7d90: 50 43 53 54 52 2c 0d 0a 09 20 20 4c 50 43 53 54 PCSTR,... LPCST
7da0: 52 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c R, DWORD, DWORD,
7db0: 20 44 57 4f 52 44 29 3b 0d 0a 09 48 49 4e 54 45 DWORD);...HINTE
7dc0: 52 4e 45 54 20 49 6e 74 65 72 6e 65 74 43 6f 6e RNET InternetCon
7dd0: 6e 65 63 74 57 28 48 49 4e 54 45 52 4e 45 54 2c nectW(HINTERNET,
7de0: 20 4c 50 43 57 53 54 52 2c 20 49 4e 54 45 52 4e LPCWSTR, INTERN
7df0: 45 54 5f 50 4f 52 54 2c 20 4c 50 43 57 53 54 52 ET_PORT, LPCWSTR
7e00: 2c 0d 0a 09 20 20 4c 50 43 57 53 54 52 2c 20 44 ,... LPCWSTR, D
7e10: 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 44 57 4f WORD, DWORD, DWO
7e20: 52 44 29 3b 0d 0a 09 48 49 4e 54 45 52 4e 45 54 RD);...HINTERNET
7e30: 20 49 6e 74 65 72 6e 65 74 4f 70 65 6e 55 72 6c InternetOpenUrl
7e40: 41 28 48 49 4e 54 45 52 4e 45 54 2c 20 4c 50 43 A(HINTERNET, LPC
7e50: 53 54 52 2c 20 4c 50 43 53 54 52 2c 20 44 57 4f STR, LPCSTR, DWO
7e60: 52 44 2c 20 44 57 4f 52 44 2c 0d 0a 09 20 20 44 RD, DWORD,... D
7e70: 57 4f 52 44 29 3b 0d 0a 09 48 49 4e 54 45 52 4e WORD);...HINTERN
7e80: 45 54 20 49 6e 74 65 72 6e 65 74 4f 70 65 6e 55 ET InternetOpenU
7e90: 72 6c 57 28 48 49 4e 54 45 52 4e 45 54 2c 20 4c rlW(HINTERNET, L
7ea0: 50 43 57 53 54 52 2c 20 4c 50 43 57 53 54 52 2c PCWSTR, LPCWSTR,
7eb0: 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 0d 0a DWORD, DWORD,..
7ec0: 09 20 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f . DWORD);...BOO
7ed0: 4c 20 49 6e 74 65 72 6e 65 74 52 65 61 64 46 69 L InternetReadFi
7ee0: 6c 65 28 48 49 4e 54 45 52 4e 45 54 2c 20 50 56 le(HINTERNET, PV
7ef0: 4f 49 44 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f OID, DWORD, PDWO
7f00: 52 44 29 3b 0d 0a 09 44 57 4f 52 44 20 49 6e 74 RD);...DWORD Int
7f10: 65 72 6e 65 74 53 65 74 46 69 6c 65 50 6f 69 6e ernetSetFilePoin
7f20: 74 65 72 28 48 49 4e 54 45 52 4e 45 54 2c 20 4c ter(HINTERNET, L
7f30: 4f 4e 47 2c 20 50 56 4f 49 44 2c 20 44 57 4f 52 ONG, PVOID, DWOR
7f40: 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f D, DWORD);...BOO
7f50: 4c 20 49 6e 74 65 72 6e 65 74 57 72 69 74 65 46 L InternetWriteF
7f60: 69 6c 65 28 48 49 4e 54 45 52 4e 45 54 2c 20 4c ile(HINTERNET, L
7f70: 50 43 56 4f 49 44 2c 20 44 57 4f 52 44 2c 20 50 PCVOID, DWORD, P
7f80: 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 49 DWORD);...BOOL I
7f90: 6e 74 65 72 6e 65 74 51 75 65 72 79 44 61 74 61 nternetQueryData
7fa0: 41 76 61 69 6c 61 62 6c 65 28 48 49 4e 54 45 52 Available(HINTER
7fb0: 4e 45 54 2c 20 50 44 57 4f 52 44 2c 20 44 57 4f NET, PDWORD, DWO
7fc0: 52 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f RD, DWORD);...BO
7fd0: 4f 4c 20 49 6e 74 65 72 6e 65 74 46 69 6e 64 4e OL InternetFindN
7fe0: 65 78 74 46 69 6c 65 41 28 48 49 4e 54 45 52 4e extFileA(HINTERN
7ff0: 45 54 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 42 4f ET, PVOID);...BO
8000: 4f 4c 20 49 6e 74 65 72 6e 65 74 46 69 6e 64 4e OL InternetFindN
8010: 65 78 74 46 69 6c 65 57 28 48 49 4e 54 45 52 4e extFileW(HINTERN
8020: 45 54 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 42 4f ET, PVOID);...BO
8030: 4f 4c 20 49 6e 74 65 72 6e 65 74 51 75 65 72 79 OL InternetQuery
8040: 4f 70 74 69 6f 6e 41 28 48 49 4e 54 45 52 4e 45 OptionA(HINTERNE
8050: 54 2c 20 44 57 4f 52 44 2c 20 50 56 4f 49 44 2c T, DWORD, PVOID,
8060: 20 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c PDWORD);...BOOL
8070: 20 49 6e 74 65 72 6e 65 74 51 75 65 72 79 4f 70 InternetQueryOp
8080: 74 69 6f 6e 57 28 48 49 4e 54 45 52 4e 45 54 2c tionW(HINTERNET,
8090: 20 44 57 4f 52 44 2c 20 50 56 4f 49 44 2c 20 50 DWORD, PVOID, P
80a0: 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 49 DWORD);...BOOL I
80b0: 6e 74 65 72 6e 65 74 53 65 74 4f 70 74 69 6f 6e nternetSetOption
80c0: 41 28 48 49 4e 54 45 52 4e 45 54 2c 20 44 57 4f A(HINTERNET, DWO
80d0: 52 44 2c 20 50 56 4f 49 44 2c 20 44 57 4f 52 44 RD, PVOID, DWORD
80e0: 29 3b 0d 0a 09 42 4f 4f 4c 20 49 6e 74 65 72 6e );...BOOL Intern
80f0: 65 74 53 65 74 4f 70 74 69 6f 6e 57 28 48 49 4e etSetOptionW(HIN
8100: 54 45 52 4e 45 54 2c 20 44 57 4f 52 44 2c 20 50 TERNET, DWORD, P
8110: 56 4f 49 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 VOID, DWORD);...
8120: 42 4f 4f 4c 20 49 6e 74 65 72 6e 65 74 53 65 74 BOOL InternetSet
8130: 4f 70 74 69 6f 6e 45 78 41 28 48 49 4e 54 45 52 OptionExA(HINTER
8140: 4e 45 54 2c 20 44 57 4f 52 44 2c 20 50 56 4f 49 NET, DWORD, PVOI
8150: 44 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 29 D, DWORD, DWORD)
8160: 3b 0d 0a 09 42 4f 4f 4c 20 49 6e 74 65 72 6e 65 ;...BOOL Interne
8170: 74 53 65 74 4f 70 74 69 6f 6e 45 78 57 28 48 49 tSetOptionExW(HI
8180: 4e 54 45 52 4e 45 54 2c 20 44 57 4f 52 44 2c 20 NTERNET, DWORD,
8190: 50 56 4f 49 44 2c 20 44 57 4f 52 44 2c 20 44 57 PVOID, DWORD, DW
81a0: 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 49 6e 74 ORD);...BOOL Int
81b0: 65 72 6e 65 74 47 65 74 4c 61 73 74 52 65 73 70 ernetGetLastResp
81c0: 6f 6e 73 65 49 6e 66 6f 41 28 50 44 57 4f 52 44 onseInfoA(PDWORD
81d0: 2c 20 4c 50 53 54 52 2c 20 50 44 57 4f 52 44 29 , LPSTR, PDWORD)
81e0: 3b 0d 0a 09 42 4f 4f 4c 20 49 6e 74 65 72 6e 65 ;...BOOL Interne
81f0: 74 47 65 74 4c 61 73 74 52 65 73 70 6f 6e 73 65 tGetLastResponse
8200: 49 6e 66 6f 57 28 50 44 57 4f 52 44 2c 20 4c 50 InfoW(PDWORD, LP
8210: 57 53 54 52 2c 20 50 44 57 4f 52 44 29 3b 0d 0a WSTR, PDWORD);..
8220: 09 49 4e 54 45 52 4e 45 54 5f 53 54 41 54 55 53 .INTERNET_STATUS
8230: 5f 43 41 4c 4c 42 41 43 4b 20 49 6e 74 65 72 6e _CALLBACK Intern
8240: 65 74 53 65 74 53 74 61 74 75 73 43 61 6c 6c 62 etSetStatusCallb
8250: 61 63 6b 28 48 49 4e 54 45 52 4e 45 54 2c 0d 0a ack(HINTERNET,..
8260: 09 20 20 49 4e 54 45 52 4e 45 54 5f 53 54 41 54 . INTERNET_STAT
8270: 55 53 5f 43 41 4c 4c 42 41 43 4b 29 3b 0d 0a 09 US_CALLBACK);...
8280: 44 57 4f 52 44 20 46 74 70 47 65 74 46 69 6c 65 DWORD FtpGetFile
8290: 53 69 7a 65 28 48 49 4e 54 45 52 4e 45 54 2c 20 Size(HINTERNET,
82a0: 4c 50 44 57 4f 52 44 29 3b 0d 0a 09 48 49 4e 54 LPDWORD);...HINT
82b0: 45 52 4e 45 54 20 46 74 70 46 69 6e 64 46 69 72 ERNET FtpFindFir
82c0: 73 74 46 69 6c 65 41 28 48 49 4e 54 45 52 4e 45 stFileA(HINTERNE
82d0: 54 2c 20 4c 50 43 53 54 52 2c 20 4c 50 57 49 4e T, LPCSTR, LPWIN
82e0: 33 32 5f 46 49 4e 44 5f 44 41 54 41 2c 20 44 57 32_FIND_DATA, DW
82f0: 4f 52 44 2c 0d 0a 09 20 20 44 57 4f 52 44 29 3b ORD,... DWORD);
8300: 0d 0a 09 48 49 4e 54 45 52 4e 45 54 20 46 74 70 ...HINTERNET Ftp
8310: 46 69 6e 64 46 69 72 73 74 46 69 6c 65 57 28 48 FindFirstFileW(H
8320: 49 4e 54 45 52 4e 45 54 2c 20 4c 50 43 57 53 54 INTERNET, LPCWST
8330: 52 2c 20 4c 50 57 49 4e 33 32 5f 46 49 4e 44 5f R, LPWIN32_FIND_
8340: 44 41 54 41 2c 20 44 57 4f 52 44 2c 0d 0a 09 20 DATA, DWORD,...
8350: 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 DWORD);...BOOL
8360: 46 74 70 47 65 74 46 69 6c 65 41 28 48 49 4e 54 FtpGetFileA(HINT
8370: 45 52 4e 45 54 2c 20 4c 50 43 53 54 52 2c 20 4c ERNET, LPCSTR, L
8380: 50 43 53 54 52 2c 20 42 4f 4f 4c 2c 20 44 57 4f PCSTR, BOOL, DWO
8390: 52 44 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 RD, DWORD, DWORD
83a0: 29 3b 0d 0a 09 42 4f 4f 4c 20 46 74 70 47 65 74 );...BOOL FtpGet
83b0: 46 69 6c 65 57 28 48 49 4e 54 45 52 4e 45 54 2c FileW(HINTERNET,
83c0: 20 4c 50 43 57 53 54 52 2c 20 4c 50 43 57 53 54 LPCWSTR, LPCWST
83d0: 52 2c 20 42 4f 4f 4c 2c 20 44 57 4f 52 44 2c 20 R, BOOL, DWORD,
83e0: 44 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0d 0a DWORD, DWORD);..
83f0: 09 42 4f 4f 4c 20 46 74 70 50 75 74 46 69 6c 65 .BOOL FtpPutFile
8400: 41 28 48 49 4e 54 45 52 4e 45 54 2c 20 4c 50 43 A(HINTERNET, LPC
8410: 53 54 52 2c 20 4c 50 43 53 54 52 2c 20 44 57 4f STR, LPCSTR, DWO
8420: 52 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f RD, DWORD);...BO
8430: 4f 4c 20 46 74 70 50 75 74 46 69 6c 65 57 28 48 OL FtpPutFileW(H
8440: 49 4e 54 45 52 4e 45 54 2c 20 4c 50 43 57 53 54 INTERNET, LPCWST
8450: 52 2c 20 4c 50 43 57 53 54 52 2c 20 44 57 4f 52 R, LPCWSTR, DWOR
8460: 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f D, DWORD);...BOO
8470: 4c 20 46 74 70 44 65 6c 65 74 65 46 69 6c 65 41 L FtpDeleteFileA
8480: 28 48 49 4e 54 45 52 4e 45 54 2c 20 4c 50 43 53 (HINTERNET, LPCS
8490: 54 52 29 3b 0d 0a 09 42 4f 4f 4c 20 46 74 70 44 TR);...BOOL FtpD
84a0: 65 6c 65 74 65 46 69 6c 65 57 28 48 49 4e 54 45 eleteFileW(HINTE
84b0: 52 4e 45 54 2c 20 4c 50 43 57 53 54 52 29 3b 0d RNET, LPCWSTR);.
84c0: 0a 09 42 4f 4f 4c 20 46 74 70 52 65 6e 61 6d 65 ..BOOL FtpRename
84d0: 46 69 6c 65 41 28 48 49 4e 54 45 52 4e 45 54 2c FileA(HINTERNET,
84e0: 20 4c 50 43 53 54 52 2c 20 4c 50 43 53 54 52 29 LPCSTR, LPCSTR)
84f0: 3b 0d 0a 09 42 4f 4f 4c 20 46 74 70 52 65 6e 61 ;...BOOL FtpRena
8500: 6d 65 46 69 6c 65 57 28 48 49 4e 54 45 52 4e 45 meFileW(HINTERNE
8510: 54 2c 20 4c 50 43 57 53 54 52 2c 20 4c 50 43 57 T, LPCWSTR, LPCW
8520: 53 54 52 29 3b 0d 0a 09 48 49 4e 54 45 52 4e 45 STR);...HINTERNE
8530: 54 20 46 74 70 4f 70 65 6e 46 69 6c 65 41 28 48 T FtpOpenFileA(H
8540: 49 4e 54 45 52 4e 45 54 2c 20 4c 50 43 53 54 52 INTERNET, LPCSTR
8550: 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 , DWORD, DWORD,
8560: 44 57 4f 52 44 29 3b 0d 0a 09 48 49 4e 54 45 52 DWORD);...HINTER
8570: 4e 45 54 20 46 74 70 4f 70 65 6e 46 69 6c 65 57 NET FtpOpenFileW
8580: 28 48 49 4e 54 45 52 4e 45 54 2c 20 4c 50 43 57 (HINTERNET, LPCW
8590: 53 54 52 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 STR, DWORD, DWOR
85a0: 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f D, DWORD);...BOO
85b0: 4c 20 46 74 70 43 72 65 61 74 65 44 69 72 65 63 L FtpCreateDirec
85c0: 74 6f 72 79 41 28 48 49 4e 54 45 52 4e 45 54 2c toryA(HINTERNET,
85d0: 20 4c 50 43 53 54 52 29 3b 0d 0a 09 42 4f 4f 4c LPCSTR);...BOOL
85e0: 20 46 74 70 43 72 65 61 74 65 44 69 72 65 63 74 FtpCreateDirect
85f0: 6f 72 79 57 28 48 49 4e 54 45 52 4e 45 54 2c 20 oryW(HINTERNET,
8600: 4c 50 43 57 53 54 52 29 3b 0d 0a 09 42 4f 4f 4c LPCWSTR);...BOOL
8610: 20 46 74 70 52 65 6d 6f 76 65 44 69 72 65 63 74 FtpRemoveDirect
8620: 6f 72 79 41 28 48 49 4e 54 45 52 4e 45 54 2c 20 oryA(HINTERNET,
8630: 4c 50 43 53 54 52 29 3b 0d 0a 09 42 4f 4f 4c 20 LPCSTR);...BOOL
8640: 46 74 70 52 65 6d 6f 76 65 44 69 72 65 63 74 6f FtpRemoveDirecto
8650: 72 79 57 28 48 49 4e 54 45 52 4e 45 54 2c 20 4c ryW(HINTERNET, L
8660: 50 43 57 53 54 52 29 3b 0d 0a 09 42 4f 4f 4c 20 PCWSTR);...BOOL
8670: 46 74 70 53 65 74 43 75 72 72 65 6e 74 44 69 72 FtpSetCurrentDir
8680: 65 63 74 6f 72 79 41 28 48 49 4e 54 45 52 4e 45 ectoryA(HINTERNE
8690: 54 2c 20 4c 50 43 53 54 52 29 3b 0d 0a 09 42 4f T, LPCSTR);...BO
86a0: 4f 4c 20 46 74 70 53 65 74 43 75 72 72 65 6e 74 OL FtpSetCurrent
86b0: 44 69 72 65 63 74 6f 72 79 57 28 48 49 4e 54 45 DirectoryW(HINTE
86c0: 52 4e 45 54 2c 20 4c 50 43 57 53 54 52 29 3b 0d RNET, LPCWSTR);.
86d0: 0a 09 42 4f 4f 4c 20 46 74 70 47 65 74 43 75 72 ..BOOL FtpGetCur
86e0: 72 65 6e 74 44 69 72 65 63 74 6f 72 79 41 28 48 rentDirectoryA(H
86f0: 49 4e 54 45 52 4e 45 54 2c 20 4c 50 53 54 52 2c INTERNET, LPSTR,
8700: 20 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c PDWORD);...BOOL
8710: 20 46 74 70 47 65 74 43 75 72 72 65 6e 74 44 69 FtpGetCurrentDi
8720: 72 65 63 74 6f 72 79 57 28 48 49 4e 54 45 52 4e rectoryW(HINTERN
8730: 45 54 2c 20 4c 50 57 53 54 52 2c 20 50 44 57 4f ET, LPWSTR, PDWO
8740: 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 46 74 70 43 RD);...BOOL FtpC
8750: 6f 6d 6d 61 6e 64 41 28 48 49 4e 54 45 52 4e 45 ommandA(HINTERNE
8760: 54 2c 20 42 4f 4f 4c 2c 20 44 57 4f 52 44 2c 20 T, BOOL, DWORD,
8770: 4c 50 43 53 54 52 2c 20 44 57 4f 52 44 5f 50 54 LPCSTR, DWORD_PT
8780: 52 2c 20 48 49 4e 54 45 52 4e 45 54 2a 29 3b 0d R, HINTERNET*);.
8790: 0a 09 42 4f 4f 4c 20 46 74 70 43 6f 6d 6d 61 6e ..BOOL FtpComman
87a0: 64 57 28 48 49 4e 54 45 52 4e 45 54 2c 20 42 4f dW(HINTERNET, BO
87b0: 4f 4c 2c 20 44 57 4f 52 44 2c 20 4c 50 43 57 53 OL, DWORD, LPCWS
87c0: 54 52 2c 20 44 57 4f 52 44 5f 50 54 52 2c 20 48 TR, DWORD_PTR, H
87d0: 49 4e 54 45 52 4e 45 54 2a 29 3b 0d 0a 09 42 4f INTERNET*);...BO
87e0: 4f 4c 20 47 6f 70 68 65 72 43 72 65 61 74 65 4c OL GopherCreateL
87f0: 6f 63 61 74 6f 72 41 28 4c 50 43 53 54 52 2c 20 ocatorA(LPCSTR,
8800: 49 4e 54 45 52 4e 45 54 5f 50 4f 52 54 2c 20 4c INTERNET_PORT, L
8810: 50 43 53 54 52 2c 20 4c 50 43 53 54 52 2c 20 44 PCSTR, LPCSTR, D
8820: 57 4f 52 44 2c 0d 0a 09 20 20 4c 50 53 54 52 2c WORD,... LPSTR,
8830: 20 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c PDWORD);...BOOL
8840: 20 47 6f 70 68 65 72 43 72 65 61 74 65 4c 6f 63 GopherCreateLoc
8850: 61 74 6f 72 57 28 4c 50 43 57 53 54 52 2c 20 49 atorW(LPCWSTR, I
8860: 4e 54 45 52 4e 45 54 5f 50 4f 52 54 2c 20 4c 50 NTERNET_PORT, LP
8870: 43 57 53 54 52 2c 20 4c 50 43 57 53 54 52 2c 20 CWSTR, LPCWSTR,
8880: 44 57 4f 52 44 2c 0d 0a 09 20 20 4c 50 57 53 54 DWORD,... LPWST
8890: 52 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f R, PDWORD);...BO
88a0: 4f 4c 20 47 6f 70 68 65 72 47 65 74 4c 6f 63 61 OL GopherGetLoca
88b0: 74 6f 72 54 79 70 65 41 28 4c 50 43 53 54 52 2c torTypeA(LPCSTR,
88c0: 20 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c PDWORD);...BOOL
88d0: 20 47 6f 70 68 65 72 47 65 74 4c 6f 63 61 74 6f GopherGetLocato
88e0: 72 54 79 70 65 57 28 4c 50 43 57 53 54 52 2c 20 rTypeW(LPCWSTR,
88f0: 50 44 57 4f 52 44 29 3b 0d 0a 09 48 49 4e 54 45 PDWORD);...HINTE
8900: 52 4e 45 54 20 47 6f 70 68 65 72 46 69 6e 64 46 RNET GopherFindF
8910: 69 72 73 74 46 69 6c 65 41 28 48 49 4e 54 45 52 irstFileA(HINTER
8920: 4e 45 54 2c 20 4c 50 43 53 54 52 2c 20 4c 50 43 NET, LPCSTR, LPC
8930: 53 54 52 2c 0d 0a 09 20 20 4c 50 47 4f 50 48 45 STR,... LPGOPHE
8940: 52 5f 46 49 4e 44 5f 44 41 54 41 41 2c 20 44 57 R_FIND_DATAA, DW
8950: 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 48 ORD, DWORD);...H
8960: 49 4e 54 45 52 4e 45 54 20 47 6f 70 68 65 72 46 INTERNET GopherF
8970: 69 6e 64 46 69 72 73 74 46 69 6c 65 57 28 48 49 indFirstFileW(HI
8980: 4e 54 45 52 4e 45 54 2c 20 4c 50 43 57 53 54 52 NTERNET, LPCWSTR
8990: 2c 20 4c 50 43 57 53 54 52 2c 0d 0a 09 20 20 4c , LPCWSTR,... L
89a0: 50 47 4f 50 48 45 52 5f 46 49 4e 44 5f 44 41 54 PGOPHER_FIND_DAT
89b0: 41 57 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 AW, DWORD, DWORD
89c0: 29 3b 0d 0a 09 48 49 4e 54 45 52 4e 45 54 20 47 );...HINTERNET G
89d0: 6f 70 68 65 72 4f 70 65 6e 46 69 6c 65 41 28 48 opherOpenFileA(H
89e0: 49 4e 54 45 52 4e 45 54 2c 20 4c 50 43 53 54 52 INTERNET, LPCSTR
89f0: 2c 20 4c 50 43 53 54 52 2c 20 44 57 4f 52 44 2c , LPCSTR, DWORD,
8a00: 20 44 57 4f 52 44 29 3b 0d 0a 09 48 49 4e 54 45 DWORD);...HINTE
8a10: 52 4e 45 54 20 47 6f 70 68 65 72 4f 70 65 6e 46 RNET GopherOpenF
8a20: 69 6c 65 57 28 48 49 4e 54 45 52 4e 45 54 2c 20 ileW(HINTERNET,
8a30: 4c 50 43 57 53 54 52 2c 20 4c 50 43 57 53 54 52 LPCWSTR, LPCWSTR
8a40: 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b , DWORD, DWORD);
8a50: 0d 0a 09 42 4f 4f 4c 20 47 6f 70 68 65 72 47 65 ...BOOL GopherGe
8a60: 74 41 74 74 72 69 62 75 74 65 41 28 48 49 4e 54 tAttributeA(HINT
8a70: 45 52 4e 45 54 2c 20 4c 50 43 53 54 52 2c 20 4c ERNET, LPCSTR, L
8a80: 50 43 53 54 52 2c 20 4c 50 42 59 54 45 2c 20 44 PCSTR, LPBYTE, D
8a90: 57 4f 52 44 2c 0d 0a 09 20 20 50 44 57 4f 52 44 WORD,... PDWORD
8aa0: 2c 20 47 4f 50 48 45 52 5f 41 54 54 52 49 42 55 , GOPHER_ATTRIBU
8ab0: 54 45 5f 45 4e 55 4d 45 52 41 54 4f 52 2c 20 44 TE_ENUMERATOR, D
8ac0: 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 47 6f WORD);...BOOL Go
8ad0: 70 68 65 72 47 65 74 41 74 74 72 69 62 75 74 65 pherGetAttribute
8ae0: 57 28 48 49 4e 54 45 52 4e 45 54 2c 20 4c 50 43 W(HINTERNET, LPC
8af0: 57 53 54 52 2c 20 4c 50 43 57 53 54 52 2c 20 4c WSTR, LPCWSTR, L
8b00: 50 42 59 54 45 2c 20 44 57 4f 52 44 2c 0d 0a 09 PBYTE, DWORD,...
8b10: 20 20 50 44 57 4f 52 44 2c 20 47 4f 50 48 45 52 PDWORD, GOPHER
8b20: 5f 41 54 54 52 49 42 55 54 45 5f 45 4e 55 4d 45 _ATTRIBUTE_ENUME
8b30: 52 41 54 4f 52 2c 20 44 57 4f 52 44 29 3b 0d 0a RATOR, DWORD);..
8b40: 09 48 49 4e 54 45 52 4e 45 54 20 48 74 74 70 4f .HINTERNET HttpO
8b50: 70 65 6e 52 65 71 75 65 73 74 41 28 48 49 4e 54 penRequestA(HINT
8b60: 45 52 4e 45 54 2c 20 4c 50 43 53 54 52 2c 20 4c ERNET, LPCSTR, L
8b70: 50 43 53 54 52 2c 20 4c 50 43 53 54 52 2c 20 4c PCSTR, LPCSTR, L
8b80: 50 43 53 54 52 2c 0d 0a 09 20 20 4c 50 43 53 54 PCSTR,... LPCST
8b90: 52 2a 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 R*, DWORD, DWORD
8ba0: 29 3b 0d 0a 09 48 49 4e 54 45 52 4e 45 54 20 48 );...HINTERNET H
8bb0: 74 74 70 4f 70 65 6e 52 65 71 75 65 73 74 57 28 ttpOpenRequestW(
8bc0: 48 49 4e 54 45 52 4e 45 54 2c 20 4c 50 43 57 53 HINTERNET, LPCWS
8bd0: 54 52 2c 20 4c 50 43 57 53 54 52 2c 20 4c 50 43 TR, LPCWSTR, LPC
8be0: 57 53 54 52 2c 20 4c 50 43 57 53 54 52 2c 0d 0a WSTR, LPCWSTR,..
8bf0: 09 20 20 4c 50 43 57 53 54 52 2a 2c 20 44 57 4f . LPCWSTR*, DWO
8c00: 52 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f RD, DWORD);...BO
8c10: 4f 4c 20 48 74 74 70 41 64 64 52 65 71 75 65 73 OL HttpAddReques
8c20: 74 48 65 61 64 65 72 73 41 28 48 49 4e 54 45 52 tHeadersA(HINTER
8c30: 4e 45 54 2c 20 4c 50 43 53 54 52 2c 20 44 57 4f NET, LPCSTR, DWO
8c40: 52 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f RD, DWORD);...BO
8c50: 4f 4c 20 48 74 74 70 41 64 64 52 65 71 75 65 73 OL HttpAddReques
8c60: 74 48 65 61 64 65 72 73 57 28 48 49 4e 54 45 52 tHeadersW(HINTER
8c70: 4e 45 54 2c 20 4c 50 43 57 53 54 52 2c 20 44 57 NET, LPCWSTR, DW
8c80: 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 ORD, DWORD);...B
8c90: 4f 4f 4c 20 48 74 74 70 53 65 6e 64 52 65 71 75 OOL HttpSendRequ
8ca0: 65 73 74 41 28 48 49 4e 54 45 52 4e 45 54 2c 20 estA(HINTERNET,
8cb0: 4c 50 43 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 LPCSTR, DWORD, P
8cc0: 56 4f 49 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 VOID, DWORD);...
8cd0: 42 4f 4f 4c 20 48 74 74 70 53 65 6e 64 52 65 71 BOOL HttpSendReq
8ce0: 75 65 73 74 57 28 48 49 4e 54 45 52 4e 45 54 2c uestW(HINTERNET,
8cf0: 20 4c 50 43 57 53 54 52 2c 20 44 57 4f 52 44 2c LPCWSTR, DWORD,
8d00: 20 50 56 4f 49 44 2c 20 44 57 4f 52 44 29 3b 0d PVOID, DWORD);.
8d10: 0a 09 42 4f 4f 4c 20 48 74 74 70 51 75 65 72 79 ..BOOL HttpQuery
8d20: 49 6e 66 6f 41 28 48 49 4e 54 45 52 4e 45 54 2c InfoA(HINTERNET,
8d30: 20 44 57 4f 52 44 2c 20 50 56 4f 49 44 2c 20 50 DWORD, PVOID, P
8d40: 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b 0d DWORD, PDWORD);.
8d50: 0a 09 42 4f 4f 4c 20 48 74 74 70 51 75 65 72 79 ..BOOL HttpQuery
8d60: 49 6e 66 6f 57 28 48 49 4e 54 45 52 4e 45 54 2c InfoW(HINTERNET,
8d70: 20 44 57 4f 52 44 2c 20 50 56 4f 49 44 2c 20 50 DWORD, PVOID, P
8d80: 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b 0d DWORD, PDWORD);.
8d90: 0a 09 42 4f 4f 4c 20 49 6e 74 65 72 6e 65 74 53 ..BOOL InternetS
8da0: 65 74 43 6f 6f 6b 69 65 41 28 4c 50 43 53 54 52 etCookieA(LPCSTR
8db0: 2c 20 4c 50 43 53 54 52 2c 20 4c 50 43 53 54 52 , LPCSTR, LPCSTR
8dc0: 29 3b 0d 0a 09 42 4f 4f 4c 20 49 6e 74 65 72 6e );...BOOL Intern
8dd0: 65 74 53 65 74 43 6f 6f 6b 69 65 57 28 4c 50 43 etSetCookieW(LPC
8de0: 57 53 54 52 2c 20 4c 50 43 57 53 54 52 2c 20 4c WSTR, LPCWSTR, L
8df0: 50 43 57 53 54 52 29 3b 0d 0a 09 42 4f 4f 4c 20 PCWSTR);...BOOL
8e00: 49 6e 74 65 72 6e 65 74 47 65 74 43 6f 6f 6b 69 InternetGetCooki
8e10: 65 41 28 4c 50 43 53 54 52 2c 20 4c 50 43 53 54 eA(LPCSTR, LPCST
8e20: 52 2c 20 4c 50 53 54 52 2c 20 50 44 57 4f 52 44 R, LPSTR, PDWORD
8e30: 29 3b 0d 0a 09 42 4f 4f 4c 20 49 6e 74 65 72 6e );...BOOL Intern
8e40: 65 74 47 65 74 43 6f 6f 6b 69 65 57 28 4c 50 43 etGetCookieW(LPC
8e50: 57 53 54 52 2c 20 4c 50 43 57 53 54 52 2c 20 4c WSTR, LPCWSTR, L
8e60: 50 57 53 54 52 2c 20 50 44 57 4f 52 44 29 3b 0d PWSTR, PDWORD);.
8e70: 0a 09 44 57 4f 52 44 20 49 6e 74 65 72 6e 65 74 ..DWORD Internet
8e80: 41 74 74 65 6d 70 74 43 6f 6e 6e 65 63 74 28 44 AttemptConnect(D
8e90: 57 4f 52 44 29 3b 0d 0a 09 44 57 4f 52 44 20 49 WORD);...DWORD I
8ea0: 6e 74 65 72 6e 65 74 45 72 72 6f 72 44 6c 67 28 nternetErrorDlg(
8eb0: 48 57 4e 44 2c 20 48 49 4e 54 45 52 4e 45 54 2c HWND, HINTERNET,
8ec0: 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 50 DWORD, DWORD, P
8ed0: 56 4f 49 44 2a 29 3b 0d 0a 09 44 57 4f 52 44 20 VOID*);...DWORD
8ee0: 49 6e 74 65 72 6e 65 74 43 6f 6e 66 69 72 6d 5a InternetConfirmZ
8ef0: 6f 6e 65 43 72 6f 73 73 69 6e 67 28 48 57 4e 44 oneCrossing(HWND
8f00: 2c 20 4c 50 53 54 52 2c 20 4c 50 53 54 52 2c 20 , LPSTR, LPSTR,
8f10: 42 4f 4f 4c 29 3b 0d 0a 09 42 4f 4f 4c 20 43 72 BOOL);...BOOL Cr
8f20: 65 61 74 65 55 72 6c 43 61 63 68 65 45 6e 74 72 eateUrlCacheEntr
8f30: 79 41 28 4c 50 43 53 54 52 2c 20 44 57 4f 52 44 yA(LPCSTR, DWORD
8f40: 2c 20 4c 50 43 53 54 52 2c 20 4c 50 53 54 52 2c , LPCSTR, LPSTR,
8f50: 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 DWORD);...BOOL
8f60: 43 72 65 61 74 65 55 72 6c 43 61 63 68 65 45 6e CreateUrlCacheEn
8f70: 74 72 79 57 28 4c 50 43 57 53 54 52 2c 20 44 57 tryW(LPCWSTR, DW
8f80: 4f 52 44 2c 20 4c 50 43 57 53 54 52 2c 20 4c 50 ORD, LPCWSTR, LP
8f90: 57 53 54 52 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 WSTR, DWORD);...
8fa0: 42 4f 4f 4c 20 43 6f 6d 6d 69 74 55 72 6c 43 61 BOOL CommitUrlCa
8fb0: 63 68 65 45 6e 74 72 79 41 28 4c 50 43 53 54 52 cheEntryA(LPCSTR
8fc0: 2c 20 4c 50 43 53 54 52 2c 20 46 49 4c 45 54 49 , LPCSTR, FILETI
8fd0: 4d 45 2c 20 46 49 4c 45 54 49 4d 45 2c 20 44 57 ME, FILETIME, DW
8fe0: 4f 52 44 2c 0d 0a 09 20 20 4c 50 42 59 54 45 2c ORD,... LPBYTE,
8ff0: 20 44 57 4f 52 44 2c 20 4c 50 43 53 54 52 2c 20 DWORD, LPCSTR,
9000: 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 43 DWORD);...BOOL C
9010: 6f 6d 6d 69 74 55 72 6c 43 61 63 68 65 45 6e 74 ommitUrlCacheEnt
9020: 72 79 57 28 4c 50 43 57 53 54 52 2c 20 4c 50 43 ryW(LPCWSTR, LPC
9030: 57 53 54 52 2c 20 46 49 4c 45 54 49 4d 45 2c 20 WSTR, FILETIME,
9040: 46 49 4c 45 54 49 4d 45 2c 20 44 57 4f 52 44 2c FILETIME, DWORD,
9050: 0d 0a 09 20 20 4c 50 42 59 54 45 2c 20 44 57 4f ... LPBYTE, DWO
9060: 52 44 2c 20 4c 50 43 57 53 54 52 2c 20 44 57 4f RD, LPCWSTR, DWO
9070: 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 52 65 74 72 RD);...BOOL Retr
9080: 69 65 76 65 55 72 6c 43 61 63 68 65 45 6e 74 72 ieveUrlCacheEntr
9090: 79 46 69 6c 65 41 28 4c 50 43 53 54 52 2c 20 4c yFileA(LPCSTR, L
90a0: 50 49 4e 54 45 52 4e 45 54 5f 43 41 43 48 45 5f PINTERNET_CACHE_
90b0: 45 4e 54 52 59 5f 49 4e 46 4f 41 2c 0d 0a 09 20 ENTRY_INFOA,...
90c0: 20 50 44 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b PDWORD, DWORD);
90d0: 0d 0a 09 42 4f 4f 4c 20 52 65 74 72 69 65 76 65 ...BOOL Retrieve
90e0: 55 72 6c 43 61 63 68 65 45 6e 74 72 79 46 69 6c UrlCacheEntryFil
90f0: 65 57 28 4c 50 43 57 53 54 52 2c 20 4c 50 49 4e eW(LPCWSTR, LPIN
9100: 54 45 52 4e 45 54 5f 43 41 43 48 45 5f 45 4e 54 TERNET_CACHE_ENT
9110: 52 59 5f 49 4e 46 4f 57 2c 0d 0a 09 20 20 50 44 RY_INFOW,... PD
9120: 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 WORD, DWORD);...
9130: 42 4f 4f 4c 20 55 6e 6c 6f 63 6b 55 72 6c 43 61 BOOL UnlockUrlCa
9140: 63 68 65 45 6e 74 72 79 46 69 6c 65 28 4c 50 43 cheEntryFile(LPC
9150: 53 54 52 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 48 STR, DWORD);...H
9160: 41 4e 44 4c 45 20 52 65 74 72 69 65 76 65 55 72 ANDLE RetrieveUr
9170: 6c 43 61 63 68 65 45 6e 74 72 79 53 74 72 65 61 lCacheEntryStrea
9180: 6d 41 28 4c 50 43 53 54 52 2c 20 4c 50 49 4e 54 mA(LPCSTR, LPINT
9190: 45 52 4e 45 54 5f 43 41 43 48 45 5f 45 4e 54 52 ERNET_CACHE_ENTR
91a0: 59 5f 49 4e 46 4f 41 2c 0d 0a 09 20 20 50 44 57 Y_INFOA,... PDW
91b0: 4f 52 44 2c 20 42 4f 4f 4c 2c 20 44 57 4f 52 44 ORD, BOOL, DWORD
91c0: 29 3b 0d 0a 09 48 41 4e 44 4c 45 20 52 65 74 72 );...HANDLE Retr
91d0: 69 65 76 65 55 72 6c 43 61 63 68 65 45 6e 74 72 ieveUrlCacheEntr
91e0: 79 53 74 72 65 61 6d 57 28 4c 50 43 57 53 54 52 yStreamW(LPCWSTR
91f0: 2c 20 4c 50 49 4e 54 45 52 4e 45 54 5f 43 41 43 , LPINTERNET_CAC
9200: 48 45 5f 45 4e 54 52 59 5f 49 4e 46 4f 57 2c 0d HE_ENTRY_INFOW,.
9210: 0a 09 20 20 50 44 57 4f 52 44 2c 20 42 4f 4f 4c .. PDWORD, BOOL
9220: 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c , DWORD);...BOOL
9230: 20 52 65 61 64 55 72 6c 43 61 63 68 65 45 6e 74 ReadUrlCacheEnt
9240: 72 79 53 74 72 65 61 6d 28 48 41 4e 44 4c 45 2c ryStream(HANDLE,
9250: 20 44 57 4f 52 44 2c 20 50 56 4f 49 44 2c 20 50 DWORD, PVOID, P
9260: 44 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0d 0a DWORD, DWORD);..
9270: 09 42 4f 4f 4c 20 55 6e 6c 6f 63 6b 55 72 6c 43 .BOOL UnlockUrlC
9280: 61 63 68 65 45 6e 74 72 79 53 74 72 65 61 6d 28 acheEntryStream(
9290: 48 41 4e 44 4c 45 2c 20 44 57 4f 52 44 29 3b 0d HANDLE, DWORD);.
92a0: 0a 09 42 4f 4f 4c 20 47 65 74 55 72 6c 43 61 63 ..BOOL GetUrlCac
92b0: 68 65 45 6e 74 72 79 49 6e 66 6f 41 28 4c 50 43 heEntryInfoA(LPC
92c0: 53 54 52 2c 20 4c 50 49 4e 54 45 52 4e 45 54 5f STR, LPINTERNET_
92d0: 43 41 43 48 45 5f 45 4e 54 52 59 5f 49 4e 46 4f CACHE_ENTRY_INFO
92e0: 41 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f A, PDWORD);...BO
92f0: 4f 4c 20 47 65 74 55 72 6c 43 61 63 68 65 45 6e OL GetUrlCacheEn
9300: 74 72 79 49 6e 66 6f 57 28 4c 50 43 57 53 54 52 tryInfoW(LPCWSTR
9310: 2c 20 4c 50 49 4e 54 45 52 4e 45 54 5f 43 41 43 , LPINTERNET_CAC
9320: 48 45 5f 45 4e 54 52 59 5f 49 4e 46 4f 57 2c 20 HE_ENTRY_INFOW,
9330: 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 PDWORD);...BOOL
9340: 53 65 74 55 72 6c 43 61 63 68 65 45 6e 74 72 79 SetUrlCacheEntry
9350: 49 6e 66 6f 41 28 4c 50 43 53 54 52 2c 20 4c 50 InfoA(LPCSTR, LP
9360: 49 4e 54 45 52 4e 45 54 5f 43 41 43 48 45 5f 45 INTERNET_CACHE_E
9370: 4e 54 52 59 5f 49 4e 46 4f 41 2c 20 44 57 4f 52 NTRY_INFOA, DWOR
9380: 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 55 72 D);...BOOL SetUr
9390: 6c 43 61 63 68 65 45 6e 74 72 79 49 6e 66 6f 57 lCacheEntryInfoW
93a0: 28 4c 50 43 57 53 54 52 2c 20 4c 50 49 4e 54 45 (LPCWSTR, LPINTE
93b0: 52 4e 45 54 5f 43 41 43 48 45 5f 45 4e 54 52 59 RNET_CACHE_ENTRY
93c0: 5f 49 4e 46 4f 57 2c 20 44 57 4f 52 44 29 3b 0d _INFOW, DWORD);.
93d0: 0a 09 48 41 4e 44 4c 45 20 46 69 6e 64 46 69 72 ..HANDLE FindFir
93e0: 73 74 55 72 6c 43 61 63 68 65 45 6e 74 72 79 41 stUrlCacheEntryA
93f0: 28 4c 50 43 53 54 52 2c 20 4c 50 49 4e 54 45 52 (LPCSTR, LPINTER
9400: 4e 45 54 5f 43 41 43 48 45 5f 45 4e 54 52 59 5f NET_CACHE_ENTRY_
9410: 49 4e 46 4f 41 2c 0d 0a 09 20 20 50 44 57 4f 52 INFOA,... PDWOR
9420: 44 29 3b 0d 0a 09 48 41 4e 44 4c 45 20 46 69 6e D);...HANDLE Fin
9430: 64 46 69 72 73 74 55 72 6c 43 61 63 68 65 45 6e dFirstUrlCacheEn
9440: 74 72 79 57 28 4c 50 43 57 53 54 52 2c 20 4c 50 tryW(LPCWSTR, LP
9450: 49 4e 54 45 52 4e 45 54 5f 43 41 43 48 45 5f 45 INTERNET_CACHE_E
9460: 4e 54 52 59 5f 49 4e 46 4f 57 2c 0d 0a 09 20 20 NTRY_INFOW,...
9470: 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 PDWORD);...BOOL
9480: 46 69 6e 64 4e 65 78 74 55 72 6c 43 61 63 68 65 FindNextUrlCache
9490: 45 6e 74 72 79 41 28 48 41 4e 44 4c 45 2c 20 4c EntryA(HANDLE, L
94a0: 50 49 4e 54 45 52 4e 45 54 5f 43 41 43 48 45 5f PINTERNET_CACHE_
94b0: 45 4e 54 52 59 5f 49 4e 46 4f 41 2c 20 50 44 57 ENTRY_INFOA, PDW
94c0: 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 46 69 6e ORD);...BOOL Fin
94d0: 64 4e 65 78 74 55 72 6c 43 61 63 68 65 45 6e 74 dNextUrlCacheEnt
94e0: 72 79 57 28 48 41 4e 44 4c 45 2c 20 4c 50 49 4e ryW(HANDLE, LPIN
94f0: 54 45 52 4e 45 54 5f 43 41 43 48 45 5f 45 4e 54 TERNET_CACHE_ENT
9500: 52 59 5f 49 4e 46 4f 57 2c 20 50 44 57 4f 52 44 RY_INFOW, PDWORD
9510: 29 3b 0d 0a 09 42 4f 4f 4c 20 46 69 6e 64 43 6c );...BOOL FindCl
9520: 6f 73 65 55 72 6c 43 61 63 68 65 28 48 41 4e 44 oseUrlCache(HAND
9530: 4c 45 29 3b 0d 0a 09 42 4f 4f 4c 20 44 65 6c 65 LE);...BOOL Dele
9540: 74 65 55 72 6c 43 61 63 68 65 45 6e 74 72 79 28 teUrlCacheEntry(
9550: 4c 50 43 53 54 52 29 3b 0d 0a 09 44 57 4f 52 44 LPCSTR);...DWORD
9560: 20 41 75 74 68 65 6e 74 69 63 61 74 65 55 73 65 AuthenticateUse
9570: 72 28 50 56 4f 49 44 2a 2c 20 4c 50 53 54 52 2c r(PVOID*, LPSTR,
9580: 20 4c 50 53 54 52 2c 20 44 57 4f 52 44 2c 20 4c LPSTR, DWORD, L
9590: 50 53 54 52 2c 20 44 57 4f 52 44 2c 20 4c 50 53 PSTR, DWORD, LPS
95a0: 54 52 2c 0d 0a 09 20 20 4c 50 53 54 52 29 3b 0d TR,... LPSTR);.
95b0: 0a 09 42 4f 4f 4c 20 48 74 74 70 53 65 6e 64 52 ..BOOL HttpSendR
95c0: 65 71 75 65 73 74 45 78 41 28 48 49 4e 54 45 52 equestExA(HINTER
95d0: 4e 45 54 2c 20 4c 50 49 4e 54 45 52 4e 45 54 5f NET, LPINTERNET_
95e0: 42 55 46 46 45 52 53 41 2c 0d 0a 09 20 20 4c 50 BUFFERSA,... LP
95f0: 49 4e 54 45 52 4e 45 54 5f 42 55 46 46 45 52 53 INTERNET_BUFFERS
9600: 41 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 29 A, DWORD, DWORD)
9610: 3b 0d 0a 09 42 4f 4f 4c 20 48 74 74 70 53 65 6e ;...BOOL HttpSen
9620: 64 52 65 71 75 65 73 74 45 78 57 28 48 49 4e 54 dRequestExW(HINT
9630: 45 52 4e 45 54 2c 20 4c 50 49 4e 54 45 52 4e 45 ERNET, LPINTERNE
9640: 54 5f 42 55 46 46 45 52 53 57 2c 0d 0a 09 20 20 T_BUFFERSW,...
9650: 4c 50 49 4e 54 45 52 4e 45 54 5f 42 55 46 46 45 LPINTERNET_BUFFE
9660: 52 53 57 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 RSW, DWORD, DWOR
9670: 44 29 3b 0d 0a 09 42 4f 4f 4c 20 48 74 74 70 45 D);...BOOL HttpE
9680: 6e 64 52 65 71 75 65 73 74 41 28 48 49 4e 54 45 ndRequestA(HINTE
9690: 52 4e 45 54 2c 20 4c 50 49 4e 54 45 52 4e 45 54 RNET, LPINTERNET
96a0: 5f 42 55 46 46 45 52 53 41 2c 20 44 57 4f 52 44 _BUFFERSA, DWORD
96b0: 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c , DWORD);...BOOL
96c0: 20 48 74 74 70 45 6e 64 52 65 71 75 65 73 74 57 HttpEndRequestW
96d0: 28 48 49 4e 54 45 52 4e 45 54 2c 20 4c 50 49 4e (HINTERNET, LPIN
96e0: 54 45 52 4e 45 54 5f 42 55 46 46 45 52 53 57 2c TERNET_BUFFERSW,
96f0: 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0d DWORD, DWORD);.
9700: 0a 09 44 57 4f 52 44 20 49 6e 74 65 72 6e 65 74 ..DWORD Internet
9710: 44 69 61 6c 28 48 57 4e 44 2c 20 4c 50 54 53 54 Dial(HWND, LPTST
9720: 52 2c 20 44 57 4f 52 44 2c 20 4c 50 44 57 4f 52 R, DWORD, LPDWOR
9730: 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 44 57 4f D, DWORD);...DWO
9740: 52 44 20 49 6e 74 65 72 6e 65 74 48 61 6e 67 55 RD InternetHangU
9750: 70 28 44 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b p(DWORD, DWORD);
9760: 0d 0a 09 42 4f 4f 4c 20 49 6e 74 65 72 6e 65 74 ...BOOL Internet
9770: 47 6f 4f 6e 6c 69 6e 65 28 4c 50 54 53 54 52 2c GoOnline(LPTSTR,
9780: 20 48 57 4e 44 2c 20 44 57 4f 52 44 29 3b 0d 0a HWND, DWORD);..
9790: 09 42 4f 4f 4c 20 49 6e 74 65 72 6e 65 74 41 75 .BOOL InternetAu
97a0: 74 6f 64 69 61 6c 28 44 57 4f 52 44 2c 20 44 57 todial(DWORD, DW
97b0: 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 49 6e 74 ORD);...BOOL Int
97c0: 65 72 6e 65 74 41 75 74 6f 64 69 61 6c 48 61 6e ernetAutodialHan
97d0: 67 75 70 28 44 57 4f 52 44 29 3b 0d 0a 09 42 4f gup(DWORD);...BO
97e0: 4f 4c 20 49 6e 74 65 72 6e 65 74 47 65 74 43 6f OL InternetGetCo
97f0: 6e 6e 65 63 74 65 64 53 74 61 74 65 28 4c 50 44 nnectedState(LPD
9800: 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 WORD, DWORD);...
9810: 42 4f 4f 4c 20 49 6e 74 65 72 6e 65 74 53 65 74 BOOL InternetSet
9820: 44 69 61 6c 53 74 61 74 65 28 4c 50 43 54 53 54 DialState(LPCTST
9830: 52 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 29 R, DWORD, DWORD)
9840: 3b 0d 0a 09 42 4f 4f 4c 20 49 6e 74 65 72 6e 65 ;...BOOL Interne
9850: 74 52 65 61 64 46 69 6c 65 45 78 41 28 48 49 4e tReadFileExA(HIN
9860: 54 45 52 4e 45 54 2c 20 4c 50 49 4e 54 45 52 4e TERNET, LPINTERN
9870: 45 54 5f 42 55 46 46 45 52 53 41 2c 20 44 57 4f ET_BUFFERSA, DWO
9880: 52 44 2c 20 44 57 4f 52 44 5f 50 54 52 29 3b 0d RD, DWORD_PTR);.
9890: 0a 09 42 4f 4f 4c 20 49 6e 74 65 72 6e 65 74 52 ..BOOL InternetR
98a0: 65 61 64 46 69 6c 65 45 78 57 28 48 49 4e 54 45 eadFileExW(HINTE
98b0: 52 4e 45 54 2c 20 4c 50 49 4e 54 45 52 4e 45 54 RNET, LPINTERNET
98c0: 5f 42 55 46 46 45 52 53 57 2c 20 44 57 4f 52 44 _BUFFERSW, DWORD
98d0: 2c 20 44 57 4f 52 44 5f 50 54 52 29 3b 0d 0a 09 , DWORD_PTR);...
98e0: 47 52 4f 55 50 49 44 20 43 72 65 61 74 65 55 72 GROUPID CreateUr
98f0: 6c 43 61 63 68 65 47 72 6f 75 70 28 44 57 4f 52 lCacheGroup(DWOR
9900: 44 2c 20 4c 50 56 4f 49 44 29 3b 0d 0a 09 42 4f D, LPVOID);...BO
9910: 4f 4c 20 44 65 6c 65 74 65 55 72 6c 43 61 63 68 OL DeleteUrlCach
9920: 65 47 72 6f 75 70 28 47 52 4f 55 50 49 44 2c 20 eGroup(GROUPID,
9930: 44 57 4f 52 44 2c 20 4c 50 56 4f 49 44 29 3b 0d DWORD, LPVOID);.
9940: 0a 09 48 41 4e 44 4c 45 20 46 69 6e 64 46 69 72 ..HANDLE FindFir
9950: 73 74 55 72 6c 43 61 63 68 65 47 72 6f 75 70 28 stUrlCacheGroup(
9960: 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 4c 50 DWORD, DWORD, LP
9970: 56 4f 49 44 2c 20 44 57 4f 52 44 2c 20 47 52 4f VOID, DWORD, GRO
9980: 55 50 49 44 2a 2c 0d 0a 09 20 20 4c 50 56 4f 49 UPID*,... LPVOI
9990: 44 29 3b 0d 0a 09 42 4f 4f 4c 20 46 69 6e 64 4e D);...BOOL FindN
99a0: 65 78 74 55 72 6c 43 61 63 68 65 47 72 6f 75 70 extUrlCacheGroup
99b0: 28 48 41 4e 44 4c 45 2c 20 47 52 4f 55 50 49 44 (HANDLE, GROUPID
99c0: 2a 2c 20 4c 50 56 4f 49 44 29 3b 0d 0a 09 42 4f *, LPVOID);...BO
99d0: 4f 4c 20 47 65 74 55 72 6c 43 61 63 68 65 47 72 OL GetUrlCacheGr
99e0: 6f 75 70 41 74 74 72 69 62 75 74 65 41 28 47 52 oupAttributeA(GR
99f0: 4f 55 50 49 44 2c 20 44 57 4f 52 44 2c 20 44 57 OUPID, DWORD, DW
9a00: 4f 52 44 2c 0d 0a 09 20 20 4c 50 49 4e 54 45 52 ORD,... LPINTER
9a10: 4e 45 54 5f 43 41 43 48 45 5f 47 52 4f 55 50 5f NET_CACHE_GROUP_
9a20: 49 4e 46 4f 41 2c 20 4c 50 44 57 4f 52 44 2c 20 INFOA, LPDWORD,
9a30: 4c 50 56 4f 49 44 29 3b 0d 0a 09 42 4f 4f 4c 20 LPVOID);...BOOL
9a40: 47 65 74 55 72 6c 43 61 63 68 65 47 72 6f 75 70 GetUrlCacheGroup
9a50: 41 74 74 72 69 62 75 74 65 57 28 47 52 4f 55 50 AttributeW(GROUP
9a60: 49 44 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 ID, DWORD, DWORD
9a70: 2c 0d 0a 09 20 20 4c 50 49 4e 54 45 52 4e 45 54 ,... LPINTERNET
9a80: 5f 43 41 43 48 45 5f 47 52 4f 55 50 5f 49 4e 46 _CACHE_GROUP_INF
9a90: 4f 57 2c 20 4c 50 44 57 4f 52 44 2c 20 4c 50 56 OW, LPDWORD, LPV
9aa0: 4f 49 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 OID);...BOOL Set
9ab0: 55 72 6c 43 61 63 68 65 47 72 6f 75 70 41 74 74 UrlCacheGroupAtt
9ac0: 72 69 62 75 74 65 41 28 47 52 4f 55 50 49 44 2c ributeA(GROUPID,
9ad0: 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 0d 0a DWORD, DWORD,..
9ae0: 09 20 20 4c 50 49 4e 54 45 52 4e 45 54 5f 43 41 . LPINTERNET_CA
9af0: 43 48 45 5f 47 52 4f 55 50 5f 49 4e 46 4f 41 2c CHE_GROUP_INFOA,
9b00: 20 4c 50 56 4f 49 44 29 3b 0d 0a 09 42 4f 4f 4c LPVOID);...BOOL
9b10: 20 53 65 74 55 72 6c 43 61 63 68 65 47 72 6f 75 SetUrlCacheGrou
9b20: 70 41 74 74 72 69 62 75 74 65 57 28 47 52 4f 55 pAttributeW(GROU
9b30: 50 49 44 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 PID, DWORD, DWOR
9b40: 44 2c 0d 0a 09 20 20 4c 50 49 4e 54 45 52 4e 45 D,... LPINTERNE
9b50: 54 5f 43 41 43 48 45 5f 47 52 4f 55 50 5f 49 4e T_CACHE_GROUP_IN
9b60: 46 4f 57 2c 20 4c 50 56 4f 49 44 29 3b 0d 0a 7d FOW, LPVOID);..}
9b70: 0d 0a 0d 0a 76 65 72 73 69 6f 6e 20 28 55 6e 69 ....version (Uni
9b80: 63 6f 64 65 29 20 7b 0d 0a 09 61 6c 69 61 73 20 code) {...alias
9b90: 55 52 4c 5f 43 4f 4d 50 4f 4e 45 4e 54 53 57 20 URL_COMPONENTSW
9ba0: 55 52 4c 5f 43 4f 4d 50 4f 4e 45 4e 54 53 3b 0d URL_COMPONENTS;.
9bb0: 0a 09 61 6c 69 61 73 20 4c 50 55 52 4c 5f 43 4f ..alias LPURL_CO
9bc0: 4d 50 4f 4e 45 4e 54 53 57 20 4c 50 55 52 4c 5f MPONENTSW LPURL_
9bd0: 43 4f 4d 50 4f 4e 45 4e 54 53 3b 0d 0a 09 61 6c COMPONENTS;...al
9be0: 69 61 73 20 47 4f 50 48 45 52 5f 46 49 4e 44 5f ias GOPHER_FIND_
9bf0: 44 41 54 41 57 20 47 4f 50 48 45 52 5f 46 49 4e DATAW GOPHER_FIN
9c00: 44 5f 44 41 54 41 3b 0d 0a 09 61 6c 69 61 73 20 D_DATA;...alias
9c10: 4c 50 47 4f 50 48 45 52 5f 46 49 4e 44 5f 44 41 LPGOPHER_FIND_DA
9c20: 54 41 57 20 4c 50 47 4f 50 48 45 52 5f 46 49 4e TAW LPGOPHER_FIN
9c30: 44 5f 44 41 54 41 3b 0d 0a 09 61 6c 69 61 73 20 D_DATA;...alias
9c40: 49 4e 54 45 52 4e 45 54 5f 43 41 43 48 45 5f 45 INTERNET_CACHE_E
9c50: 4e 54 52 59 5f 49 4e 46 4f 57 20 49 4e 54 45 52 NTRY_INFOW INTER
9c60: 4e 45 54 5f 43 41 43 48 45 5f 45 4e 54 52 59 5f NET_CACHE_ENTRY_
9c70: 49 4e 46 4f 3b 0d 0a 09 61 6c 69 61 73 20 4c 50 INFO;...alias LP
9c80: 49 4e 54 45 52 4e 45 54 5f 43 41 43 48 45 5f 45 INTERNET_CACHE_E
9c90: 4e 54 52 59 5f 49 4e 46 4f 57 20 4c 50 49 4e 54 NTRY_INFOW LPINT
9ca0: 45 52 4e 45 54 5f 43 41 43 48 45 5f 45 4e 54 52 ERNET_CACHE_ENTR
9cb0: 59 5f 49 4e 46 4f 3b 0d 0a 09 61 6c 69 61 73 20 Y_INFO;...alias
9cc0: 49 4e 54 45 52 4e 45 54 5f 42 55 46 46 45 52 53 INTERNET_BUFFERS
9cd0: 57 20 49 4e 54 45 52 4e 45 54 5f 42 55 46 46 45 W INTERNET_BUFFE
9ce0: 52 53 3b 0d 0a 09 61 6c 69 61 73 20 49 4e 54 45 RS;...alias INTE
9cf0: 52 4e 45 54 5f 43 41 43 48 45 5f 47 52 4f 55 50 RNET_CACHE_GROUP
9d00: 5f 49 4e 46 4f 57 20 49 4e 54 45 52 4e 45 54 5f _INFOW INTERNET_
9d10: 43 41 43 48 45 5f 47 52 4f 55 50 5f 49 4e 46 4f CACHE_GROUP_INFO
9d20: 3b 0d 0a 09 61 6c 69 61 73 20 4c 50 49 4e 54 45 ;...alias LPINTE
9d30: 52 4e 45 54 5f 43 41 43 48 45 5f 47 52 4f 55 50 RNET_CACHE_GROUP
9d40: 5f 49 4e 46 4f 57 20 4c 50 49 4e 54 45 52 4e 45 _INFOW LPINTERNE
9d50: 54 5f 43 41 43 48 45 5f 47 52 4f 55 50 5f 49 4e T_CACHE_GROUP_IN
9d60: 46 4f 3b 0d 0a 09 61 6c 69 61 73 20 49 6e 74 65 FO;...alias Inte
9d70: 72 6e 65 74 43 72 61 63 6b 55 72 6c 57 20 49 6e rnetCrackUrlW In
9d80: 74 65 72 6e 65 74 43 72 61 63 6b 55 72 6c 3b 0d ternetCrackUrl;.
9d90: 0a 09 61 6c 69 61 73 20 49 6e 74 65 72 6e 65 74 ..alias Internet
9da0: 43 72 65 61 74 65 55 72 6c 57 20 49 6e 74 65 72 CreateUrlW Inter
9db0: 6e 65 74 43 72 65 61 74 65 55 72 6c 3b 0d 0a 09 netCreateUrl;...
9dc0: 61 6c 69 61 73 20 49 6e 74 65 72 6e 65 74 43 61 alias InternetCa
9dd0: 6e 6f 6e 69 63 61 6c 69 7a 65 55 72 6c 57 20 49 nonicalizeUrlW I
9de0: 6e 74 65 72 6e 65 74 43 61 6e 6f 6e 69 63 61 6c nternetCanonical
9df0: 69 7a 65 55 72 6c 3b 0d 0a 09 61 6c 69 61 73 20 izeUrl;...alias
9e00: 49 6e 74 65 72 6e 65 74 43 68 65 63 6b 43 6f 6e InternetCheckCon
9e10: 6e 65 63 74 69 6f 6e 57 20 49 6e 74 65 72 6e 65 nectionW Interne
9e20: 74 43 68 65 63 6b 43 6f 6e 6e 65 63 74 69 6f 6e tCheckConnection
9e30: 3b 0d 0a 09 61 6c 69 61 73 20 49 6e 74 65 72 6e ;...alias Intern
9e40: 65 74 43 6f 6d 62 69 6e 65 55 72 6c 57 20 49 6e etCombineUrlW In
9e50: 74 65 72 6e 65 74 43 6f 6d 62 69 6e 65 55 72 6c ternetCombineUrl
9e60: 3b 0d 0a 09 61 6c 69 61 73 20 49 6e 74 65 72 6e ;...alias Intern
9e70: 65 74 4f 70 65 6e 57 20 49 6e 74 65 72 6e 65 74 etOpenW Internet
9e80: 4f 70 65 6e 3b 0d 0a 09 61 6c 69 61 73 20 49 6e Open;...alias In
9e90: 74 65 72 6e 65 74 43 6f 6e 6e 65 63 74 57 20 49 ternetConnectW I
9ea0: 6e 74 65 72 6e 65 74 43 6f 6e 6e 65 63 74 3b 0d nternetConnect;.
9eb0: 0a 09 61 6c 69 61 73 20 49 6e 74 65 72 6e 65 74 ..alias Internet
9ec0: 4f 70 65 6e 55 72 6c 57 20 49 6e 74 65 72 6e 65 OpenUrlW Interne
9ed0: 74 4f 70 65 6e 55 72 6c 3b 0d 0a 09 61 6c 69 61 tOpenUrl;...alia
9ee0: 73 20 49 6e 74 65 72 6e 65 74 46 69 6e 64 4e 65 s InternetFindNe
9ef0: 78 74 46 69 6c 65 57 20 49 6e 74 65 72 6e 65 74 xtFileW Internet
9f00: 46 69 6e 64 4e 65 78 74 46 69 6c 65 3b 0d 0a 09 FindNextFile;...
9f10: 61 6c 69 61 73 20 49 6e 74 65 72 6e 65 74 51 75 alias InternetQu
9f20: 65 72 79 4f 70 74 69 6f 6e 57 20 49 6e 74 65 72 eryOptionW Inter
9f30: 6e 65 74 51 75 65 72 79 4f 70 74 69 6f 6e 3b 0d netQueryOption;.
9f40: 0a 09 61 6c 69 61 73 20 49 6e 74 65 72 6e 65 74 ..alias Internet
9f50: 53 65 74 4f 70 74 69 6f 6e 57 20 49 6e 74 65 72 SetOptionW Inter
9f60: 6e 65 74 53 65 74 4f 70 74 69 6f 6e 3b 0d 0a 09 netSetOption;...
9f70: 61 6c 69 61 73 20 49 6e 74 65 72 6e 65 74 53 65 alias InternetSe
9f80: 74 4f 70 74 69 6f 6e 45 78 57 20 49 6e 74 65 72 tOptionExW Inter
9f90: 6e 65 74 53 65 74 4f 70 74 69 6f 6e 45 78 3b 0d netSetOptionEx;.
9fa0: 0a 09 61 6c 69 61 73 20 49 6e 74 65 72 6e 65 74 ..alias Internet
9fb0: 47 65 74 4c 61 73 74 52 65 73 70 6f 6e 73 65 49 GetLastResponseI
9fc0: 6e 66 6f 57 20 49 6e 74 65 72 6e 65 74 47 65 74 nfoW InternetGet
9fd0: 4c 61 73 74 52 65 73 70 6f 6e 73 65 49 6e 66 6f LastResponseInfo
9fe0: 3b 0d 0a 09 61 6c 69 61 73 20 49 6e 74 65 72 6e ;...alias Intern
9ff0: 65 74 52 65 61 64 46 69 6c 65 45 78 57 20 49 6e etReadFileExW In
a000: 74 65 72 6e 65 74 52 65 61 64 46 69 6c 65 45 78 ternetReadFileEx
a010: 3b 0d 0a 09 61 6c 69 61 73 20 46 74 70 46 69 6e ;...alias FtpFin
a020: 64 46 69 72 73 74 46 69 6c 65 57 20 46 74 70 46 dFirstFileW FtpF
a030: 69 6e 64 46 69 72 73 74 46 69 6c 65 3b 0d 0a 09 indFirstFile;...
a040: 61 6c 69 61 73 20 46 74 70 47 65 74 46 69 6c 65 alias FtpGetFile
a050: 57 20 46 74 70 47 65 74 46 69 6c 65 3b 0d 0a 09 W FtpGetFile;...
a060: 61 6c 69 61 73 20 46 74 70 50 75 74 46 69 6c 65 alias FtpPutFile
a070: 57 20 46 74 70 50 75 74 46 69 6c 65 3b 0d 0a 09 W FtpPutFile;...
a080: 61 6c 69 61 73 20 46 74 70 44 65 6c 65 74 65 46 alias FtpDeleteF
a090: 69 6c 65 57 20 46 74 70 44 65 6c 65 74 65 46 69 ileW FtpDeleteFi
a0a0: 6c 65 3b 0d 0a 09 61 6c 69 61 73 20 46 74 70 52 le;...alias FtpR
a0b0: 65 6e 61 6d 65 46 69 6c 65 57 20 46 74 70 52 65 enameFileW FtpRe
a0c0: 6e 61 6d 65 46 69 6c 65 3b 0d 0a 09 61 6c 69 61 nameFile;...alia
a0d0: 73 20 46 74 70 4f 70 65 6e 46 69 6c 65 57 20 46 s FtpOpenFileW F
a0e0: 74 70 4f 70 65 6e 46 69 6c 65 3b 0d 0a 09 61 6c tpOpenFile;...al
a0f0: 69 61 73 20 46 74 70 43 72 65 61 74 65 44 69 72 ias FtpCreateDir
a100: 65 63 74 6f 72 79 57 20 46 74 70 43 72 65 61 74 ectoryW FtpCreat
a110: 65 44 69 72 65 63 74 6f 72 79 3b 0d 0a 09 61 6c eDirectory;...al
a120: 69 61 73 20 46 74 70 52 65 6d 6f 76 65 44 69 72 ias FtpRemoveDir
a130: 65 63 74 6f 72 79 57 20 46 74 70 52 65 6d 6f 76 ectoryW FtpRemov
a140: 65 44 69 72 65 63 74 6f 72 79 3b 0d 0a 09 61 6c eDirectory;...al
a150: 69 61 73 20 46 74 70 53 65 74 43 75 72 72 65 6e ias FtpSetCurren
a160: 74 44 69 72 65 63 74 6f 72 79 57 20 46 74 70 53 tDirectoryW FtpS
a170: 65 74 43 75 72 72 65 6e 74 44 69 72 65 63 74 6f etCurrentDirecto
a180: 72 79 3b 0d 0a 09 61 6c 69 61 73 20 46 74 70 47 ry;...alias FtpG
a190: 65 74 43 75 72 72 65 6e 74 44 69 72 65 63 74 6f etCurrentDirecto
a1a0: 72 79 57 20 46 74 70 47 65 74 43 75 72 72 65 6e ryW FtpGetCurren
a1b0: 74 44 69 72 65 63 74 6f 72 79 3b 0d 0a 09 61 6c tDirectory;...al
a1c0: 69 61 73 20 46 74 70 43 6f 6d 6d 61 6e 64 57 20 ias FtpCommandW
a1d0: 46 74 70 43 6f 6d 6d 61 6e 64 3b 0d 0a 09 61 6c FtpCommand;...al
a1e0: 69 61 73 20 47 6f 70 68 65 72 47 65 74 4c 6f 63 ias GopherGetLoc
a1f0: 61 74 6f 72 54 79 70 65 57 20 47 6f 70 68 65 72 atorTypeW Gopher
a200: 47 65 74 4c 6f 63 61 74 6f 72 54 79 70 65 3b 0d GetLocatorType;.
a210: 0a 09 61 6c 69 61 73 20 47 6f 70 68 65 72 43 72 ..alias GopherCr
a220: 65 61 74 65 4c 6f 63 61 74 6f 72 57 20 47 6f 70 eateLocatorW Gop
a230: 68 65 72 43 72 65 61 74 65 4c 6f 63 61 74 6f 72 herCreateLocator
a240: 3b 0d 0a 09 61 6c 69 61 73 20 47 6f 70 68 65 72 ;...alias Gopher
a250: 46 69 6e 64 46 69 72 73 74 46 69 6c 65 57 20 47 FindFirstFileW G
a260: 6f 70 68 65 72 46 69 6e 64 46 69 72 73 74 46 69 opherFindFirstFi
a270: 6c 65 3b 0d 0a 09 61 6c 69 61 73 20 47 6f 70 68 le;...alias Goph
a280: 65 72 4f 70 65 6e 46 69 6c 65 57 20 47 6f 70 68 erOpenFileW Goph
a290: 65 72 4f 70 65 6e 46 69 6c 65 3b 0d 0a 09 61 6c erOpenFile;...al
a2a0: 69 61 73 20 47 6f 70 68 65 72 47 65 74 41 74 74 ias GopherGetAtt
a2b0: 72 69 62 75 74 65 57 20 47 6f 70 68 65 72 47 65 ributeW GopherGe
a2c0: 74 41 74 74 72 69 62 75 74 65 3b 0d 0a 09 61 6c tAttribute;...al
a2d0: 69 61 73 20 48 74 74 70 53 65 6e 64 52 65 71 75 ias HttpSendRequ
a2e0: 65 73 74 57 20 48 74 74 70 53 65 6e 64 52 65 71 estW HttpSendReq
a2f0: 75 65 73 74 3b 0d 0a 09 61 6c 69 61 73 20 48 74 uest;...alias Ht
a300: 74 70 4f 70 65 6e 52 65 71 75 65 73 74 57 20 48 tpOpenRequestW H
a310: 74 74 70 4f 70 65 6e 52 65 71 75 65 73 74 3b 0d ttpOpenRequest;.
a320: 0a 09 61 6c 69 61 73 20 48 74 74 70 41 64 64 52 ..alias HttpAddR
a330: 65 71 75 65 73 74 48 65 61 64 65 72 73 57 20 48 equestHeadersW H
a340: 74 74 70 41 64 64 52 65 71 75 65 73 74 48 65 61 ttpAddRequestHea
a350: 64 65 72 73 3b 0d 0a 09 61 6c 69 61 73 20 48 74 ders;...alias Ht
a360: 74 70 51 75 65 72 79 49 6e 66 6f 57 20 48 74 74 tpQueryInfoW Htt
a370: 70 51 75 65 72 79 49 6e 66 6f 3b 0d 0a 09 61 6c pQueryInfo;...al
a380: 69 61 73 20 49 6e 74 65 72 6e 65 74 53 65 74 43 ias InternetSetC
a390: 6f 6f 6b 69 65 57 20 49 6e 74 65 72 6e 65 74 53 ookieW InternetS
a3a0: 65 74 43 6f 6f 6b 69 65 3b 0d 0a 09 61 6c 69 61 etCookie;...alia
a3b0: 73 20 49 6e 74 65 72 6e 65 74 47 65 74 43 6f 6f s InternetGetCoo
a3c0: 6b 69 65 57 20 49 6e 74 65 72 6e 65 74 47 65 74 kieW InternetGet
a3d0: 43 6f 6f 6b 69 65 3b 0d 0a 09 61 6c 69 61 73 20 Cookie;...alias
a3e0: 43 72 65 61 74 65 55 72 6c 43 61 63 68 65 45 6e CreateUrlCacheEn
a3f0: 74 72 79 57 20 43 72 65 61 74 65 55 72 6c 43 61 tryW CreateUrlCa
a400: 63 68 65 45 6e 74 72 79 3b 0d 0a 09 61 6c 69 61 cheEntry;...alia
a410: 73 20 52 65 74 72 69 65 76 65 55 72 6c 43 61 63 s RetrieveUrlCac
a420: 68 65 45 6e 74 72 79 53 74 72 65 61 6d 57 20 52 heEntryStreamW R
a430: 65 74 72 69 65 76 65 55 72 6c 43 61 63 68 65 45 etrieveUrlCacheE
a440: 6e 74 72 79 53 74 72 65 61 6d 3b 0d 0a 09 61 6c ntryStream;...al
a450: 69 61 73 20 46 69 6e 64 4e 65 78 74 55 72 6c 43 ias FindNextUrlC
a460: 61 63 68 65 45 6e 74 72 79 57 20 46 69 6e 64 4e acheEntryW FindN
a470: 65 78 74 55 72 6c 43 61 63 68 65 45 6e 74 72 79 extUrlCacheEntry
a480: 3b 0d 0a 09 61 6c 69 61 73 20 43 6f 6d 6d 69 74 ;...alias Commit
a490: 55 72 6c 43 61 63 68 65 45 6e 74 72 79 57 20 43 UrlCacheEntryW C
a4a0: 6f 6d 6d 69 74 55 72 6c 43 61 63 68 65 45 6e 74 ommitUrlCacheEnt
a4b0: 72 79 3b 0d 0a 09 61 6c 69 61 73 20 47 65 74 55 ry;...alias GetU
a4c0: 72 6c 43 61 63 68 65 45 6e 74 72 79 49 6e 66 6f rlCacheEntryInfo
a4d0: 57 20 47 65 74 55 72 6c 43 61 63 68 65 45 6e 74 W GetUrlCacheEnt
a4e0: 72 79 49 6e 66 6f 3b 0d 0a 09 61 6c 69 61 73 20 ryInfo;...alias
a4f0: 53 65 74 55 72 6c 43 61 63 68 65 45 6e 74 72 79 SetUrlCacheEntry
a500: 49 6e 66 6f 57 20 53 65 74 55 72 6c 43 61 63 68 InfoW SetUrlCach
a510: 65 45 6e 74 72 79 49 6e 66 6f 3b 0d 0a 09 61 6c eEntryInfo;...al
a520: 69 61 73 20 46 69 6e 64 46 69 72 73 74 55 72 6c ias FindFirstUrl
a530: 43 61 63 68 65 45 6e 74 72 79 57 20 46 69 6e 64 CacheEntryW Find
a540: 46 69 72 73 74 55 72 6c 43 61 63 68 65 45 6e 74 FirstUrlCacheEnt
a550: 72 79 3b 0d 0a 09 61 6c 69 61 73 20 52 65 74 72 ry;...alias Retr
a560: 69 65 76 65 55 72 6c 43 61 63 68 65 45 6e 74 72 ieveUrlCacheEntr
a570: 79 46 69 6c 65 57 20 52 65 74 72 69 65 76 65 55 yFileW RetrieveU
a580: 72 6c 43 61 63 68 65 45 6e 74 72 79 46 69 6c 65 rlCacheEntryFile
a590: 3b 0d 0a 09 61 6c 69 61 73 20 48 74 74 70 53 65 ;...alias HttpSe
a5a0: 6e 64 52 65 71 75 65 73 74 45 78 57 20 48 74 74 ndRequestExW Htt
a5b0: 70 53 65 6e 64 52 65 71 75 65 73 74 45 78 3b 0d pSendRequestEx;.
a5c0: 0a 09 61 6c 69 61 73 20 48 74 74 70 45 6e 64 52 ..alias HttpEndR
a5d0: 65 71 75 65 73 74 57 20 48 74 74 70 45 6e 64 52 equestW HttpEndR
a5e0: 65 71 75 65 73 74 3b 0d 0a 09 61 6c 69 61 73 20 equest;...alias
a5f0: 47 65 74 55 72 6c 43 61 63 68 65 47 72 6f 75 70 GetUrlCacheGroup
a600: 41 74 74 72 69 62 75 74 65 57 20 47 65 74 55 72 AttributeW GetUr
a610: 6c 43 61 63 68 65 47 72 6f 75 70 41 74 74 72 69 lCacheGroupAttri
a620: 62 75 74 65 3b 0d 0a 09 61 6c 69 61 73 20 53 65 bute;...alias Se
a630: 74 55 72 6c 43 61 63 68 65 47 72 6f 75 70 41 74 tUrlCacheGroupAt
a640: 74 72 69 62 75 74 65 57 20 53 65 74 55 72 6c 43 tributeW SetUrlC
a650: 61 63 68 65 47 72 6f 75 70 41 74 74 72 69 62 75 acheGroupAttribu
a660: 74 65 3b 0d 0a 7d 20 65 6c 73 65 20 7b 0d 0a 09 te;..} else {...
a670: 61 6c 69 61 73 20 55 52 4c 5f 43 4f 4d 50 4f 4e alias URL_COMPON
a680: 45 4e 54 53 41 20 55 52 4c 5f 43 4f 4d 50 4f 4e ENTSA URL_COMPON
a690: 45 4e 54 53 3b 0d 0a 09 61 6c 69 61 73 20 4c 50 ENTS;...alias LP
a6a0: 55 52 4c 5f 43 4f 4d 50 4f 4e 45 4e 54 53 41 20 URL_COMPONENTSA
a6b0: 4c 50 55 52 4c 5f 43 4f 4d 50 4f 4e 45 4e 54 53 LPURL_COMPONENTS
a6c0: 3b 0d 0a 09 61 6c 69 61 73 20 47 4f 50 48 45 52 ;...alias GOPHER
a6d0: 5f 46 49 4e 44 5f 44 41 54 41 41 20 47 4f 50 48 _FIND_DATAA GOPH
a6e0: 45 52 5f 46 49 4e 44 5f 44 41 54 41 3b 0d 0a 09 ER_FIND_DATA;...
a6f0: 61 6c 69 61 73 20 4c 50 47 4f 50 48 45 52 5f 46 alias LPGOPHER_F
a700: 49 4e 44 5f 44 41 54 41 41 20 4c 50 47 4f 50 48 IND_DATAA LPGOPH
a710: 45 52 5f 46 49 4e 44 5f 44 41 54 41 3b 0d 0a 09 ER_FIND_DATA;...
a720: 61 6c 69 61 73 20 49 4e 54 45 52 4e 45 54 5f 43 alias INTERNET_C
a730: 41 43 48 45 5f 45 4e 54 52 59 5f 49 4e 46 4f 41 ACHE_ENTRY_INFOA
a740: 20 49 4e 54 45 52 4e 45 54 5f 43 41 43 48 45 5f INTERNET_CACHE_
a750: 45 4e 54 52 59 5f 49 4e 46 4f 3b 0d 0a 09 61 6c ENTRY_INFO;...al
a760: 69 61 73 20 4c 50 49 4e 54 45 52 4e 45 54 5f 43 ias LPINTERNET_C
a770: 41 43 48 45 5f 45 4e 54 52 59 5f 49 4e 46 4f 41 ACHE_ENTRY_INFOA
a780: 20 4c 50 49 4e 54 45 52 4e 45 54 5f 43 41 43 48 LPINTERNET_CACH
a790: 45 5f 45 4e 54 52 59 5f 49 4e 46 4f 3b 0d 0a 09 E_ENTRY_INFO;...
a7a0: 61 6c 69 61 73 20 49 4e 54 45 52 4e 45 54 5f 42 alias INTERNET_B
a7b0: 55 46 46 45 52 53 41 20 49 4e 54 45 52 4e 45 54 UFFERSA INTERNET
a7c0: 5f 42 55 46 46 45 52 53 3b 0d 0a 09 61 6c 69 61 _BUFFERS;...alia
a7d0: 73 20 49 4e 54 45 52 4e 45 54 5f 43 41 43 48 45 s INTERNET_CACHE
a7e0: 5f 47 52 4f 55 50 5f 49 4e 46 4f 41 20 49 4e 54 _GROUP_INFOA INT
a7f0: 45 52 4e 45 54 5f 43 41 43 48 45 5f 47 52 4f 55 ERNET_CACHE_GROU
a800: 50 5f 49 4e 46 4f 3b 0d 0a 09 61 6c 69 61 73 20 P_INFO;...alias
a810: 4c 50 49 4e 54 45 52 4e 45 54 5f 43 41 43 48 45 LPINTERNET_CACHE
a820: 5f 47 52 4f 55 50 5f 49 4e 46 4f 41 20 4c 50 49 _GROUP_INFOA LPI
a830: 4e 54 45 52 4e 45 54 5f 43 41 43 48 45 5f 47 52 NTERNET_CACHE_GR
a840: 4f 55 50 5f 49 4e 46 4f 3b 0d 0a 09 61 6c 69 61 OUP_INFO;...alia
a850: 73 20 47 6f 70 68 65 72 47 65 74 41 74 74 72 69 s GopherGetAttri
a860: 62 75 74 65 41 20 47 6f 70 68 65 72 47 65 74 41 buteA GopherGetA
a870: 74 74 72 69 62 75 74 65 3b 0d 0a 09 61 6c 69 61 ttribute;...alia
a880: 73 20 49 6e 74 65 72 6e 65 74 43 72 61 63 6b 55 s InternetCrackU
a890: 72 6c 41 20 49 6e 74 65 72 6e 65 74 43 72 61 63 rlA InternetCrac
a8a0: 6b 55 72 6c 3b 0d 0a 09 61 6c 69 61 73 20 49 6e kUrl;...alias In
a8b0: 74 65 72 6e 65 74 43 72 65 61 74 65 55 72 6c 41 ternetCreateUrlA
a8c0: 20 49 6e 74 65 72 6e 65 74 43 72 65 61 74 65 55 InternetCreateU
a8d0: 72 6c 3b 0d 0a 09 61 6c 69 61 73 20 49 6e 74 65 rl;...alias Inte
a8e0: 72 6e 65 74 43 61 6e 6f 6e 69 63 61 6c 69 7a 65 rnetCanonicalize
a8f0: 55 72 6c 41 20 49 6e 74 65 72 6e 65 74 43 61 6e UrlA InternetCan
a900: 6f 6e 69 63 61 6c 69 7a 65 55 72 6c 3b 0d 0a 09 onicalizeUrl;...
a910: 61 6c 69 61 73 20 49 6e 74 65 72 6e 65 74 43 68 alias InternetCh
a920: 65 63 6b 43 6f 6e 6e 65 63 74 69 6f 6e 41 20 49 eckConnectionA I
a930: 6e 74 65 72 6e 65 74 43 68 65 63 6b 43 6f 6e 6e nternetCheckConn
a940: 65 63 74 69 6f 6e 3b 0d 0a 09 61 6c 69 61 73 20 ection;...alias
a950: 49 6e 74 65 72 6e 65 74 43 6f 6d 62 69 6e 65 55 InternetCombineU
a960: 72 6c 41 20 49 6e 74 65 72 6e 65 74 43 6f 6d 62 rlA InternetComb
a970: 69 6e 65 55 72 6c 3b 0d 0a 09 61 6c 69 61 73 20 ineUrl;...alias
a980: 49 6e 74 65 72 6e 65 74 4f 70 65 6e 41 20 49 6e InternetOpenA In
a990: 74 65 72 6e 65 74 4f 70 65 6e 3b 0d 0a 09 61 6c ternetOpen;...al
a9a0: 69 61 73 20 49 6e 74 65 72 6e 65 74 43 6f 6e 6e ias InternetConn
a9b0: 65 63 74 41 20 49 6e 74 65 72 6e 65 74 43 6f 6e ectA InternetCon
a9c0: 6e 65 63 74 3b 0d 0a 09 61 6c 69 61 73 20 49 6e nect;...alias In
a9d0: 74 65 72 6e 65 74 4f 70 65 6e 55 72 6c 41 20 49 ternetOpenUrlA I
a9e0: 6e 74 65 72 6e 65 74 4f 70 65 6e 55 72 6c 3b 0d nternetOpenUrl;.
a9f0: 0a 09 61 6c 69 61 73 20 49 6e 74 65 72 6e 65 74 ..alias Internet
aa00: 46 69 6e 64 4e 65 78 74 46 69 6c 65 41 20 49 6e FindNextFileA In
aa10: 74 65 72 6e 65 74 46 69 6e 64 4e 65 78 74 46 69 ternetFindNextFi
aa20: 6c 65 3b 0d 0a 09 61 6c 69 61 73 20 49 6e 74 65 le;...alias Inte
aa30: 72 6e 65 74 51 75 65 72 79 4f 70 74 69 6f 6e 41 rnetQueryOptionA
aa40: 20 49 6e 74 65 72 6e 65 74 51 75 65 72 79 4f 70 InternetQueryOp
aa50: 74 69 6f 6e 3b 0d 0a 09 61 6c 69 61 73 20 49 6e tion;...alias In
aa60: 74 65 72 6e 65 74 53 65 74 4f 70 74 69 6f 6e 41 ternetSetOptionA
aa70: 20 49 6e 74 65 72 6e 65 74 53 65 74 4f 70 74 69 InternetSetOpti
aa80: 6f 6e 3b 0d 0a 09 61 6c 69 61 73 20 49 6e 74 65 on;...alias Inte
aa90: 72 6e 65 74 53 65 74 4f 70 74 69 6f 6e 45 78 41 rnetSetOptionExA
aaa0: 20 49 6e 74 65 72 6e 65 74 53 65 74 4f 70 74 69 InternetSetOpti
aab0: 6f 6e 45 78 3b 0d 0a 09 61 6c 69 61 73 20 49 6e onEx;...alias In
aac0: 74 65 72 6e 65 74 47 65 74 4c 61 73 74 52 65 73 ternetGetLastRes
aad0: 70 6f 6e 73 65 49 6e 66 6f 41 20 49 6e 74 65 72 ponseInfoA Inter
aae0: 6e 65 74 47 65 74 4c 61 73 74 52 65 73 70 6f 6e netGetLastRespon
aaf0: 73 65 49 6e 66 6f 3b 0d 0a 09 61 6c 69 61 73 20 seInfo;...alias
ab00: 49 6e 74 65 72 6e 65 74 52 65 61 64 46 69 6c 65 InternetReadFile
ab10: 45 78 41 20 49 6e 74 65 72 6e 65 74 52 65 61 64 ExA InternetRead
ab20: 46 69 6c 65 45 78 3b 0d 0a 09 61 6c 69 61 73 20 FileEx;...alias
ab30: 46 74 70 46 69 6e 64 46 69 72 73 74 46 69 6c 65 FtpFindFirstFile
ab40: 41 20 46 74 70 46 69 6e 64 46 69 72 73 74 46 69 A FtpFindFirstFi
ab50: 6c 65 3b 0d 0a 09 61 6c 69 61 73 20 46 74 70 47 le;...alias FtpG
ab60: 65 74 46 69 6c 65 41 20 46 74 70 47 65 74 46 69 etFileA FtpGetFi
ab70: 6c 65 3b 0d 0a 09 61 6c 69 61 73 20 46 74 70 50 le;...alias FtpP
ab80: 75 74 46 69 6c 65 41 20 46 74 70 50 75 74 46 69 utFileA FtpPutFi
ab90: 6c 65 3b 0d 0a 09 61 6c 69 61 73 20 46 74 70 44 le;...alias FtpD
aba0: 65 6c 65 74 65 46 69 6c 65 41 20 46 74 70 44 65 eleteFileA FtpDe
abb0: 6c 65 74 65 46 69 6c 65 3b 0d 0a 09 61 6c 69 61 leteFile;...alia
abc0: 73 20 46 74 70 52 65 6e 61 6d 65 46 69 6c 65 41 s FtpRenameFileA
abd0: 20 46 74 70 52 65 6e 61 6d 65 46 69 6c 65 3b 0d FtpRenameFile;.
abe0: 0a 09 61 6c 69 61 73 20 46 74 70 4f 70 65 6e 46 ..alias FtpOpenF
abf0: 69 6c 65 41 20 46 74 70 4f 70 65 6e 46 69 6c 65 ileA FtpOpenFile
ac00: 3b 0d 0a 09 61 6c 69 61 73 20 46 74 70 43 72 65 ;...alias FtpCre
ac10: 61 74 65 44 69 72 65 63 74 6f 72 79 41 20 46 74 ateDirectoryA Ft
ac20: 70 43 72 65 61 74 65 44 69 72 65 63 74 6f 72 79 pCreateDirectory
ac30: 3b 0d 0a 09 61 6c 69 61 73 20 46 74 70 52 65 6d ;...alias FtpRem
ac40: 6f 76 65 44 69 72 65 63 74 6f 72 79 41 20 46 74 oveDirectoryA Ft
ac50: 70 52 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 pRemoveDirectory
ac60: 3b 0d 0a 09 61 6c 69 61 73 20 46 74 70 53 65 74 ;...alias FtpSet
ac70: 43 75 72 72 65 6e 74 44 69 72 65 63 74 6f 72 79 CurrentDirectory
ac80: 41 20 46 74 70 53 65 74 43 75 72 72 65 6e 74 44 A FtpSetCurrentD
ac90: 69 72 65 63 74 6f 72 79 3b 0d 0a 09 61 6c 69 61 irectory;...alia
aca0: 73 20 46 74 70 47 65 74 43 75 72 72 65 6e 74 44 s FtpGetCurrentD
acb0: 69 72 65 63 74 6f 72 79 41 20 46 74 70 47 65 74 irectoryA FtpGet
acc0: 43 75 72 72 65 6e 74 44 69 72 65 63 74 6f 72 79 CurrentDirectory
acd0: 3b 0d 0a 09 61 6c 69 61 73 20 46 74 70 43 6f 6d ;...alias FtpCom
ace0: 6d 61 6e 64 41 20 46 74 70 43 6f 6d 6d 61 6e 64 mandA FtpCommand
acf0: 3b 0d 0a 09 61 6c 69 61 73 20 47 6f 70 68 65 72 ;...alias Gopher
ad00: 47 65 74 4c 6f 63 61 74 6f 72 54 79 70 65 41 20 GetLocatorTypeA
ad10: 47 6f 70 68 65 72 47 65 74 4c 6f 63 61 74 6f 72 GopherGetLocator
ad20: 54 79 70 65 3b 0d 0a 09 61 6c 69 61 73 20 47 6f Type;...alias Go
ad30: 70 68 65 72 43 72 65 61 74 65 4c 6f 63 61 74 6f pherCreateLocato
ad40: 72 41 20 47 6f 70 68 65 72 43 72 65 61 74 65 4c rA GopherCreateL
ad50: 6f 63 61 74 6f 72 3b 0d 0a 09 61 6c 69 61 73 20 ocator;...alias
ad60: 47 6f 70 68 65 72 46 69 6e 64 46 69 72 73 74 46 GopherFindFirstF
ad70: 69 6c 65 41 20 47 6f 70 68 65 72 46 69 6e 64 46 ileA GopherFindF
ad80: 69 72 73 74 46 69 6c 65 3b 0d 0a 09 61 6c 69 61 irstFile;...alia
ad90: 73 20 47 6f 70 68 65 72 4f 70 65 6e 46 69 6c 65 s GopherOpenFile
ada0: 41 20 47 6f 70 68 65 72 4f 70 65 6e 46 69 6c 65 A GopherOpenFile
adb0: 3b 0d 0a 09 61 6c 69 61 73 20 48 74 74 70 53 65 ;...alias HttpSe
adc0: 6e 64 52 65 71 75 65 73 74 41 20 48 74 74 70 53 ndRequestA HttpS
add0: 65 6e 64 52 65 71 75 65 73 74 3b 0d 0a 09 61 6c endRequest;...al
ade0: 69 61 73 20 48 74 74 70 4f 70 65 6e 52 65 71 75 ias HttpOpenRequ
adf0: 65 73 74 41 20 48 74 74 70 4f 70 65 6e 52 65 71 estA HttpOpenReq
ae00: 75 65 73 74 3b 0d 0a 09 61 6c 69 61 73 20 48 74 uest;...alias Ht
ae10: 74 70 41 64 64 52 65 71 75 65 73 74 48 65 61 64 tpAddRequestHead
ae20: 65 72 73 41 20 48 74 74 70 41 64 64 52 65 71 75 ersA HttpAddRequ
ae30: 65 73 74 48 65 61 64 65 72 73 3b 0d 0a 09 61 6c estHeaders;...al
ae40: 69 61 73 20 48 74 74 70 51 75 65 72 79 49 6e 66 ias HttpQueryInf
ae50: 6f 41 20 48 74 74 70 51 75 65 72 79 49 6e 66 6f oA HttpQueryInfo
ae60: 3b 0d 0a 09 61 6c 69 61 73 20 49 6e 74 65 72 6e ;...alias Intern
ae70: 65 74 53 65 74 43 6f 6f 6b 69 65 41 20 49 6e 74 etSetCookieA Int
ae80: 65 72 6e 65 74 53 65 74 43 6f 6f 6b 69 65 3b 0d ernetSetCookie;.
ae90: 0a 09 61 6c 69 61 73 20 49 6e 74 65 72 6e 65 74 ..alias Internet
aea0: 47 65 74 43 6f 6f 6b 69 65 41 20 49 6e 74 65 72 GetCookieA Inter
aeb0: 6e 65 74 47 65 74 43 6f 6f 6b 69 65 3b 0d 0a 09 netGetCookie;...
aec0: 61 6c 69 61 73 20 43 72 65 61 74 65 55 72 6c 43 alias CreateUrlC
aed0: 61 63 68 65 45 6e 74 72 79 41 20 43 72 65 61 74 acheEntryA Creat
aee0: 65 55 72 6c 43 61 63 68 65 45 6e 74 72 79 3b 0d eUrlCacheEntry;.
aef0: 0a 09 61 6c 69 61 73 20 52 65 74 72 69 65 76 65 ..alias Retrieve
af00: 55 72 6c 43 61 63 68 65 45 6e 74 72 79 53 74 72 UrlCacheEntryStr
af10: 65 61 6d 41 20 52 65 74 72 69 65 76 65 55 72 6c eamA RetrieveUrl
af20: 43 61 63 68 65 45 6e 74 72 79 53 74 72 65 61 6d CacheEntryStream
af30: 3b 0d 0a 09 61 6c 69 61 73 20 46 69 6e 64 4e 65 ;...alias FindNe
af40: 78 74 55 72 6c 43 61 63 68 65 45 6e 74 72 79 41 xtUrlCacheEntryA
af50: 20 46 69 6e 64 4e 65 78 74 55 72 6c 43 61 63 68 FindNextUrlCach
af60: 65 45 6e 74 72 79 3b 0d 0a 09 61 6c 69 61 73 20 eEntry;...alias
af70: 43 6f 6d 6d 69 74 55 72 6c 43 61 63 68 65 45 6e CommitUrlCacheEn
af80: 74 72 79 41 20 43 6f 6d 6d 69 74 55 72 6c 43 61 tryA CommitUrlCa
af90: 63 68 65 45 6e 74 72 79 3b 0d 0a 09 61 6c 69 61 cheEntry;...alia
afa0: 73 20 47 65 74 55 72 6c 43 61 63 68 65 45 6e 74 s GetUrlCacheEnt
afb0: 72 79 49 6e 66 6f 41 20 47 65 74 55 72 6c 43 61 ryInfoA GetUrlCa
afc0: 63 68 65 45 6e 74 72 79 49 6e 66 6f 3b 0d 0a 09 cheEntryInfo;...
afd0: 61 6c 69 61 73 20 53 65 74 55 72 6c 43 61 63 68 alias SetUrlCach
afe0: 65 45 6e 74 72 79 49 6e 66 6f 41 20 53 65 74 55 eEntryInfoA SetU
aff0: 72 6c 43 61 63 68 65 45 6e 74 72 79 49 6e 66 6f rlCacheEntryInfo
b000: 3b 0d 0a 09 61 6c 69 61 73 20 46 69 6e 64 46 69 ;...alias FindFi
b010: 72 73 74 55 72 6c 43 61 63 68 65 45 6e 74 72 79 rstUrlCacheEntry
b020: 41 20 46 69 6e 64 46 69 72 73 74 55 72 6c 43 61 A FindFirstUrlCa
b030: 63 68 65 45 6e 74 72 79 3b 0d 0a 09 61 6c 69 61 cheEntry;...alia
b040: 73 20 52 65 74 72 69 65 76 65 55 72 6c 43 61 63 s RetrieveUrlCac
b050: 68 65 45 6e 74 72 79 46 69 6c 65 41 20 52 65 74 heEntryFileA Ret
b060: 72 69 65 76 65 55 72 6c 43 61 63 68 65 45 6e 74 rieveUrlCacheEnt
b070: 72 79 46 69 6c 65 3b 0d 0a 09 61 6c 69 61 73 20 ryFile;...alias
b080: 48 74 74 70 53 65 6e 64 52 65 71 75 65 73 74 45 HttpSendRequestE
b090: 78 41 20 48 74 74 70 53 65 6e 64 52 65 71 75 65 xA HttpSendReque
b0a0: 73 74 45 78 3b 0d 0a 09 61 6c 69 61 73 20 48 74 stEx;...alias Ht
b0b0: 74 70 45 6e 64 52 65 71 75 65 73 74 41 20 48 74 tpEndRequestA Ht
b0c0: 74 70 45 6e 64 52 65 71 75 65 73 74 3b 0d 0a 09 tpEndRequest;...
b0d0: 61 6c 69 61 73 20 47 65 74 55 72 6c 43 61 63 68 alias GetUrlCach
b0e0: 65 47 72 6f 75 70 41 74 74 72 69 62 75 74 65 41 eGroupAttributeA
b0f0: 20 47 65 74 55 72 6c 43 61 63 68 65 47 72 6f 75 GetUrlCacheGrou
b100: 70 41 74 74 72 69 62 75 74 65 3b 0d 0a 09 61 6c pAttribute;...al
b110: 69 61 73 20 53 65 74 55 72 6c 43 61 63 68 65 47 ias SetUrlCacheG
b120: 72 6f 75 70 41 74 74 72 69 62 75 74 65 41 20 53 roupAttributeA S
b130: 65 74 55 72 6c 43 61 63 68 65 47 72 6f 75 70 41 etUrlCacheGroupA
b140: 74 74 72 69 62 75 74 65 3b 0d 0a 7d 0d 0a 0d 0a ttribute;..}....
b150: 61 6c 69 61 73 20 49 4e 54 45 52 4e 45 54 5f 42 alias INTERNET_B
b160: 55 46 46 45 52 53 2a 20 4c 50 49 4e 54 45 52 4e UFFERS* LPINTERN
b170: 45 54 5f 42 55 46 46 45 52 53 3b 0d 0a ET_BUFFERS;..