1 #include <_mingw_unicode.h> 2 /* 3 * Copyright (C) 2007 Francois Gouget 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Lesser General Public 7 * License as published by the Free Software Foundation; either 8 * version 2.1 of the License, or (at your option) any later version. 9 * 10 * This library is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public 16 * License along with this library; if not, write to the Free Software 17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 18 */ 19 20 #ifndef _WINE_WININETI_H_ 21 #define _WINE_WININETI_H_ 22 23 /* FIXME: #include <iedial.h> */ 24 #include <schannel.h> 25 #include <sspi.h> 26 27 typedef struct _INTERNET_CACHE_CONFIG_PATH_ENTRYA 28 { 29 CHAR CachePath[MAX_PATH]; 30 DWORD dwCacheSize; 31 } INTERNET_CACHE_CONFIG_PATH_ENTRYA, *LPINTERNET_CACHE_CONFIG_PATH_ENTRYA; 32 33 typedef struct _INTERNET_CACHE_CONFIG_PATH_ENTRYW 34 { 35 WCHAR CachePath[MAX_PATH]; 36 DWORD dwCacheSize; 37 } INTERNET_CACHE_CONFIG_PATH_ENTRYW, *LPINTERNET_CACHE_CONFIG_PATH_ENTRYW; 38 39 __MINGW_TYPEDEF_AW(INTERNET_CACHE_CONFIG_PATH_ENTRY) 40 __MINGW_TYPEDEF_AW(LPINTERNET_CACHE_CONFIG_PATH_ENTRY) 41 42 typedef struct _INTERNET_CACHE_CONFIG_INFOA 43 { 44 DWORD dwStructSize; 45 DWORD dwContainer; 46 DWORD dwQuota; 47 DWORD dwReserved4; 48 WINBOOL fPerUser; 49 DWORD dwSyncMode; 50 DWORD dwNumCachePaths; 51 __C89_NAMELESS union 52 { 53 __C89_NAMELESS struct 54 { 55 CHAR CachePath[MAX_PATH]; 56 DWORD dwCacheSize; 57 } __C89_NAMELESSSTRUCTNAME; 58 INTERNET_CACHE_CONFIG_PATH_ENTRYA CachePaths[ANYSIZE_ARRAY]; 59 } __C89_NAMELESSUNIONNAME; 60 DWORD dwNormalUsage; 61 DWORD dwExemptUsage; 62 } INTERNET_CACHE_CONFIG_INFOA, *LPINTERNET_CACHE_CONFIG_INFOA; 63 64 typedef struct _INTERNET_CACHE_CONFIG_INFOW 65 { 66 DWORD dwStructSize; 67 DWORD dwContainer; 68 DWORD dwQuota; 69 DWORD dwReserved4; 70 WINBOOL fPerUser; 71 DWORD dwSyncMode; 72 DWORD dwNumCachePaths; 73 __C89_NAMELESS union 74 { 75 __C89_NAMELESS struct 76 { 77 WCHAR CachePath[MAX_PATH]; 78 DWORD dwCacheSize; 79 } __C89_NAMELESSSTRUCTNAME; 80 INTERNET_CACHE_CONFIG_PATH_ENTRYW CachePaths[ANYSIZE_ARRAY]; 81 } __C89_NAMELESSUNIONNAME; 82 DWORD dwNormalUsage; 83 DWORD dwExemptUsage; 84 } INTERNET_CACHE_CONFIG_INFOW, *LPINTERNET_CACHE_CONFIG_INFOW; 85 86 __MINGW_TYPEDEF_AW(INTERNET_CACHE_CONFIG_INFO) 87 __MINGW_TYPEDEF_AW(LPINTERNET_CACHE_CONFIG_INFO) 88 89 typedef enum { 90 WININET_SYNC_MODE_NEVER = 0, 91 WININET_SYNC_MODE_ON_EXPIRY, 92 WININET_SYNC_MODE_ONCE_PER_SESSION, 93 WININET_SYNC_MODE_ALWAYS, 94 WININET_SYNC_MODE_AUTOMATIC, 95 WININET_SYNC_MODE_DEFAULT = WININET_SYNC_MODE_AUTOMATIC 96 } WININET_SYNC_MODE; 97 98 /* Flags for GetUrlCacheConfigInfoA/W and SetUrlCacheConfigInfoA/W */ 99 #define CACHE_CONFIG_FORCE_CLEANUP_FC 0x00000020 100 #define CACHE_CONFIG_DISK_CACHE_PATHS_FC 0x00000040 101 #define CACHE_CONFIG_SYNC_MODE_FC 0x00000080 102 #define CACHE_CONFIG_CONTENT_PATHS_FC 0x00000100 103 #define CACHE_CONFIG_COOKIES_PATHS_FC 0x00000200 104 #define CACHE_CONFIG_HISTORY_PATHS_FC 0x00000400 105 #define CACHE_CONFIG_QUOTA_FC 0x00000800 106 #define CACHE_CONFIG_USER_MODE_FC 0x00001000 107 #define CACHE_CONFIG_CONTENT_USAGE_FC 0x00002000 108 #define CACHE_CONFIG_STICKY_CONTENT_USAGE_FC 0x00004000 109 110 #ifdef __cplusplus 111 extern "C" { 112 #endif 113 114 DWORD WINAPI DeleteIE3Cache(HWND,HINSTANCE,LPSTR,int); 115 WINBOOL WINAPI GetDiskInfoA(PCSTR,PDWORD,PDWORDLONG,PDWORDLONG); 116 WINBOOL WINAPI GetUrlCacheConfigInfoA(LPINTERNET_CACHE_CONFIG_INFOA,LPDWORD,DWORD); 117 WINBOOL WINAPI GetUrlCacheConfigInfoW(LPINTERNET_CACHE_CONFIG_INFOW,LPDWORD,DWORD); 118 #define GetUrlCacheConfigInfo __MINGW_NAME_AW(GetUrlCacheConfigInfo) 119 WINBOOL WINAPI IncrementUrlCacheHeaderData(DWORD,LPDWORD); 120 WINBOOL WINAPI InternetQueryFortezzaStatus(DWORD*,DWORD_PTR); 121 WINBOOL WINAPI IsUrlCacheEntryExpiredA(LPCSTR,DWORD,FILETIME*); 122 WINBOOL WINAPI IsUrlCacheEntryExpiredW(LPCWSTR,DWORD,FILETIME*); 123 #define IsUrlCacheEntryExpired __MINGW_NAME_AW(IsUrlCacheEntryExpired) 124 WINBOOL WINAPI SetUrlCacheConfigInfoA(LPINTERNET_CACHE_CONFIG_INFOA,DWORD); 125 WINBOOL WINAPI SetUrlCacheConfigInfoW(LPINTERNET_CACHE_CONFIG_INFOW,DWORD); 126 #define SetUrlCacheConfigInfo __MINGW_NAME_AW(SetUrlCacheConfigInfo) 127 WINBOOL WINAPI InternetGetSecurityInfoByURLA(LPSTR,PCCERT_CHAIN_CONTEXT*,DWORD*); 128 WINBOOL WINAPI InternetGetSecurityInfoByURLW(LPCWSTR,PCCERT_CHAIN_CONTEXT*,DWORD*); 129 #define InternetGetSecurityInfoByURL __MINGW_NAME_AW(InternetGetSecurityInfoByURL) 130 131 #ifdef __cplusplus 132 } 133 #endif 134 135 #endif /* _WINE_WININETI_H_ */ 136