summaryrefslogtreecommitdiff
path: root/include/arch/win32
diff options
context:
space:
mode:
authorWilliam A. Rowe Jr <wrowe@apache.org>2007-11-08 00:23:38 +0000
committerWilliam A. Rowe Jr <wrowe@apache.org>2007-11-08 00:23:38 +0000
commita7c54025bfa77867dd2807c1dfb9d06c154809f1 (patch)
tree86192a21d359b2654b3130a9fac27faf11a5bf40 /include/arch/win32
parent0fbeafb0cba0e4ca5a6d2ec6d66486c5b53c343b (diff)
downloadapr-a7c54025bfa77867dd2807c1dfb9d06c154809f1.tar.gz
Learn the appropriate csize Allocation magic applicable
to Windows 2000 (when sparse was introduced) and later. This reverts a bogus test case. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@592970 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'include/arch/win32')
-rw-r--r--include/arch/win32/apr_arch_misc.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/include/arch/win32/apr_arch_misc.h b/include/arch/win32/apr_arch_misc.h
index 3987d85cb..75cb17a9d 100644
--- a/include/arch/win32/apr_arch_misc.h
+++ b/include/arch/win32/apr_arch_misc.h
@@ -375,6 +375,31 @@ APR_DECLARE_LATE_DLL_FUNC(DLL_NTDLL, DWORD, WINAPI, NtQueryObject, 0, (
(hObject, info, pOI, LenOI, pSizeOI));
#define QueryObject apr_winapi_NtQueryObject
+typedef struct IOSB {
+ union {
+ UINT Status;
+ PVOID reserved;
+ };
+ ULONG_PTR Information; /* Varies by op, consumed buffer size for FSI below */
+} IOSB, *PIOSB;
+
+typedef struct FSI {
+ LONGLONG AllocationSize;
+ LONGLONG EndOfFile;
+ ULONG NumberOfLinks;
+ BOOL DeletePending;
+ BOOL Directory;
+} FSI, *PFSI;
+
+APR_DECLARE_LATE_DLL_FUNC(DLL_NTDLL, LONG, WINAPI, ZwQueryInformationFile, 0, (
+ HANDLE hObject, /* Obvious */
+ PVOID pIOSB, /* Point to the IOSB buffer for detailed return results */
+ PVOID pFI, /* The buffer, using FIB above */
+ ULONG LenFI, /* Use sizeof(FI) */
+ ULONG info), /* Use 5 for FSI documented above*/
+ (hObject, pIOSB, pFI, LenFI, info));
+#define ZwQueryInformationFile apr_winapi_ZwQueryInformationFile
+
#endif /* !defined(_WIN32_WCE) */
#endif /* ! MISC_H */