ws2_32: Return a valid value for WSAIoctl SIO_IDEAL_SEND_BACKLOG_QUERY.
[wine.git] / dlls / win32u / syscall.c
blobf9e608ed0b77de33d1ece5c8e31deb300175e86a
1 /*
2 * Unix interface for Win32 syscalls
4 * Copyright (C) 2021 Alexandre Julliard
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
21 #if 0
22 #pragma makedep unix
23 #endif
25 #include <stdarg.h>
27 #include "ntstatus.h"
28 #define WIN32_NO_STATUS
29 #include "windef.h"
30 #include "winnt.h"
31 #include "ntgdi_private.h"
32 #include "ntuser_private.h"
33 #include "ntuser.h"
34 #include "wine/unixlib.h"
37 static void * const syscalls[] =
39 NtGdiAddFontMemResourceEx,
40 NtGdiAddFontResourceW,
41 NtGdiCombineRgn,
42 NtGdiCreateBitmap,
43 NtGdiCreateClientObj,
44 NtGdiCreateDIBBrush,
45 NtGdiCreateDIBSection,
46 NtGdiCreateEllipticRgn,
47 NtGdiCreateHalftonePalette,
48 NtGdiCreateHatchBrushInternal,
49 NtGdiCreatePaletteInternal,
50 NtGdiCreatePatternBrushInternal,
51 NtGdiCreatePen,
52 NtGdiCreateRectRgn,
53 NtGdiCreateRoundRectRgn,
54 NtGdiCreateSolidBrush,
55 NtGdiDdDDICreateDevice,
56 NtGdiDdDDIOpenAdapterFromHdc,
57 NtGdiDdDDIQueryStatistics,
58 NtGdiDdDDISetQueuedLimit,
59 NtGdiDeleteClientObj,
60 NtGdiDescribePixelFormat,
61 NtGdiDrawStream,
62 NtGdiEqualRgn,
63 NtGdiExtCreatePen,
64 NtGdiExtCreateRegion,
65 NtGdiExtGetObjectW,
66 NtGdiFlattenPath,
67 NtGdiFlush,
68 NtGdiGetBitmapBits,
69 NtGdiGetBitmapDimension,
70 NtGdiGetColorAdjustment,
71 NtGdiGetDCDword,
72 NtGdiGetDCObject,
73 NtGdiGetDCPoint,
74 NtGdiGetFontFileData,
75 NtGdiGetFontFileInfo,
76 NtGdiGetNearestPaletteIndex,
77 NtGdiGetPath,
78 NtGdiGetRegionData,
79 NtGdiGetRgnBox,
80 NtGdiGetSpoolMessage,
81 NtGdiGetSystemPaletteUse,
82 NtGdiGetTransform,
83 NtGdiHfontCreate,
84 NtGdiInitSpool,
85 NtGdiOffsetRgn,
86 NtGdiPathToRegion,
87 NtGdiPtInRegion,
88 NtGdiRectInRegion,
89 NtGdiRemoveFontMemResourceEx,
90 NtGdiRemoveFontResourceW,
91 NtGdiSaveDC,
92 NtGdiSetBitmapBits,
93 NtGdiSetBitmapDimension,
94 NtGdiSetBrushOrg,
95 NtGdiSetColorAdjustment,
96 NtGdiSetMagicColors,
97 NtGdiSetMetaRgn,
98 NtGdiSetPixelFormat,
99 NtGdiSetRectRgn,
100 NtGdiSetTextJustification,
101 NtGdiSetVirtualResolution,
102 NtGdiSwapBuffers,
103 NtGdiTransformPoints,
104 NtUserActivateKeyboardLayout,
105 NtUserAddClipboardFormatListener,
106 NtUserAssociateInputContext,
107 NtUserAttachThreadInput,
108 NtUserBeginPaint,
109 NtUserBuildHwndList,
110 NtUserCallHwnd,
111 NtUserCallHwndParam,
112 NtUserCallMsgFilter,
113 NtUserCallNextHookEx,
114 NtUserCallNoParam,
115 NtUserCallOneParam,
116 NtUserCallTwoParam,
117 NtUserChangeClipboardChain,
118 NtUserChangeDisplaySettings,
119 NtUserCheckMenuItem,
120 NtUserChildWindowFromPointEx,
121 NtUserClipCursor,
122 NtUserCloseClipboard,
123 NtUserCloseDesktop,
124 NtUserCloseWindowStation,
125 NtUserCopyAcceleratorTable,
126 NtUserCountClipboardFormats,
127 NtUserCreateAcceleratorTable,
128 NtUserCreateCaret,
129 NtUserCreateDesktopEx,
130 NtUserCreateInputContext,
131 NtUserCreateWindowEx,
132 NtUserCreateWindowStation,
133 NtUserDeferWindowPosAndBand,
134 NtUserDeleteMenu,
135 NtUserDestroyAcceleratorTable,
136 NtUserDestroyCursor,
137 NtUserDestroyInputContext,
138 NtUserDestroyMenu,
139 NtUserDestroyWindow,
140 NtUserDisableThreadIme,
141 NtUserDispatchMessage,
142 NtUserDragDetect,
143 NtUserDrawIconEx,
144 NtUserEmptyClipboard,
145 NtUserEnableMenuItem,
146 NtUserEnableScrollBar,
147 NtUserEndDeferWindowPosEx,
148 NtUserEndMenu,
149 NtUserEnumDisplayDevices,
150 NtUserEnumDisplayMonitors,
151 NtUserEnumDisplaySettings,
152 NtUserFindExistingCursorIcon,
153 NtUserFindWindowEx,
154 NtUserFlashWindowEx,
155 NtUserGetAncestor,
156 NtUserGetAsyncKeyState,
157 NtUserGetAtomName,
158 NtUserGetCaretBlinkTime,
159 NtUserGetCaretPos,
160 NtUserGetClassInfoEx,
161 NtUserGetClassName,
162 NtUserGetClipboardData,
163 NtUserGetClipboardFormatName,
164 NtUserGetClipboardOwner,
165 NtUserGetClipboardSequenceNumber,
166 NtUserGetClipboardViewer,
167 NtUserGetCursor,
168 NtUserGetCursorFrameInfo,
169 NtUserGetCursorInfo,
170 NtUserGetDCEx,
171 NtUserGetDisplayConfigBufferSizes,
172 NtUserGetDoubleClickTime,
173 NtUserGetDpiForMonitor,
174 NtUserGetForegroundWindow,
175 NtUserGetGUIThreadInfo,
176 NtUserGetIconInfo,
177 NtUserGetIconSize,
178 NtUserGetKeyNameText,
179 NtUserGetKeyState,
180 NtUserGetKeyboardLayout,
181 NtUserGetKeyboardLayoutList,
182 NtUserGetKeyboardLayoutName,
183 NtUserGetKeyboardState,
184 NtUserGetLayeredWindowAttributes,
185 NtUserGetMenuBarInfo,
186 NtUserGetMenuItemRect,
187 NtUserGetMessage,
188 NtUserGetMouseMovePointsEx,
189 NtUserGetObjectInformation,
190 NtUserGetOpenClipboardWindow,
191 NtUserGetPriorityClipboardFormat,
192 NtUserGetProcessDpiAwarenessContext,
193 NtUserGetProcessWindowStation,
194 NtUserGetProp,
195 NtUserGetQueueStatus,
196 NtUserGetRawInputBuffer,
197 NtUserGetRawInputData,
198 NtUserGetRawInputDeviceInfo,
199 NtUserGetRawInputDeviceList,
200 NtUserGetRegisteredRawInputDevices,
201 NtUserGetScrollBarInfo,
202 NtUserGetSystemDpiForProcess,
203 NtUserGetSystemMenu,
204 NtUserGetThreadDesktop,
205 NtUserGetTitleBarInfo,
206 NtUserGetUpdateRect,
207 NtUserGetUpdateRgn,
208 NtUserGetUpdatedClipboardFormats,
209 NtUserGetWindowPlacement,
210 NtUserGetWindowRgnEx,
211 NtUserHideCaret,
212 NtUserHiliteMenuItem,
213 NtUserInitializeClientPfnArrays,
214 NtUserInternalGetWindowIcon,
215 NtUserInternalGetWindowText,
216 NtUserInvalidateRect,
217 NtUserInvalidateRgn,
218 NtUserIsClipboardFormatAvailable,
219 NtUserKillTimer,
220 NtUserLockWindowUpdate,
221 NtUserLogicalToPerMonitorDPIPhysicalPoint,
222 NtUserMapVirtualKeyEx,
223 NtUserMenuItemFromPoint,
224 NtUserMessageCall,
225 NtUserMoveWindow,
226 NtUserMsgWaitForMultipleObjectsEx,
227 NtUserNotifyWinEvent,
228 NtUserOpenClipboard,
229 NtUserOpenDesktop,
230 NtUserOpenInputDesktop,
231 NtUserOpenWindowStation,
232 NtUserPeekMessage,
233 NtUserPerMonitorDPIPhysicalToLogicalPoint,
234 NtUserPostMessage,
235 NtUserPostThreadMessage,
236 NtUserQueryInputContext,
237 NtUserRedrawWindow,
238 NtUserRegisterClassExWOW,
239 NtUserRegisterHotKey,
240 NtUserRegisterRawInputDevices,
241 NtUserRemoveClipboardFormatListener,
242 NtUserRemoveMenu,
243 NtUserRemoveProp,
244 NtUserScrollWindowEx,
245 NtUserSendInput,
246 NtUserSetActiveWindow,
247 NtUserSetCapture,
248 NtUserSetClassLong,
249 NtUserSetClassLongPtr,
250 NtUserSetClassWord,
251 NtUserSetClipboardData,
252 NtUserSetClipboardViewer,
253 NtUserSetCursor,
254 NtUserSetCursorIconData,
255 NtUserSetCursorPos,
256 NtUserSetFocus,
257 NtUserSetInternalWindowPos,
258 NtUserSetKeyboardState,
259 NtUserSetLayeredWindowAttributes,
260 NtUserSetMenu,
261 NtUserSetMenuContextHelpId,
262 NtUserSetMenuDefaultItem,
263 NtUserSetObjectInformation,
264 NtUserSetParent,
265 NtUserSetProcessDpiAwarenessContext,
266 NtUserSetProcessWindowStation,
267 NtUserSetProp,
268 NtUserSetScrollInfo,
269 NtUserSetSysColors,
270 NtUserSetSystemMenu,
271 NtUserSetSystemTimer,
272 NtUserSetThreadDesktop,
273 NtUserSetTimer,
274 NtUserSetWinEventHook,
275 NtUserSetWindowLong,
276 NtUserSetWindowLongPtr,
277 NtUserSetWindowPlacement,
278 NtUserSetWindowPos,
279 NtUserSetWindowRgn,
280 NtUserSetWindowWord,
281 NtUserSetWindowsHookEx,
282 NtUserShowCaret,
283 NtUserShowCursor,
284 NtUserShowScrollBar,
285 NtUserShowWindow,
286 NtUserShowWindowAsync,
287 NtUserSystemParametersInfo,
288 NtUserSystemParametersInfoForDpi,
289 NtUserThunkedMenuInfo,
290 NtUserThunkedMenuItemInfo,
291 NtUserToUnicodeEx,
292 NtUserTrackMouseEvent,
293 NtUserTrackPopupMenuEx,
294 NtUserTranslateAccelerator,
295 NtUserTranslateMessage,
296 NtUserUnhookWinEvent,
297 NtUserUnhookWindowsHookEx,
298 NtUserUnregisterClass,
299 NtUserUnregisterHotKey,
300 NtUserUpdateInputContext,
301 NtUserVkKeyScanEx,
302 NtUserWaitForInputIdle,
303 NtUserWindowFromDC,
304 NtUserWindowFromPoint,
307 static BYTE arguments[ARRAY_SIZE(syscalls)];
309 static SYSTEM_SERVICE_TABLE syscall_table =
311 (ULONG_PTR *)syscalls,
313 ARRAY_SIZE(syscalls),
314 arguments
317 static NTSTATUS init( void *dispatcher )
319 return ntdll_init_syscalls( 1, &syscall_table, dispatcher );
322 unixlib_entry_t __wine_unix_call_funcs[] =
324 init,
325 callbacks_init,
328 #ifdef _WIN64
330 WINE_DEFAULT_DEBUG_CHANNEL(win32u);
332 static NTSTATUS wow64_init( void *args )
334 FIXME( "\n" );
335 return STATUS_NOT_SUPPORTED;
338 const unixlib_entry_t __wine_unix_call_wow64_funcs[] =
340 init,
341 wow64_init,
344 #endif /* _WIN64 */