server: Return the total length of the target in query_symlink.
[wine] / include / winineti.h
1 /*
2  * Copyright (C) 2007 Francois Gouget
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17  */
18
19 #ifndef _WINE_WININETI_H_
20 #define _WINE_WININETI_H_
21
22 /* FIXME: #include <iedial.h> */
23 #include <schannel.h>
24
25 typedef struct _INTERNET_CACHE_CONFIG_PATH_ENTRYA
26 {
27     CHAR CachePath[MAX_PATH];
28     DWORD dwCacheSize;
29 } INTERNET_CACHE_CONFIG_PATH_ENTRYA, *LPINTERNET_CACHE_CONFIG_PATH_ENTRYA;
30
31 typedef struct _INTERNET_CACHE_CONFIG_PATH_ENTRYW
32 {
33     WCHAR CachePath[MAX_PATH];
34     DWORD dwCacheSize;
35 } INTERNET_CACHE_CONFIG_PATH_ENTRYW, *LPINTERNET_CACHE_CONFIG_PATH_ENTRYW;
36
37 DECL_WINELIB_TYPE_AW(INTERNET_CACHE_CONFIG_PATH_ENTRY)
38 DECL_WINELIB_TYPE_AW(LPINTERNET_CACHE_CONFIG_PATH_ENTRY)
39
40 typedef struct _INTERNET_CACHE_CONFIG_INFOA
41 {
42     DWORD dwStructSize;
43     DWORD dwContainer;
44     DWORD dwQuota;
45     DWORD dwReserved4;
46     BOOL fPerUser;
47     DWORD dwSyncMode;
48     DWORD dwNumCachePaths;
49     union
50     {
51         struct
52         {
53             CHAR CachePath[MAX_PATH];
54             DWORD dwCacheSize;
55         } DUMMYSTRUCTNAME;
56         INTERNET_CACHE_CONFIG_PATH_ENTRYA CachePaths[ANYSIZE_ARRAY];
57     } DUMYUNIONNAME;
58     DWORD dwNormalUsage;
59     DWORD dwExemptUsage;
60 } INTERNET_CACHE_CONFIG_INFOA, *LPINTERNET_CACHE_CONFIG_INFOA;
61
62 typedef struct _INTERNET_CACHE_CONFIG_INFOW
63 {
64     DWORD dwStructSize;
65     DWORD dwContainer;
66     DWORD dwQuota;
67     DWORD dwReserved4;
68     BOOL  fPerUser;
69     DWORD dwSyncMode;
70     DWORD dwNumCachePaths;
71     union
72     {
73         struct
74         {
75             WCHAR CachePath[MAX_PATH];
76             DWORD dwCacheSize;
77         } DUMMYSTRUCTNAME;
78         INTERNET_CACHE_CONFIG_PATH_ENTRYW CachePaths[ANYSIZE_ARRAY];
79     } ;
80     DWORD dwNormalUsage;
81     DWORD dwExemptUsage;
82 } INTERNET_CACHE_CONFIG_INFOW, *LPINTERNET_CACHE_CONFIG_INFOW;
83
84 DECL_WINELIB_TYPE_AW(INTERNET_CACHE_CONFIG_INFO)
85 DECL_WINELIB_TYPE_AW(LPINTERNET_CACHE_CONFIG_INFO)
86
87
88 #ifdef __cplusplus
89 extern "C" {
90 #endif
91
92 DWORD       WINAPI DeleteIE3Cache(HWND,HINSTANCE,LPSTR,int);
93 BOOL        WINAPI GetDiskInfoA(PCSTR,PDWORD,PDWORDLONG,PDWORDLONG);
94 BOOL        WINAPI GetUrlCacheConfigInfoA(LPINTERNET_CACHE_CONFIG_INFOA,LPDWORD,DWORD);
95 BOOL        WINAPI GetUrlCacheConfigInfoW(LPINTERNET_CACHE_CONFIG_INFOW,LPDWORD,DWORD);
96 #define     GetUrlCacheConfigInfo WINELIB_NAME_AW(GetUrlCacheConfigInfo)
97 BOOL        WINAPI IncrementUrlCacheHeaderData(DWORD,LPDWORD);
98 BOOL        WINAPI InternetQueryFortezzaStatus(DWORD*,DWORD_PTR);
99 BOOL        WINAPI IsUrlCacheEntryExpiredA(LPCSTR,DWORD,FILETIME*);
100 BOOL        WINAPI IsUrlCacheEntryExpiredW(LPCWSTR,DWORD,FILETIME*);
101 #define     IsUrlCacheEntryExpired WINELIB_NAME_AW(IsUrlCacheEntryExpired)
102 BOOL        WINAPI SetUrlCacheConfigInfoA(LPINTERNET_CACHE_CONFIG_INFOA,DWORD);
103 BOOL        WINAPI SetUrlCacheConfigInfoW(LPINTERNET_CACHE_CONFIG_INFOW,DWORD);
104 #define     SetUrlCacheConfigInfo WINELIB_NAME_AW(SetUrlCacheConfigInfo)
105
106 #ifdef __cplusplus
107 }
108 #endif
109
110 #endif /* _WINE_WININETI_H_ */