Mercurial > projects > ddbg_continued
comparison win32/httpext.d @ 1:4a9dcbd9e54f
-files of 0.13 beta
-fixes so that it now compiles with the current dmd version
author | marton@basel.hu |
---|---|
date | Tue, 05 Apr 2011 20:44:01 +0200 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
0:586e4a649642 | 1:4a9dcbd9e54f |
---|---|
1 /***********************************************************************\ | |
2 * httpext.d * | |
3 * * | |
4 * Windows API header module * | |
5 * * | |
6 * Translated from MinGW Windows headers * | |
7 * * | |
8 * Placed into public domain * | |
9 \***********************************************************************/ | |
10 module win32.httpext; | |
11 | |
12 /* Comment from MinGW | |
13 httpext.h - Header for ISAPI extensions. | |
14 | |
15 This file is part of a free library for the Win32 API. | |
16 | |
17 This library is distributed in the hope that it will be useful, | |
18 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
19 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
20 */ | |
21 | |
22 private import win32.windows; | |
23 | |
24 enum { | |
25 HSE_VERSION_MAJOR = 2, | |
26 HSE_VERSION_MINOR = 0, | |
27 HSE_LOG_BUFFER_LEN = 80, | |
28 HSE_MAX_EXT_DLL_NAME_LEN = 256, | |
29 HSE_STATUS_SUCCESS = 1, | |
30 HSE_STATUS_SUCCESS_AND_KEEP_CONN, | |
31 HSE_STATUS_PENDING, | |
32 HSE_STATUS_ERROR, | |
33 HSE_REQ_BASE = 0, | |
34 HSE_REQ_SEND_URL_REDIRECT_RESP, | |
35 HSE_REQ_SEND_URL, | |
36 HSE_REQ_SEND_RESPONSE_HEADER, | |
37 HSE_REQ_DONE_WITH_SESSION, | |
38 HSE_REQ_SEND_RESPONSE_HEADER_EX = 1016, | |
39 HSE_REQ_END_RESERVED = 1000, | |
40 HSE_TERM_ADVISORY_UNLOAD = 0x00000001, | |
41 HSE_TERM_MUST_UNLOAD, | |
42 HSE_IO_SYNC = 0x00000001, | |
43 HSE_IO_ASYNC, | |
44 HSE_IO_DISCONNECT_AFTER_SEND = 0x00000004, | |
45 HSE_IO_SEND_HEADERS = 0x00000008 | |
46 } | |
47 | |
48 alias HANDLE HCONN; | |
49 | |
50 struct HSE_VERSION_INFO { | |
51 DWORD dwExtensionVersion; | |
52 CHAR[HSE_MAX_EXT_DLL_NAME_LEN] lpszExtensionDesc; | |
53 } | |
54 alias HSE_VERSION_INFO* LPHSE_VERSION_INFO; | |
55 | |
56 struct EXTENSION_CONTROL_BLOCK { | |
57 DWORD cbSize = EXTENSION_CONTROL_BLOCK.sizeof; | |
58 DWORD dwVersion; | |
59 HCONN ConnID; | |
60 DWORD dwHttpStatusCode; | |
61 CHAR[HSE_LOG_BUFFER_LEN] lpszLogData; | |
62 LPSTR lpszMethod; | |
63 LPSTR lpszQueryString; | |
64 LPSTR lpszPathInfo; | |
65 LPSTR lpszPathTranslated; | |
66 DWORD cbTotalBytes; | |
67 DWORD cbAvailable; | |
68 LPBYTE lpbData; | |
69 LPSTR lpszContentType; | |
70 extern(Pascal) BOOL function(HCONN, LPSTR, LPVOID, LPDWORD) | |
71 GetServerVariable; | |
72 extern(Pascal) BOOL function(HCONN, LPVOID, LPDWORD, DWORD) WriteClient; | |
73 extern(Pascal) BOOL function(HCONN, LPVOID, LPDWORD) ReadClient; | |
74 extern(Pascal) BOOL function(HCONN, DWORD, LPVOID, LPDWORD, LPDWORD) | |
75 ServerSupportFunction; | |
76 } | |
77 alias EXTENSION_CONTROL_BLOCK* LPEXTENSION_CONTROL_BLOCK; | |
78 | |
79 extern (Pascal) { | |
80 alias BOOL function(HSE_VERSION_INFO*) PFN_GETEXTENSIONVERSION; | |
81 alias DWORD function(EXTENSION_CONTROL_BLOCK*) PFN_HTTPEXTENSIONPROC; | |
82 alias BOOL function(DWORD) PFN_TERMINATEEXTENSION; | |
83 alias VOID function(EXTENSION_CONTROL_BLOCK*, PVOID, DWORD, DWORD) PFN_HSE_IO_COMPLETION; | |
84 } | |
85 | |
86 struct HSE_TF_INFO { | |
87 PFN_HSE_IO_COMPLETION pfnHseIO; | |
88 PVOID pContext; | |
89 HANDLE hFile; | |
90 LPCSTR pszStatusCode; | |
91 DWORD BytesToWrite; | |
92 DWORD Offset; | |
93 PVOID pHead; | |
94 DWORD HeadLength; | |
95 PVOID pTail; | |
96 DWORD TailLength; | |
97 DWORD dwFlags; | |
98 } | |
99 alias HSE_TF_INFO* LPHSE_TF_INFO; | |
100 | |
101 struct HSE_SEND_HEADER_EX_INFO { | |
102 LPCSTR pszStatus; | |
103 LPCSTR pszHeader; | |
104 DWORD cchStatus; | |
105 DWORD cchHeader; | |
106 BOOL fKeepConn; | |
107 } | |
108 alias HSE_SEND_HEADER_EX_INFO* LPHSE_SEND_HEADER_EX_INF; | |
109 | |
110 extern (Pascal) { | |
111 BOOL GetExtensionVersion(HSE_VERSION_INFO*); | |
112 DWORD HttpExtensionProc(EXTENSION_CONTROL_BLOCK*); | |
113 BOOL TerminateExtension(DWORD); | |
114 } |