server: Store the type of CPU that the client is running on.
[wine/multimedia.git] / include / wine / server_protocol.h
blob74366269cee992e18d3a58d556cfe579346a2213
1 /*
2 * Wine server protocol definitions
4 * This file is automatically generated; DO NO EDIT!
5 * Edit server/protocol.def instead and re-run tools/make_requests
6 */
8 #ifndef __WINE_WINE_SERVER_PROTOCOL_H
9 #define __WINE_WINE_SERVER_PROTOCOL_H
11 #include <stdarg.h>
12 #include <stdlib.h>
13 #include <time.h>
15 #include <windef.h>
16 #include <winbase.h>
18 typedef unsigned int obj_handle_t;
19 typedef unsigned int user_handle_t;
20 typedef unsigned int atom_t;
21 typedef unsigned int process_id_t;
22 typedef unsigned int thread_id_t;
23 typedef unsigned int data_size_t;
24 typedef unsigned int ioctl_code_t;
25 typedef unsigned __int64 lparam_t;
26 typedef unsigned __int64 apc_param_t;
27 typedef unsigned __int64 mem_size_t;
28 typedef unsigned __int64 file_pos_t;
29 typedef unsigned __int64 client_ptr_t;
30 typedef unsigned __int64 affinity_t;
31 typedef client_ptr_t mod_handle_t;
33 struct request_header
35 int req;
36 data_size_t request_size;
37 data_size_t reply_size;
40 struct reply_header
42 unsigned int error;
43 data_size_t reply_size;
48 struct request_max_size
50 int pad[16];
53 #define FIRST_USER_HANDLE 0x0020
54 #define LAST_USER_HANDLE 0xffef
58 typedef union
60 int code;
61 struct
63 int code;
64 int first;
65 unsigned int exc_code;
66 unsigned int flags;
67 client_ptr_t record;
68 client_ptr_t address;
69 int nb_params;
70 int __pad;
71 client_ptr_t params[15];
72 } exception;
73 struct
75 int code;
76 obj_handle_t handle;
77 client_ptr_t teb;
78 client_ptr_t start;
79 } create_thread;
80 struct
82 int code;
83 obj_handle_t file;
84 obj_handle_t process;
85 obj_handle_t thread;
86 mod_handle_t base;
87 int dbg_offset;
88 int dbg_size;
89 client_ptr_t teb;
90 client_ptr_t start;
91 client_ptr_t name;
92 int unicode;
93 } create_process;
94 struct
96 int code;
97 int exit_code;
98 } exit;
99 struct
101 int code;
102 obj_handle_t handle;
103 mod_handle_t base;
104 int dbg_offset;
105 int dbg_size;
106 client_ptr_t name;
107 int unicode;
108 } load_dll;
109 struct
111 int code;
112 int __pad;
113 mod_handle_t base;
114 } unload_dll;
115 struct
117 int code;
118 int unicode;
119 client_ptr_t string;
120 data_size_t length;
121 } output_string;
122 struct
124 int code;
125 int error;
126 int type;
127 } rip_info;
128 } debug_event_t;
131 enum cpu_type
133 CPU_x86, CPU_x86_64, CPU_ALPHA, CPU_POWERPC, CPU_SPARC
135 typedef int cpu_type_t;
138 struct send_fd
140 thread_id_t tid;
141 int fd;
145 struct wake_up_reply
147 client_ptr_t cookie;
148 int signaled;
149 int __pad;
153 typedef __int64 timeout_t;
154 #define TIMEOUT_INFINITE (((timeout_t)0x7fffffff) << 32 | 0xffffffff)
157 typedef struct
159 atom_t atom;
160 int string;
161 lparam_t data;
162 } property_data_t;
165 typedef struct
167 int left;
168 int top;
169 int right;
170 int bottom;
171 } rectangle_t;
174 typedef struct
176 obj_handle_t handle;
177 obj_handle_t event;
178 client_ptr_t callback;
179 client_ptr_t iosb;
180 client_ptr_t arg;
181 apc_param_t cvalue;
182 } async_data_t;
186 struct hardware_msg_data
188 lparam_t info;
189 int x;
190 int y;
191 unsigned int hw_id;
192 int __pad;
195 struct callback_msg_data
197 client_ptr_t callback;
198 lparam_t data;
199 lparam_t result;
202 struct winevent_msg_data
204 user_handle_t hook;
205 thread_id_t tid;
206 client_ptr_t hook_proc;
210 typedef union
212 unsigned char bytes[1];
213 struct hardware_msg_data hardware;
214 struct callback_msg_data callback;
215 struct winevent_msg_data winevent;
216 } message_data_t;
219 typedef struct
221 WCHAR ch;
222 unsigned short attr;
223 } char_info_t;
225 typedef struct
227 unsigned int low_part;
228 int high_part;
229 } luid_t;
231 #define MAX_ACL_LEN 65535
233 struct security_descriptor
235 unsigned int control;
236 data_size_t owner_len;
237 data_size_t group_len;
238 data_size_t sacl_len;
239 data_size_t dacl_len;
246 struct object_attributes
248 obj_handle_t rootdir;
249 data_size_t sd_len;
250 data_size_t name_len;
255 struct token_groups
257 unsigned int count;
262 enum apc_type
264 APC_NONE,
265 APC_USER,
266 APC_TIMER,
267 APC_ASYNC_IO,
268 APC_VIRTUAL_ALLOC,
269 APC_VIRTUAL_FREE,
270 APC_VIRTUAL_QUERY,
271 APC_VIRTUAL_PROTECT,
272 APC_VIRTUAL_FLUSH,
273 APC_VIRTUAL_LOCK,
274 APC_VIRTUAL_UNLOCK,
275 APC_MAP_VIEW,
276 APC_UNMAP_VIEW,
277 APC_CREATE_THREAD
280 typedef union
282 enum apc_type type;
283 struct
285 enum apc_type type;
286 int __pad;
287 client_ptr_t func;
288 apc_param_t args[3];
289 } user;
290 struct
292 enum apc_type type;
293 int __pad;
294 client_ptr_t func;
295 timeout_t time;
296 client_ptr_t arg;
297 } timer;
298 struct
300 enum apc_type type;
301 unsigned int status;
302 client_ptr_t func;
303 client_ptr_t user;
304 client_ptr_t sb;
305 } async_io;
306 struct
308 enum apc_type type;
309 unsigned int op_type;
310 client_ptr_t addr;
311 mem_size_t size;
312 unsigned int zero_bits;
313 unsigned int prot;
314 } virtual_alloc;
315 struct
317 enum apc_type type;
318 unsigned int op_type;
319 client_ptr_t addr;
320 mem_size_t size;
321 } virtual_free;
322 struct
324 enum apc_type type;
325 int __pad;
326 client_ptr_t addr;
327 } virtual_query;
328 struct
330 enum apc_type type;
331 unsigned int prot;
332 client_ptr_t addr;
333 mem_size_t size;
334 } virtual_protect;
335 struct
337 enum apc_type type;
338 int __pad;
339 client_ptr_t addr;
340 mem_size_t size;
341 } virtual_flush;
342 struct
344 enum apc_type type;
345 int __pad;
346 client_ptr_t addr;
347 mem_size_t size;
348 } virtual_lock;
349 struct
351 enum apc_type type;
352 int __pad;
353 client_ptr_t addr;
354 mem_size_t size;
355 } virtual_unlock;
356 struct
358 enum apc_type type;
359 obj_handle_t handle;
360 client_ptr_t addr;
361 mem_size_t size;
362 file_pos_t offset;
363 unsigned int alloc_type;
364 unsigned short zero_bits;
365 unsigned short prot;
366 } map_view;
367 struct
369 enum apc_type type;
370 int __pad;
371 client_ptr_t addr;
372 } unmap_view;
373 struct
375 enum apc_type type;
376 int suspend;
377 client_ptr_t func;
378 client_ptr_t arg;
379 mem_size_t reserve;
380 mem_size_t commit;
381 } create_thread;
382 } apc_call_t;
384 typedef union
386 enum apc_type type;
387 struct
389 enum apc_type type;
390 unsigned int status;
391 client_ptr_t apc;
392 unsigned int total;
393 } async_io;
394 struct
396 enum apc_type type;
397 unsigned int status;
398 client_ptr_t addr;
399 mem_size_t size;
400 } virtual_alloc;
401 struct
403 enum apc_type type;
404 unsigned int status;
405 client_ptr_t addr;
406 mem_size_t size;
407 } virtual_free;
408 struct
410 enum apc_type type;
411 unsigned int status;
412 client_ptr_t base;
413 client_ptr_t alloc_base;
414 mem_size_t size;
415 unsigned short state;
416 unsigned short prot;
417 unsigned short alloc_prot;
418 unsigned short alloc_type;
419 } virtual_query;
420 struct
422 enum apc_type type;
423 unsigned int status;
424 client_ptr_t addr;
425 mem_size_t size;
426 unsigned int prot;
427 } virtual_protect;
428 struct
430 enum apc_type type;
431 unsigned int status;
432 client_ptr_t addr;
433 mem_size_t size;
434 } virtual_flush;
435 struct
437 enum apc_type type;
438 unsigned int status;
439 client_ptr_t addr;
440 mem_size_t size;
441 } virtual_lock;
442 struct
444 enum apc_type type;
445 unsigned int status;
446 client_ptr_t addr;
447 mem_size_t size;
448 } virtual_unlock;
449 struct
451 enum apc_type type;
452 unsigned int status;
453 client_ptr_t addr;
454 mem_size_t size;
455 } map_view;
456 struct
458 enum apc_type type;
459 unsigned int status;
460 } unmap_view;
461 struct
463 enum apc_type type;
464 unsigned int status;
465 thread_id_t tid;
466 obj_handle_t handle;
467 } create_thread;
468 } apc_result_t;
474 struct new_process_request
476 struct request_header __header;
477 int inherit_all;
478 unsigned int create_flags;
479 int socket_fd;
480 obj_handle_t exe_file;
481 obj_handle_t hstdin;
482 obj_handle_t hstdout;
483 obj_handle_t hstderr;
484 unsigned int process_access;
485 unsigned int process_attr;
486 unsigned int thread_access;
487 unsigned int thread_attr;
488 /* VARARG(info,startup_info); */
489 /* VARARG(env,unicode_str); */
491 struct new_process_reply
493 struct reply_header __header;
494 obj_handle_t info;
495 process_id_t pid;
496 obj_handle_t phandle;
497 thread_id_t tid;
498 obj_handle_t thandle;
499 char __pad_28[4];
504 struct get_new_process_info_request
506 struct request_header __header;
507 obj_handle_t info;
509 struct get_new_process_info_reply
511 struct reply_header __header;
512 int success;
513 int exit_code;
518 struct new_thread_request
520 struct request_header __header;
521 unsigned int access;
522 unsigned int attributes;
523 int suspend;
524 int request_fd;
526 struct new_thread_reply
528 struct reply_header __header;
529 thread_id_t tid;
530 obj_handle_t handle;
535 struct get_startup_info_request
537 struct request_header __header;
539 struct get_startup_info_reply
541 struct reply_header __header;
542 obj_handle_t exe_file;
543 obj_handle_t hstdin;
544 obj_handle_t hstdout;
545 obj_handle_t hstderr;
546 /* VARARG(info,startup_info); */
547 /* VARARG(env,unicode_str); */
552 struct init_process_done_request
554 struct request_header __header;
555 int gui;
556 mod_handle_t module;
557 client_ptr_t ldt_copy;
558 client_ptr_t entry;
560 struct init_process_done_reply
562 struct reply_header __header;
567 struct init_thread_request
569 struct request_header __header;
570 int unix_pid;
571 int unix_tid;
572 int debug_level;
573 client_ptr_t teb;
574 client_ptr_t entry;
575 int reply_fd;
576 int wait_fd;
577 cpu_type_t cpu;
579 struct init_thread_reply
581 struct reply_header __header;
582 process_id_t pid;
583 thread_id_t tid;
584 timeout_t server_start;
585 data_size_t info_size;
586 int version;
591 struct terminate_process_request
593 struct request_header __header;
594 obj_handle_t handle;
595 int exit_code;
597 struct terminate_process_reply
599 struct reply_header __header;
600 int self;
601 char __pad_12[4];
606 struct terminate_thread_request
608 struct request_header __header;
609 obj_handle_t handle;
610 int exit_code;
612 struct terminate_thread_reply
614 struct reply_header __header;
615 int self;
616 int last;
621 struct get_process_info_request
623 struct request_header __header;
624 obj_handle_t handle;
626 struct get_process_info_reply
628 struct reply_header __header;
629 process_id_t pid;
630 process_id_t ppid;
631 affinity_t affinity;
632 client_ptr_t peb;
633 timeout_t start_time;
634 timeout_t end_time;
635 int exit_code;
636 int priority;
641 struct set_process_info_request
643 struct request_header __header;
644 obj_handle_t handle;
645 int mask;
646 int priority;
647 affinity_t affinity;
649 struct set_process_info_reply
651 struct reply_header __header;
653 #define SET_PROCESS_INFO_PRIORITY 0x01
654 #define SET_PROCESS_INFO_AFFINITY 0x02
658 struct get_thread_info_request
660 struct request_header __header;
661 obj_handle_t handle;
662 thread_id_t tid_in;
664 struct get_thread_info_reply
666 struct reply_header __header;
667 process_id_t pid;
668 thread_id_t tid;
669 client_ptr_t teb;
670 affinity_t affinity;
671 timeout_t creation_time;
672 timeout_t exit_time;
673 int exit_code;
674 int priority;
675 int last;
676 char __pad_60[4];
681 struct set_thread_info_request
683 struct request_header __header;
684 obj_handle_t handle;
685 int mask;
686 int priority;
687 affinity_t affinity;
688 obj_handle_t token;
689 char __pad_36[4];
691 struct set_thread_info_reply
693 struct reply_header __header;
695 #define SET_THREAD_INFO_PRIORITY 0x01
696 #define SET_THREAD_INFO_AFFINITY 0x02
697 #define SET_THREAD_INFO_TOKEN 0x04
701 struct get_dll_info_request
703 struct request_header __header;
704 obj_handle_t handle;
705 mod_handle_t base_address;
707 struct get_dll_info_reply
709 struct reply_header __header;
710 client_ptr_t entry_point;
711 data_size_t size;
712 data_size_t filename_len;
713 /* VARARG(filename,unicode_str); */
718 struct suspend_thread_request
720 struct request_header __header;
721 obj_handle_t handle;
723 struct suspend_thread_reply
725 struct reply_header __header;
726 int count;
727 char __pad_12[4];
732 struct resume_thread_request
734 struct request_header __header;
735 obj_handle_t handle;
737 struct resume_thread_reply
739 struct reply_header __header;
740 int count;
741 char __pad_12[4];
746 struct load_dll_request
748 struct request_header __header;
749 obj_handle_t handle;
750 mod_handle_t base;
751 client_ptr_t name;
752 data_size_t size;
753 int dbg_offset;
754 int dbg_size;
755 /* VARARG(filename,unicode_str); */
756 char __pad_44[4];
758 struct load_dll_reply
760 struct reply_header __header;
765 struct unload_dll_request
767 struct request_header __header;
768 char __pad_12[4];
769 mod_handle_t base;
771 struct unload_dll_reply
773 struct reply_header __header;
778 struct queue_apc_request
780 struct request_header __header;
781 obj_handle_t handle;
782 apc_call_t call;
784 struct queue_apc_reply
786 struct reply_header __header;
787 obj_handle_t handle;
788 int self;
793 struct get_apc_result_request
795 struct request_header __header;
796 obj_handle_t handle;
798 struct get_apc_result_reply
800 struct reply_header __header;
801 apc_result_t result;
806 struct close_handle_request
808 struct request_header __header;
809 obj_handle_t handle;
811 struct close_handle_reply
813 struct reply_header __header;
818 struct set_handle_info_request
820 struct request_header __header;
821 obj_handle_t handle;
822 int flags;
823 int mask;
825 struct set_handle_info_reply
827 struct reply_header __header;
828 int old_flags;
829 char __pad_12[4];
834 struct dup_handle_request
836 struct request_header __header;
837 obj_handle_t src_process;
838 obj_handle_t src_handle;
839 obj_handle_t dst_process;
840 unsigned int access;
841 unsigned int attributes;
842 unsigned int options;
844 struct dup_handle_reply
846 struct reply_header __header;
847 obj_handle_t handle;
848 int self;
849 int closed;
850 char __pad_20[4];
852 #define DUP_HANDLE_CLOSE_SOURCE DUPLICATE_CLOSE_SOURCE
853 #define DUP_HANDLE_SAME_ACCESS DUPLICATE_SAME_ACCESS
854 #define DUP_HANDLE_MAKE_GLOBAL 0x80000000
858 struct open_process_request
860 struct request_header __header;
861 process_id_t pid;
862 unsigned int access;
863 unsigned int attributes;
865 struct open_process_reply
867 struct reply_header __header;
868 obj_handle_t handle;
869 char __pad_12[4];
874 struct open_thread_request
876 struct request_header __header;
877 thread_id_t tid;
878 unsigned int access;
879 unsigned int attributes;
881 struct open_thread_reply
883 struct reply_header __header;
884 obj_handle_t handle;
885 char __pad_12[4];
890 struct select_request
892 struct request_header __header;
893 int flags;
894 client_ptr_t cookie;
895 obj_handle_t signal;
896 obj_handle_t prev_apc;
897 timeout_t timeout;
898 /* VARARG(result,apc_result); */
899 /* VARARG(handles,handles); */
901 struct select_reply
903 struct reply_header __header;
904 timeout_t timeout;
905 apc_call_t call;
906 obj_handle_t apc_handle;
907 char __pad_60[4];
909 #define SELECT_ALL 1
910 #define SELECT_ALERTABLE 2
911 #define SELECT_INTERRUPTIBLE 4
915 struct create_event_request
917 struct request_header __header;
918 unsigned int access;
919 unsigned int attributes;
920 int manual_reset;
921 int initial_state;
922 /* VARARG(objattr,object_attributes); */
924 struct create_event_reply
926 struct reply_header __header;
927 obj_handle_t handle;
928 char __pad_12[4];
932 struct event_op_request
934 struct request_header __header;
935 obj_handle_t handle;
936 int op;
937 char __pad_20[4];
939 struct event_op_reply
941 struct reply_header __header;
943 enum event_op { PULSE_EVENT, SET_EVENT, RESET_EVENT };
947 struct open_event_request
949 struct request_header __header;
950 unsigned int access;
951 unsigned int attributes;
952 obj_handle_t rootdir;
953 /* VARARG(name,unicode_str); */
955 struct open_event_reply
957 struct reply_header __header;
958 obj_handle_t handle;
959 char __pad_12[4];
964 struct create_mutex_request
966 struct request_header __header;
967 unsigned int access;
968 unsigned int attributes;
969 int owned;
970 /* VARARG(objattr,object_attributes); */
972 struct create_mutex_reply
974 struct reply_header __header;
975 obj_handle_t handle;
976 char __pad_12[4];
981 struct release_mutex_request
983 struct request_header __header;
984 obj_handle_t handle;
986 struct release_mutex_reply
988 struct reply_header __header;
989 unsigned int prev_count;
990 char __pad_12[4];
995 struct open_mutex_request
997 struct request_header __header;
998 unsigned int access;
999 unsigned int attributes;
1000 obj_handle_t rootdir;
1001 /* VARARG(name,unicode_str); */
1003 struct open_mutex_reply
1005 struct reply_header __header;
1006 obj_handle_t handle;
1007 char __pad_12[4];
1012 struct create_semaphore_request
1014 struct request_header __header;
1015 unsigned int access;
1016 unsigned int attributes;
1017 unsigned int initial;
1018 unsigned int max;
1019 /* VARARG(objattr,object_attributes); */
1021 struct create_semaphore_reply
1023 struct reply_header __header;
1024 obj_handle_t handle;
1025 char __pad_12[4];
1030 struct release_semaphore_request
1032 struct request_header __header;
1033 obj_handle_t handle;
1034 unsigned int count;
1036 struct release_semaphore_reply
1038 struct reply_header __header;
1039 unsigned int prev_count;
1040 char __pad_12[4];
1045 struct open_semaphore_request
1047 struct request_header __header;
1048 unsigned int access;
1049 unsigned int attributes;
1050 obj_handle_t rootdir;
1051 /* VARARG(name,unicode_str); */
1053 struct open_semaphore_reply
1055 struct reply_header __header;
1056 obj_handle_t handle;
1057 char __pad_12[4];
1062 struct create_file_request
1064 struct request_header __header;
1065 unsigned int access;
1066 unsigned int attributes;
1067 unsigned int sharing;
1068 int create;
1069 unsigned int options;
1070 unsigned int attrs;
1071 /* VARARG(objattr,object_attributes); */
1072 /* VARARG(filename,string); */
1074 struct create_file_reply
1076 struct reply_header __header;
1077 obj_handle_t handle;
1078 char __pad_12[4];
1083 struct open_file_object_request
1085 struct request_header __header;
1086 unsigned int access;
1087 unsigned int attributes;
1088 obj_handle_t rootdir;
1089 unsigned int sharing;
1090 unsigned int options;
1091 /* VARARG(filename,unicode_str); */
1093 struct open_file_object_reply
1095 struct reply_header __header;
1096 obj_handle_t handle;
1097 char __pad_12[4];
1102 struct alloc_file_handle_request
1104 struct request_header __header;
1105 unsigned int access;
1106 unsigned int attributes;
1107 int fd;
1109 struct alloc_file_handle_reply
1111 struct reply_header __header;
1112 obj_handle_t handle;
1113 char __pad_12[4];
1118 struct get_handle_fd_request
1120 struct request_header __header;
1121 obj_handle_t handle;
1123 struct get_handle_fd_reply
1125 struct reply_header __header;
1126 int type;
1127 int removable;
1128 unsigned int access;
1129 unsigned int options;
1131 enum server_fd_type
1133 FD_TYPE_INVALID,
1134 FD_TYPE_FILE,
1135 FD_TYPE_DIR,
1136 FD_TYPE_SOCKET,
1137 FD_TYPE_SERIAL,
1138 FD_TYPE_PIPE,
1139 FD_TYPE_MAILSLOT,
1140 FD_TYPE_CHAR,
1141 FD_TYPE_DEVICE,
1142 FD_TYPE_NB_TYPES
1147 struct flush_file_request
1149 struct request_header __header;
1150 obj_handle_t handle;
1152 struct flush_file_reply
1154 struct reply_header __header;
1155 obj_handle_t event;
1156 char __pad_12[4];
1161 struct lock_file_request
1163 struct request_header __header;
1164 obj_handle_t handle;
1165 file_pos_t offset;
1166 file_pos_t count;
1167 int shared;
1168 int wait;
1170 struct lock_file_reply
1172 struct reply_header __header;
1173 obj_handle_t handle;
1174 int overlapped;
1179 struct unlock_file_request
1181 struct request_header __header;
1182 obj_handle_t handle;
1183 file_pos_t offset;
1184 file_pos_t count;
1186 struct unlock_file_reply
1188 struct reply_header __header;
1193 struct create_socket_request
1195 struct request_header __header;
1196 unsigned int access;
1197 unsigned int attributes;
1198 int family;
1199 int type;
1200 int protocol;
1201 unsigned int flags;
1203 struct create_socket_reply
1205 struct reply_header __header;
1206 obj_handle_t handle;
1207 char __pad_12[4];
1212 struct accept_socket_request
1214 struct request_header __header;
1215 obj_handle_t lhandle;
1216 unsigned int access;
1217 unsigned int attributes;
1219 struct accept_socket_reply
1221 struct reply_header __header;
1222 obj_handle_t handle;
1223 char __pad_12[4];
1228 struct set_socket_event_request
1230 struct request_header __header;
1231 obj_handle_t handle;
1232 unsigned int mask;
1233 obj_handle_t event;
1234 user_handle_t window;
1235 unsigned int msg;
1237 struct set_socket_event_reply
1239 struct reply_header __header;
1244 struct get_socket_event_request
1246 struct request_header __header;
1247 obj_handle_t handle;
1248 int service;
1249 obj_handle_t c_event;
1251 struct get_socket_event_reply
1253 struct reply_header __header;
1254 unsigned int mask;
1255 unsigned int pmask;
1256 unsigned int state;
1257 /* VARARG(errors,ints); */
1258 char __pad_20[4];
1263 struct enable_socket_event_request
1265 struct request_header __header;
1266 obj_handle_t handle;
1267 unsigned int mask;
1268 unsigned int sstate;
1269 unsigned int cstate;
1270 char __pad_28[4];
1272 struct enable_socket_event_reply
1274 struct reply_header __header;
1277 struct set_socket_deferred_request
1279 struct request_header __header;
1280 obj_handle_t handle;
1281 obj_handle_t deferred;
1282 char __pad_20[4];
1284 struct set_socket_deferred_reply
1286 struct reply_header __header;
1290 struct alloc_console_request
1292 struct request_header __header;
1293 unsigned int access;
1294 unsigned int attributes;
1295 process_id_t pid;
1297 struct alloc_console_reply
1299 struct reply_header __header;
1300 obj_handle_t handle_in;
1301 obj_handle_t event;
1306 struct free_console_request
1308 struct request_header __header;
1309 char __pad_12[4];
1311 struct free_console_reply
1313 struct reply_header __header;
1317 #define CONSOLE_RENDERER_NONE_EVENT 0x00
1318 #define CONSOLE_RENDERER_TITLE_EVENT 0x01
1319 #define CONSOLE_RENDERER_ACTIVE_SB_EVENT 0x02
1320 #define CONSOLE_RENDERER_SB_RESIZE_EVENT 0x03
1321 #define CONSOLE_RENDERER_UPDATE_EVENT 0x04
1322 #define CONSOLE_RENDERER_CURSOR_POS_EVENT 0x05
1323 #define CONSOLE_RENDERER_CURSOR_GEOM_EVENT 0x06
1324 #define CONSOLE_RENDERER_DISPLAY_EVENT 0x07
1325 #define CONSOLE_RENDERER_EXIT_EVENT 0x08
1326 struct console_renderer_event
1328 short event;
1329 union
1331 struct update
1333 short top;
1334 short bottom;
1335 } update;
1336 struct resize
1338 short width;
1339 short height;
1340 } resize;
1341 struct cursor_pos
1343 short x;
1344 short y;
1345 } cursor_pos;
1346 struct cursor_geom
1348 short visible;
1349 short size;
1350 } cursor_geom;
1351 struct display
1353 short left;
1354 short top;
1355 short width;
1356 short height;
1357 } display;
1358 } u;
1362 struct get_console_renderer_events_request
1364 struct request_header __header;
1365 obj_handle_t handle;
1367 struct get_console_renderer_events_reply
1369 struct reply_header __header;
1370 /* VARARG(data,bytes); */
1375 struct open_console_request
1377 struct request_header __header;
1378 obj_handle_t from;
1380 unsigned int access;
1381 unsigned int attributes;
1382 int share;
1384 struct open_console_reply
1386 struct reply_header __header;
1387 obj_handle_t handle;
1388 char __pad_12[4];
1393 struct get_console_wait_event_request
1395 struct request_header __header;
1397 struct get_console_wait_event_reply
1399 struct reply_header __header;
1400 obj_handle_t handle;
1401 char __pad_12[4];
1405 struct get_console_mode_request
1407 struct request_header __header;
1408 obj_handle_t handle;
1410 struct get_console_mode_reply
1412 struct reply_header __header;
1413 int mode;
1414 char __pad_12[4];
1419 struct set_console_mode_request
1421 struct request_header __header;
1422 obj_handle_t handle;
1423 int mode;
1424 char __pad_20[4];
1426 struct set_console_mode_reply
1428 struct reply_header __header;
1433 struct set_console_input_info_request
1435 struct request_header __header;
1436 obj_handle_t handle;
1437 int mask;
1438 obj_handle_t active_sb;
1439 int history_mode;
1440 int history_size;
1441 int edition_mode;
1442 int input_cp;
1443 int output_cp;
1444 user_handle_t win;
1445 /* VARARG(title,unicode_str); */
1447 struct set_console_input_info_reply
1449 struct reply_header __header;
1451 #define SET_CONSOLE_INPUT_INFO_ACTIVE_SB 0x01
1452 #define SET_CONSOLE_INPUT_INFO_TITLE 0x02
1453 #define SET_CONSOLE_INPUT_INFO_HISTORY_MODE 0x04
1454 #define SET_CONSOLE_INPUT_INFO_HISTORY_SIZE 0x08
1455 #define SET_CONSOLE_INPUT_INFO_EDITION_MODE 0x10
1456 #define SET_CONSOLE_INPUT_INFO_INPUT_CODEPAGE 0x20
1457 #define SET_CONSOLE_INPUT_INFO_OUTPUT_CODEPAGE 0x40
1458 #define SET_CONSOLE_INPUT_INFO_WIN 0x80
1462 struct get_console_input_info_request
1464 struct request_header __header;
1465 obj_handle_t handle;
1467 struct get_console_input_info_reply
1469 struct reply_header __header;
1470 int history_mode;
1471 int history_size;
1472 int history_index;
1473 int edition_mode;
1474 int input_cp;
1475 int output_cp;
1476 user_handle_t win;
1477 /* VARARG(title,unicode_str); */
1478 char __pad_36[4];
1483 struct append_console_input_history_request
1485 struct request_header __header;
1486 obj_handle_t handle;
1487 /* VARARG(line,unicode_str); */
1489 struct append_console_input_history_reply
1491 struct reply_header __header;
1496 struct get_console_input_history_request
1498 struct request_header __header;
1499 obj_handle_t handle;
1500 int index;
1502 struct get_console_input_history_reply
1504 struct reply_header __header;
1505 int total;
1506 /* VARARG(line,unicode_str); */
1507 char __pad_12[4];
1512 struct create_console_output_request
1514 struct request_header __header;
1515 obj_handle_t handle_in;
1516 unsigned int access;
1517 unsigned int attributes;
1518 unsigned int share;
1520 struct create_console_output_reply
1522 struct reply_header __header;
1523 obj_handle_t handle_out;
1524 char __pad_12[4];
1529 struct set_console_output_info_request
1531 struct request_header __header;
1532 obj_handle_t handle;
1533 int mask;
1534 short int cursor_size;
1535 short int cursor_visible;
1536 short int cursor_x;
1537 short int cursor_y;
1538 short int width;
1539 short int height;
1540 short int attr;
1541 short int win_left;
1542 short int win_top;
1543 short int win_right;
1544 short int win_bottom;
1545 short int max_width;
1546 short int max_height;
1547 char __pad_46[2];
1549 struct set_console_output_info_reply
1551 struct reply_header __header;
1553 #define SET_CONSOLE_OUTPUT_INFO_CURSOR_GEOM 0x01
1554 #define SET_CONSOLE_OUTPUT_INFO_CURSOR_POS 0x02
1555 #define SET_CONSOLE_OUTPUT_INFO_SIZE 0x04
1556 #define SET_CONSOLE_OUTPUT_INFO_ATTR 0x08
1557 #define SET_CONSOLE_OUTPUT_INFO_DISPLAY_WINDOW 0x10
1558 #define SET_CONSOLE_OUTPUT_INFO_MAX_SIZE 0x20
1562 struct get_console_output_info_request
1564 struct request_header __header;
1565 obj_handle_t handle;
1567 struct get_console_output_info_reply
1569 struct reply_header __header;
1570 short int cursor_size;
1571 short int cursor_visible;
1572 short int cursor_x;
1573 short int cursor_y;
1574 short int width;
1575 short int height;
1576 short int attr;
1577 short int win_left;
1578 short int win_top;
1579 short int win_right;
1580 short int win_bottom;
1581 short int max_width;
1582 short int max_height;
1583 char __pad_34[6];
1587 struct write_console_input_request
1589 struct request_header __header;
1590 obj_handle_t handle;
1591 /* VARARG(rec,input_records); */
1593 struct write_console_input_reply
1595 struct reply_header __header;
1596 int written;
1597 char __pad_12[4];
1602 struct read_console_input_request
1604 struct request_header __header;
1605 obj_handle_t handle;
1606 int flush;
1608 struct read_console_input_reply
1610 struct reply_header __header;
1611 int read;
1612 /* VARARG(rec,input_records); */
1613 char __pad_12[4];
1618 struct write_console_output_request
1620 struct request_header __header;
1621 obj_handle_t handle;
1622 int x;
1623 int y;
1624 int mode;
1625 int wrap;
1626 /* VARARG(data,bytes); */
1628 struct write_console_output_reply
1630 struct reply_header __header;
1631 int written;
1632 int width;
1633 int height;
1634 char __pad_20[4];
1636 enum char_info_mode
1638 CHAR_INFO_MODE_TEXT,
1639 CHAR_INFO_MODE_ATTR,
1640 CHAR_INFO_MODE_TEXTATTR,
1641 CHAR_INFO_MODE_TEXTSTDATTR
1646 struct fill_console_output_request
1648 struct request_header __header;
1649 obj_handle_t handle;
1650 int x;
1651 int y;
1652 int mode;
1653 int count;
1654 int wrap;
1655 char_info_t data;
1657 struct fill_console_output_reply
1659 struct reply_header __header;
1660 int written;
1661 char __pad_12[4];
1666 struct read_console_output_request
1668 struct request_header __header;
1669 obj_handle_t handle;
1670 int x;
1671 int y;
1672 int mode;
1673 int wrap;
1675 struct read_console_output_reply
1677 struct reply_header __header;
1678 int width;
1679 int height;
1680 /* VARARG(data,bytes); */
1685 struct move_console_output_request
1687 struct request_header __header;
1688 obj_handle_t handle;
1689 short int x_src;
1690 short int y_src;
1691 short int x_dst;
1692 short int y_dst;
1693 short int w;
1694 short int h;
1695 char __pad_28[4];
1697 struct move_console_output_reply
1699 struct reply_header __header;
1704 struct send_console_signal_request
1706 struct request_header __header;
1707 int signal;
1708 process_id_t group_id;
1709 char __pad_20[4];
1711 struct send_console_signal_reply
1713 struct reply_header __header;
1718 struct read_directory_changes_request
1720 struct request_header __header;
1721 unsigned int filter;
1722 int subtree;
1723 int want_data;
1724 async_data_t async;
1726 struct read_directory_changes_reply
1728 struct reply_header __header;
1732 struct read_change_request
1734 struct request_header __header;
1735 obj_handle_t handle;
1737 struct read_change_reply
1739 struct reply_header __header;
1740 int action;
1741 /* VARARG(name,string); */
1742 char __pad_12[4];
1747 struct create_mapping_request
1749 struct request_header __header;
1750 unsigned int access;
1751 unsigned int attributes;
1752 unsigned int protect;
1753 mem_size_t size;
1754 obj_handle_t file_handle;
1755 /* VARARG(objattr,object_attributes); */
1757 struct create_mapping_reply
1759 struct reply_header __header;
1760 obj_handle_t handle;
1761 char __pad_12[4];
1764 #define VPROT_READ 0x01
1765 #define VPROT_WRITE 0x02
1766 #define VPROT_EXEC 0x04
1767 #define VPROT_WRITECOPY 0x08
1768 #define VPROT_GUARD 0x10
1769 #define VPROT_NOCACHE 0x20
1770 #define VPROT_COMMITTED 0x40
1771 #define VPROT_WRITEWATCH 0x80
1773 #define VPROT_IMAGE 0x0100
1774 #define VPROT_SYSTEM 0x0200
1775 #define VPROT_VALLOC 0x0400
1776 #define VPROT_NOEXEC 0x0800
1780 struct open_mapping_request
1782 struct request_header __header;
1783 unsigned int access;
1784 unsigned int attributes;
1785 obj_handle_t rootdir;
1786 /* VARARG(name,unicode_str); */
1788 struct open_mapping_reply
1790 struct reply_header __header;
1791 obj_handle_t handle;
1792 char __pad_12[4];
1797 struct get_mapping_info_request
1799 struct request_header __header;
1800 obj_handle_t handle;
1801 unsigned int access;
1803 struct get_mapping_info_reply
1805 struct reply_header __header;
1806 mem_size_t size;
1807 int protect;
1808 int header_size;
1809 client_ptr_t base;
1810 obj_handle_t mapping;
1811 obj_handle_t shared_file;
1816 struct get_mapping_committed_range_request
1818 struct request_header __header;
1819 obj_handle_t handle;
1820 file_pos_t offset;
1822 struct get_mapping_committed_range_reply
1824 struct reply_header __header;
1825 mem_size_t size;
1826 int committed;
1827 char __pad_20[4];
1832 struct add_mapping_committed_range_request
1834 struct request_header __header;
1835 obj_handle_t handle;
1836 file_pos_t offset;
1837 mem_size_t size;
1839 struct add_mapping_committed_range_reply
1841 struct reply_header __header;
1845 #define SNAP_PROCESS 0x00000001
1846 #define SNAP_THREAD 0x00000002
1848 struct create_snapshot_request
1850 struct request_header __header;
1851 unsigned int attributes;
1852 unsigned int flags;
1854 struct create_snapshot_reply
1856 struct reply_header __header;
1857 obj_handle_t handle;
1858 char __pad_12[4];
1863 struct next_process_request
1865 struct request_header __header;
1866 obj_handle_t handle;
1867 int reset;
1869 struct next_process_reply
1871 struct reply_header __header;
1872 int count;
1873 process_id_t pid;
1874 process_id_t ppid;
1875 int threads;
1876 int priority;
1877 int handles;
1878 /* VARARG(filename,unicode_str); */
1883 struct next_thread_request
1885 struct request_header __header;
1886 obj_handle_t handle;
1887 int reset;
1889 struct next_thread_reply
1891 struct reply_header __header;
1892 int count;
1893 process_id_t pid;
1894 thread_id_t tid;
1895 int base_pri;
1896 int delta_pri;
1897 char __pad_28[4];
1902 struct wait_debug_event_request
1904 struct request_header __header;
1905 int get_handle;
1907 struct wait_debug_event_reply
1909 struct reply_header __header;
1910 process_id_t pid;
1911 thread_id_t tid;
1912 obj_handle_t wait;
1913 /* VARARG(event,debug_event); */
1914 char __pad_20[4];
1919 struct queue_exception_event_request
1921 struct request_header __header;
1922 int first;
1923 unsigned int code;
1924 unsigned int flags;
1925 client_ptr_t record;
1926 client_ptr_t address;
1927 data_size_t len;
1928 /* VARARG(params,uints64,len); */
1929 /* VARARG(context,context); */
1931 struct queue_exception_event_reply
1933 struct reply_header __header;
1934 obj_handle_t handle;
1935 char __pad_12[4];
1940 struct get_exception_status_request
1942 struct request_header __header;
1943 obj_handle_t handle;
1945 struct get_exception_status_reply
1947 struct reply_header __header;
1948 /* VARARG(context,context); */
1953 struct output_debug_string_request
1955 struct request_header __header;
1956 data_size_t length;
1957 client_ptr_t string;
1958 int unicode;
1959 char __pad_28[4];
1961 struct output_debug_string_reply
1963 struct reply_header __header;
1968 struct continue_debug_event_request
1970 struct request_header __header;
1971 process_id_t pid;
1972 thread_id_t tid;
1973 int status;
1975 struct continue_debug_event_reply
1977 struct reply_header __header;
1982 struct debug_process_request
1984 struct request_header __header;
1985 process_id_t pid;
1986 int attach;
1987 char __pad_20[4];
1989 struct debug_process_reply
1991 struct reply_header __header;
1996 struct debug_break_request
1998 struct request_header __header;
1999 obj_handle_t handle;
2001 struct debug_break_reply
2003 struct reply_header __header;
2004 int self;
2005 char __pad_12[4];
2010 struct set_debugger_kill_on_exit_request
2012 struct request_header __header;
2013 int kill_on_exit;
2015 struct set_debugger_kill_on_exit_reply
2017 struct reply_header __header;
2022 struct read_process_memory_request
2024 struct request_header __header;
2025 obj_handle_t handle;
2026 client_ptr_t addr;
2028 struct read_process_memory_reply
2030 struct reply_header __header;
2031 /* VARARG(data,bytes); */
2036 struct write_process_memory_request
2038 struct request_header __header;
2039 obj_handle_t handle;
2040 client_ptr_t addr;
2041 /* VARARG(data,bytes); */
2043 struct write_process_memory_reply
2045 struct reply_header __header;
2050 struct create_key_request
2052 struct request_header __header;
2053 obj_handle_t parent;
2054 unsigned int access;
2055 unsigned int attributes;
2056 unsigned int options;
2057 data_size_t namelen;
2058 /* VARARG(name,unicode_str,namelen); */
2059 /* VARARG(class,unicode_str); */
2061 struct create_key_reply
2063 struct reply_header __header;
2064 obj_handle_t hkey;
2065 int created;
2069 struct open_key_request
2071 struct request_header __header;
2072 obj_handle_t parent;
2073 unsigned int access;
2074 unsigned int attributes;
2075 /* VARARG(name,unicode_str); */
2077 struct open_key_reply
2079 struct reply_header __header;
2080 obj_handle_t hkey;
2081 char __pad_12[4];
2086 struct delete_key_request
2088 struct request_header __header;
2089 obj_handle_t hkey;
2091 struct delete_key_reply
2093 struct reply_header __header;
2098 struct flush_key_request
2100 struct request_header __header;
2101 obj_handle_t hkey;
2103 struct flush_key_reply
2105 struct reply_header __header;
2110 struct enum_key_request
2112 struct request_header __header;
2113 obj_handle_t hkey;
2114 int index;
2115 int info_class;
2117 struct enum_key_reply
2119 struct reply_header __header;
2120 int subkeys;
2121 int max_subkey;
2122 int max_class;
2123 int values;
2124 int max_value;
2125 int max_data;
2126 timeout_t modif;
2127 data_size_t total;
2128 data_size_t namelen;
2129 /* VARARG(name,unicode_str,namelen); */
2130 /* VARARG(class,unicode_str); */
2135 struct set_key_value_request
2137 struct request_header __header;
2138 obj_handle_t hkey;
2139 int type;
2140 data_size_t namelen;
2141 /* VARARG(name,unicode_str,namelen); */
2142 /* VARARG(data,bytes); */
2144 struct set_key_value_reply
2146 struct reply_header __header;
2151 struct get_key_value_request
2153 struct request_header __header;
2154 obj_handle_t hkey;
2155 /* VARARG(name,unicode_str); */
2157 struct get_key_value_reply
2159 struct reply_header __header;
2160 int type;
2161 data_size_t total;
2162 /* VARARG(data,bytes); */
2167 struct enum_key_value_request
2169 struct request_header __header;
2170 obj_handle_t hkey;
2171 int index;
2172 int info_class;
2174 struct enum_key_value_reply
2176 struct reply_header __header;
2177 int type;
2178 data_size_t total;
2179 data_size_t namelen;
2180 /* VARARG(name,unicode_str,namelen); */
2181 /* VARARG(data,bytes); */
2182 char __pad_20[4];
2187 struct delete_key_value_request
2189 struct request_header __header;
2190 obj_handle_t hkey;
2191 /* VARARG(name,unicode_str); */
2193 struct delete_key_value_reply
2195 struct reply_header __header;
2200 struct load_registry_request
2202 struct request_header __header;
2203 obj_handle_t hkey;
2204 obj_handle_t file;
2205 /* VARARG(name,unicode_str); */
2206 char __pad_20[4];
2208 struct load_registry_reply
2210 struct reply_header __header;
2215 struct unload_registry_request
2217 struct request_header __header;
2218 obj_handle_t hkey;
2220 struct unload_registry_reply
2222 struct reply_header __header;
2227 struct save_registry_request
2229 struct request_header __header;
2230 obj_handle_t hkey;
2231 obj_handle_t file;
2232 char __pad_20[4];
2234 struct save_registry_reply
2236 struct reply_header __header;
2241 struct set_registry_notification_request
2243 struct request_header __header;
2244 obj_handle_t hkey;
2245 obj_handle_t event;
2246 int subtree;
2247 unsigned int filter;
2248 char __pad_28[4];
2250 struct set_registry_notification_reply
2252 struct reply_header __header;
2257 struct create_timer_request
2259 struct request_header __header;
2260 unsigned int access;
2261 unsigned int attributes;
2262 obj_handle_t rootdir;
2263 int manual;
2264 /* VARARG(name,unicode_str); */
2266 struct create_timer_reply
2268 struct reply_header __header;
2269 obj_handle_t handle;
2270 char __pad_12[4];
2275 struct open_timer_request
2277 struct request_header __header;
2278 unsigned int access;
2279 unsigned int attributes;
2280 obj_handle_t rootdir;
2281 /* VARARG(name,unicode_str); */
2283 struct open_timer_reply
2285 struct reply_header __header;
2286 obj_handle_t handle;
2287 char __pad_12[4];
2291 struct set_timer_request
2293 struct request_header __header;
2294 obj_handle_t handle;
2295 timeout_t expire;
2296 client_ptr_t callback;
2297 client_ptr_t arg;
2298 int period;
2300 struct set_timer_reply
2302 struct reply_header __header;
2303 int signaled;
2304 char __pad_12[4];
2308 struct cancel_timer_request
2310 struct request_header __header;
2311 obj_handle_t handle;
2313 struct cancel_timer_reply
2315 struct reply_header __header;
2316 int signaled;
2317 char __pad_12[4];
2321 struct get_timer_info_request
2323 struct request_header __header;
2324 obj_handle_t handle;
2326 struct get_timer_info_reply
2328 struct reply_header __header;
2329 timeout_t when;
2330 int signaled;
2331 char __pad_20[4];
2336 struct get_thread_context_request
2338 struct request_header __header;
2339 obj_handle_t handle;
2340 unsigned int flags;
2341 int suspend;
2343 struct get_thread_context_reply
2345 struct reply_header __header;
2346 int self;
2347 /* VARARG(context,context); */
2348 char __pad_12[4];
2353 struct set_thread_context_request
2355 struct request_header __header;
2356 obj_handle_t handle;
2357 unsigned int flags;
2358 int suspend;
2359 /* VARARG(context,context); */
2361 struct set_thread_context_reply
2363 struct reply_header __header;
2364 int self;
2365 char __pad_12[4];
2370 struct get_selector_entry_request
2372 struct request_header __header;
2373 obj_handle_t handle;
2374 int entry;
2376 struct get_selector_entry_reply
2378 struct reply_header __header;
2379 unsigned int base;
2380 unsigned int limit;
2381 unsigned char flags;
2382 char __pad_17[7];
2387 struct add_atom_request
2389 struct request_header __header;
2390 obj_handle_t table;
2391 /* VARARG(name,unicode_str); */
2393 struct add_atom_reply
2395 struct reply_header __header;
2396 atom_t atom;
2397 char __pad_12[4];
2402 struct delete_atom_request
2404 struct request_header __header;
2405 obj_handle_t table;
2406 atom_t atom;
2407 char __pad_20[4];
2409 struct delete_atom_reply
2411 struct reply_header __header;
2416 struct find_atom_request
2418 struct request_header __header;
2419 obj_handle_t table;
2420 /* VARARG(name,unicode_str); */
2422 struct find_atom_reply
2424 struct reply_header __header;
2425 atom_t atom;
2426 char __pad_12[4];
2431 struct get_atom_information_request
2433 struct request_header __header;
2434 obj_handle_t table;
2435 atom_t atom;
2437 struct get_atom_information_reply
2439 struct reply_header __header;
2440 int count;
2441 int pinned;
2442 data_size_t total;
2443 /* VARARG(name,unicode_str); */
2444 char __pad_20[4];
2449 struct set_atom_information_request
2451 struct request_header __header;
2452 obj_handle_t table;
2453 atom_t atom;
2454 int pinned;
2456 struct set_atom_information_reply
2458 struct reply_header __header;
2463 struct empty_atom_table_request
2465 struct request_header __header;
2466 obj_handle_t table;
2467 int if_pinned;
2468 char __pad_20[4];
2470 struct empty_atom_table_reply
2472 struct reply_header __header;
2477 struct init_atom_table_request
2479 struct request_header __header;
2480 int entries;
2482 struct init_atom_table_reply
2484 struct reply_header __header;
2485 obj_handle_t table;
2486 char __pad_12[4];
2491 struct get_msg_queue_request
2493 struct request_header __header;
2495 struct get_msg_queue_reply
2497 struct reply_header __header;
2498 obj_handle_t handle;
2499 char __pad_12[4];
2504 struct set_queue_fd_request
2506 struct request_header __header;
2507 obj_handle_t handle;
2509 struct set_queue_fd_reply
2511 struct reply_header __header;
2516 struct set_queue_mask_request
2518 struct request_header __header;
2519 unsigned int wake_mask;
2520 unsigned int changed_mask;
2521 int skip_wait;
2523 struct set_queue_mask_reply
2525 struct reply_header __header;
2526 unsigned int wake_bits;
2527 unsigned int changed_bits;
2532 struct get_queue_status_request
2534 struct request_header __header;
2535 int clear;
2537 struct get_queue_status_reply
2539 struct reply_header __header;
2540 unsigned int wake_bits;
2541 unsigned int changed_bits;
2546 struct get_process_idle_event_request
2548 struct request_header __header;
2549 obj_handle_t handle;
2551 struct get_process_idle_event_reply
2553 struct reply_header __header;
2554 obj_handle_t event;
2555 char __pad_12[4];
2560 struct send_message_request
2562 struct request_header __header;
2563 thread_id_t id;
2564 int type;
2565 int flags;
2566 user_handle_t win;
2567 unsigned int msg;
2568 lparam_t wparam;
2569 lparam_t lparam;
2570 timeout_t timeout;
2571 /* VARARG(data,message_data); */
2573 struct send_message_reply
2575 struct reply_header __header;
2578 struct post_quit_message_request
2580 struct request_header __header;
2581 int exit_code;
2583 struct post_quit_message_reply
2585 struct reply_header __header;
2588 enum message_type
2590 MSG_ASCII,
2591 MSG_UNICODE,
2592 MSG_NOTIFY,
2593 MSG_CALLBACK,
2594 MSG_CALLBACK_RESULT,
2595 MSG_OTHER_PROCESS,
2596 MSG_POSTED,
2597 MSG_HARDWARE,
2598 MSG_WINEVENT
2600 #define SEND_MSG_ABORT_IF_HUNG 0x01
2604 struct send_hardware_message_request
2606 struct request_header __header;
2607 thread_id_t id;
2608 user_handle_t win;
2609 unsigned int msg;
2610 lparam_t wparam;
2611 lparam_t lparam;
2612 lparam_t info;
2613 int x;
2614 int y;
2615 unsigned int time;
2616 char __pad_60[4];
2618 struct send_hardware_message_reply
2620 struct reply_header __header;
2625 struct get_message_request
2627 struct request_header __header;
2628 unsigned int flags;
2629 user_handle_t get_win;
2630 unsigned int get_first;
2631 unsigned int get_last;
2632 unsigned int hw_id;
2633 unsigned int wake_mask;
2634 unsigned int changed_mask;
2636 struct get_message_reply
2638 struct reply_header __header;
2639 user_handle_t win;
2640 unsigned int msg;
2641 lparam_t wparam;
2642 lparam_t lparam;
2643 int type;
2644 unsigned int time;
2645 unsigned int active_hooks;
2646 data_size_t total;
2647 /* VARARG(data,message_data); */
2652 struct reply_message_request
2654 struct request_header __header;
2655 int remove;
2656 lparam_t result;
2657 /* VARARG(data,bytes); */
2659 struct reply_message_reply
2661 struct reply_header __header;
2666 struct accept_hardware_message_request
2668 struct request_header __header;
2669 unsigned int hw_id;
2670 int remove;
2671 user_handle_t new_win;
2673 struct accept_hardware_message_reply
2675 struct reply_header __header;
2680 struct get_message_reply_request
2682 struct request_header __header;
2683 int cancel;
2685 struct get_message_reply_reply
2687 struct reply_header __header;
2688 lparam_t result;
2689 /* VARARG(data,bytes); */
2694 struct set_win_timer_request
2696 struct request_header __header;
2697 user_handle_t win;
2698 unsigned int msg;
2699 unsigned int rate;
2700 lparam_t id;
2701 lparam_t lparam;
2703 struct set_win_timer_reply
2705 struct reply_header __header;
2706 lparam_t id;
2711 struct kill_win_timer_request
2713 struct request_header __header;
2714 user_handle_t win;
2715 lparam_t id;
2716 unsigned int msg;
2717 char __pad_28[4];
2719 struct kill_win_timer_reply
2721 struct reply_header __header;
2726 struct is_window_hung_request
2728 struct request_header __header;
2729 user_handle_t win;
2731 struct is_window_hung_reply
2733 struct reply_header __header;
2734 int is_hung;
2735 char __pad_12[4];
2740 struct get_serial_info_request
2742 struct request_header __header;
2743 obj_handle_t handle;
2745 struct get_serial_info_reply
2747 struct reply_header __header;
2748 unsigned int readinterval;
2749 unsigned int readconst;
2750 unsigned int readmult;
2751 unsigned int writeconst;
2752 unsigned int writemult;
2753 unsigned int eventmask;
2758 struct set_serial_info_request
2760 struct request_header __header;
2761 obj_handle_t handle;
2762 int flags;
2763 unsigned int readinterval;
2764 unsigned int readconst;
2765 unsigned int readmult;
2766 unsigned int writeconst;
2767 unsigned int writemult;
2768 unsigned int eventmask;
2769 char __pad_44[4];
2771 struct set_serial_info_reply
2773 struct reply_header __header;
2775 #define SERIALINFO_SET_TIMEOUTS 0x01
2776 #define SERIALINFO_SET_MASK 0x02
2780 struct register_async_request
2782 struct request_header __header;
2783 int type;
2784 async_data_t async;
2785 int count;
2786 char __pad_60[4];
2788 struct register_async_reply
2790 struct reply_header __header;
2792 #define ASYNC_TYPE_READ 0x01
2793 #define ASYNC_TYPE_WRITE 0x02
2794 #define ASYNC_TYPE_WAIT 0x03
2798 struct cancel_async_request
2800 struct request_header __header;
2801 obj_handle_t handle;
2803 struct cancel_async_reply
2805 struct reply_header __header;
2810 struct ioctl_request
2812 struct request_header __header;
2813 ioctl_code_t code;
2814 async_data_t async;
2815 int blocking;
2816 /* VARARG(in_data,bytes); */
2818 struct ioctl_reply
2820 struct reply_header __header;
2821 obj_handle_t wait;
2822 unsigned int options;
2823 /* VARARG(out_data,bytes); */
2828 struct get_ioctl_result_request
2830 struct request_header __header;
2831 obj_handle_t handle;
2832 client_ptr_t user_arg;
2834 struct get_ioctl_result_reply
2836 struct reply_header __header;
2837 /* VARARG(out_data,bytes); */
2842 struct create_named_pipe_request
2844 struct request_header __header;
2845 unsigned int access;
2846 unsigned int attributes;
2847 obj_handle_t rootdir;
2848 unsigned int options;
2849 unsigned int maxinstances;
2850 unsigned int outsize;
2851 unsigned int insize;
2852 timeout_t timeout;
2853 unsigned int flags;
2854 /* VARARG(name,unicode_str); */
2856 struct create_named_pipe_reply
2858 struct reply_header __header;
2859 obj_handle_t handle;
2860 char __pad_12[4];
2864 #define NAMED_PIPE_MESSAGE_STREAM_WRITE 0x0001
2865 #define NAMED_PIPE_MESSAGE_STREAM_READ 0x0002
2866 #define NAMED_PIPE_NONBLOCKING_MODE 0x0004
2867 #define NAMED_PIPE_SERVER_END 0x8000
2870 struct get_named_pipe_info_request
2872 struct request_header __header;
2873 obj_handle_t handle;
2875 struct get_named_pipe_info_reply
2877 struct reply_header __header;
2878 unsigned int flags;
2879 unsigned int maxinstances;
2880 unsigned int instances;
2881 unsigned int outsize;
2882 unsigned int insize;
2883 char __pad_28[4];
2888 struct create_window_request
2890 struct request_header __header;
2891 user_handle_t parent;
2892 user_handle_t owner;
2893 atom_t atom;
2894 mod_handle_t instance;
2895 /* VARARG(class,unicode_str); */
2897 struct create_window_reply
2899 struct reply_header __header;
2900 user_handle_t handle;
2901 user_handle_t parent;
2902 user_handle_t owner;
2903 int extra;
2904 client_ptr_t class_ptr;
2909 struct destroy_window_request
2911 struct request_header __header;
2912 user_handle_t handle;
2914 struct destroy_window_reply
2916 struct reply_header __header;
2921 struct get_desktop_window_request
2923 struct request_header __header;
2924 int force;
2926 struct get_desktop_window_reply
2928 struct reply_header __header;
2929 user_handle_t top_window;
2930 user_handle_t msg_window;
2935 struct set_window_owner_request
2937 struct request_header __header;
2938 user_handle_t handle;
2939 user_handle_t owner;
2941 struct set_window_owner_reply
2943 struct reply_header __header;
2944 user_handle_t full_owner;
2945 user_handle_t prev_owner;
2950 struct get_window_info_request
2952 struct request_header __header;
2953 user_handle_t handle;
2955 struct get_window_info_reply
2957 struct reply_header __header;
2958 user_handle_t full_handle;
2959 user_handle_t last_active;
2960 process_id_t pid;
2961 thread_id_t tid;
2962 atom_t atom;
2963 int is_unicode;
2968 struct set_window_info_request
2970 struct request_header __header;
2971 unsigned short flags;
2972 short int is_unicode;
2973 user_handle_t handle;
2974 unsigned int style;
2975 unsigned int ex_style;
2976 unsigned int id;
2977 mod_handle_t instance;
2978 lparam_t user_data;
2979 int extra_offset;
2980 data_size_t extra_size;
2981 lparam_t extra_value;
2983 struct set_window_info_reply
2985 struct reply_header __header;
2986 unsigned int old_style;
2987 unsigned int old_ex_style;
2988 mod_handle_t old_instance;
2989 lparam_t old_user_data;
2990 lparam_t old_extra_value;
2991 unsigned int old_id;
2992 char __pad_44[4];
2994 #define SET_WIN_STYLE 0x01
2995 #define SET_WIN_EXSTYLE 0x02
2996 #define SET_WIN_ID 0x04
2997 #define SET_WIN_INSTANCE 0x08
2998 #define SET_WIN_USERDATA 0x10
2999 #define SET_WIN_EXTRA 0x20
3000 #define SET_WIN_UNICODE 0x40
3004 struct set_parent_request
3006 struct request_header __header;
3007 user_handle_t handle;
3008 user_handle_t parent;
3010 struct set_parent_reply
3012 struct reply_header __header;
3013 user_handle_t old_parent;
3014 user_handle_t full_parent;
3019 struct get_window_parents_request
3021 struct request_header __header;
3022 user_handle_t handle;
3024 struct get_window_parents_reply
3026 struct reply_header __header;
3027 int count;
3028 /* VARARG(parents,user_handles); */
3029 char __pad_12[4];
3034 struct get_window_children_request
3036 struct request_header __header;
3037 obj_handle_t desktop;
3038 user_handle_t parent;
3039 atom_t atom;
3040 thread_id_t tid;
3041 /* VARARG(class,unicode_str); */
3043 struct get_window_children_reply
3045 struct reply_header __header;
3046 int count;
3047 /* VARARG(children,user_handles); */
3048 char __pad_12[4];
3053 struct get_window_children_from_point_request
3055 struct request_header __header;
3056 user_handle_t parent;
3057 int x;
3058 int y;
3060 struct get_window_children_from_point_reply
3062 struct reply_header __header;
3063 int count;
3064 /* VARARG(children,user_handles); */
3065 char __pad_12[4];
3070 struct get_window_tree_request
3072 struct request_header __header;
3073 user_handle_t handle;
3075 struct get_window_tree_reply
3077 struct reply_header __header;
3078 user_handle_t parent;
3079 user_handle_t owner;
3080 user_handle_t next_sibling;
3081 user_handle_t prev_sibling;
3082 user_handle_t first_sibling;
3083 user_handle_t last_sibling;
3084 user_handle_t first_child;
3085 user_handle_t last_child;
3089 struct set_window_pos_request
3091 struct request_header __header;
3092 unsigned int flags;
3093 user_handle_t handle;
3094 user_handle_t previous;
3095 rectangle_t window;
3096 rectangle_t client;
3097 /* VARARG(valid,rectangles); */
3099 struct set_window_pos_reply
3101 struct reply_header __header;
3102 unsigned int new_style;
3103 unsigned int new_ex_style;
3108 struct get_window_rectangles_request
3110 struct request_header __header;
3111 user_handle_t handle;
3113 struct get_window_rectangles_reply
3115 struct reply_header __header;
3116 rectangle_t window;
3117 rectangle_t visible;
3118 rectangle_t client;
3123 struct get_window_text_request
3125 struct request_header __header;
3126 user_handle_t handle;
3128 struct get_window_text_reply
3130 struct reply_header __header;
3131 /* VARARG(text,unicode_str); */
3136 struct set_window_text_request
3138 struct request_header __header;
3139 user_handle_t handle;
3140 /* VARARG(text,unicode_str); */
3142 struct set_window_text_reply
3144 struct reply_header __header;
3149 struct get_windows_offset_request
3151 struct request_header __header;
3152 user_handle_t from;
3153 user_handle_t to;
3155 struct get_windows_offset_reply
3157 struct reply_header __header;
3158 int x;
3159 int y;
3164 struct get_visible_region_request
3166 struct request_header __header;
3167 user_handle_t window;
3168 unsigned int flags;
3170 struct get_visible_region_reply
3172 struct reply_header __header;
3173 user_handle_t top_win;
3174 rectangle_t top_rect;
3175 rectangle_t win_rect;
3176 data_size_t total_size;
3177 /* VARARG(region,rectangles); */
3182 struct get_window_region_request
3184 struct request_header __header;
3185 user_handle_t window;
3187 struct get_window_region_reply
3189 struct reply_header __header;
3190 data_size_t total_size;
3191 /* VARARG(region,rectangles); */
3192 char __pad_12[4];
3197 struct set_window_region_request
3199 struct request_header __header;
3200 user_handle_t window;
3201 int redraw;
3202 /* VARARG(region,rectangles); */
3203 char __pad_20[4];
3205 struct set_window_region_reply
3207 struct reply_header __header;
3212 struct get_update_region_request
3214 struct request_header __header;
3215 user_handle_t window;
3216 user_handle_t from_child;
3217 unsigned int flags;
3219 struct get_update_region_reply
3221 struct reply_header __header;
3222 user_handle_t child;
3223 unsigned int flags;
3224 data_size_t total_size;
3225 /* VARARG(region,rectangles); */
3226 char __pad_20[4];
3228 #define UPDATE_NONCLIENT 0x01
3229 #define UPDATE_ERASE 0x02
3230 #define UPDATE_PAINT 0x04
3231 #define UPDATE_INTERNALPAINT 0x08
3232 #define UPDATE_ALLCHILDREN 0x10
3233 #define UPDATE_NOCHILDREN 0x20
3234 #define UPDATE_NOREGION 0x40
3235 #define UPDATE_DELAYED_ERASE 0x80
3239 struct update_window_zorder_request
3241 struct request_header __header;
3242 user_handle_t window;
3243 rectangle_t rect;
3245 struct update_window_zorder_reply
3247 struct reply_header __header;
3252 struct redraw_window_request
3254 struct request_header __header;
3255 user_handle_t window;
3256 unsigned int flags;
3257 /* VARARG(region,rectangles); */
3258 char __pad_20[4];
3260 struct redraw_window_reply
3262 struct reply_header __header;
3267 struct set_window_property_request
3269 struct request_header __header;
3270 user_handle_t window;
3271 lparam_t data;
3272 atom_t atom;
3273 /* VARARG(name,unicode_str); */
3274 char __pad_28[4];
3276 struct set_window_property_reply
3278 struct reply_header __header;
3283 struct remove_window_property_request
3285 struct request_header __header;
3286 user_handle_t window;
3287 atom_t atom;
3288 /* VARARG(name,unicode_str); */
3290 struct remove_window_property_reply
3292 struct reply_header __header;
3293 lparam_t data;
3298 struct get_window_property_request
3300 struct request_header __header;
3301 user_handle_t window;
3302 atom_t atom;
3303 /* VARARG(name,unicode_str); */
3305 struct get_window_property_reply
3307 struct reply_header __header;
3308 lparam_t data;
3313 struct get_window_properties_request
3315 struct request_header __header;
3316 user_handle_t window;
3318 struct get_window_properties_reply
3320 struct reply_header __header;
3321 int total;
3322 /* VARARG(props,properties); */
3323 char __pad_12[4];
3328 struct create_winstation_request
3330 struct request_header __header;
3331 unsigned int flags;
3332 unsigned int access;
3333 unsigned int attributes;
3334 /* VARARG(name,unicode_str); */
3336 struct create_winstation_reply
3338 struct reply_header __header;
3339 obj_handle_t handle;
3340 char __pad_12[4];
3345 struct open_winstation_request
3347 struct request_header __header;
3348 unsigned int access;
3349 unsigned int attributes;
3350 /* VARARG(name,unicode_str); */
3352 struct open_winstation_reply
3354 struct reply_header __header;
3355 obj_handle_t handle;
3356 char __pad_12[4];
3361 struct close_winstation_request
3363 struct request_header __header;
3364 obj_handle_t handle;
3366 struct close_winstation_reply
3368 struct reply_header __header;
3373 struct get_process_winstation_request
3375 struct request_header __header;
3377 struct get_process_winstation_reply
3379 struct reply_header __header;
3380 obj_handle_t handle;
3381 char __pad_12[4];
3386 struct set_process_winstation_request
3388 struct request_header __header;
3389 obj_handle_t handle;
3391 struct set_process_winstation_reply
3393 struct reply_header __header;
3398 struct enum_winstation_request
3400 struct request_header __header;
3401 unsigned int index;
3403 struct enum_winstation_reply
3405 struct reply_header __header;
3406 unsigned int next;
3407 /* VARARG(name,unicode_str); */
3408 char __pad_12[4];
3413 struct create_desktop_request
3415 struct request_header __header;
3416 unsigned int flags;
3417 unsigned int access;
3418 unsigned int attributes;
3419 /* VARARG(name,unicode_str); */
3421 struct create_desktop_reply
3423 struct reply_header __header;
3424 obj_handle_t handle;
3425 char __pad_12[4];
3430 struct open_desktop_request
3432 struct request_header __header;
3433 obj_handle_t winsta;
3434 unsigned int flags;
3435 unsigned int access;
3436 unsigned int attributes;
3437 /* VARARG(name,unicode_str); */
3439 struct open_desktop_reply
3441 struct reply_header __header;
3442 obj_handle_t handle;
3443 char __pad_12[4];
3448 struct close_desktop_request
3450 struct request_header __header;
3451 obj_handle_t handle;
3453 struct close_desktop_reply
3455 struct reply_header __header;
3460 struct get_thread_desktop_request
3462 struct request_header __header;
3463 thread_id_t tid;
3465 struct get_thread_desktop_reply
3467 struct reply_header __header;
3468 obj_handle_t handle;
3469 char __pad_12[4];
3474 struct set_thread_desktop_request
3476 struct request_header __header;
3477 obj_handle_t handle;
3479 struct set_thread_desktop_reply
3481 struct reply_header __header;
3486 struct enum_desktop_request
3488 struct request_header __header;
3489 obj_handle_t winstation;
3490 unsigned int index;
3492 struct enum_desktop_reply
3494 struct reply_header __header;
3495 unsigned int next;
3496 /* VARARG(name,unicode_str); */
3497 char __pad_12[4];
3502 struct set_user_object_info_request
3504 struct request_header __header;
3505 obj_handle_t handle;
3506 unsigned int flags;
3507 unsigned int obj_flags;
3509 struct set_user_object_info_reply
3511 struct reply_header __header;
3512 int is_desktop;
3513 unsigned int old_obj_flags;
3514 /* VARARG(name,unicode_str); */
3516 #define SET_USER_OBJECT_FLAGS 1
3520 struct attach_thread_input_request
3522 struct request_header __header;
3523 thread_id_t tid_from;
3524 thread_id_t tid_to;
3525 int attach;
3527 struct attach_thread_input_reply
3529 struct reply_header __header;
3534 struct get_thread_input_request
3536 struct request_header __header;
3537 thread_id_t tid;
3539 struct get_thread_input_reply
3541 struct reply_header __header;
3542 user_handle_t focus;
3543 user_handle_t capture;
3544 user_handle_t active;
3545 user_handle_t foreground;
3546 user_handle_t menu_owner;
3547 user_handle_t move_size;
3548 user_handle_t caret;
3549 rectangle_t rect;
3550 char __pad_52[4];
3555 struct get_last_input_time_request
3557 struct request_header __header;
3559 struct get_last_input_time_reply
3561 struct reply_header __header;
3562 unsigned int time;
3563 char __pad_12[4];
3568 struct get_key_state_request
3570 struct request_header __header;
3571 thread_id_t tid;
3572 int key;
3574 struct get_key_state_reply
3576 struct reply_header __header;
3577 unsigned char state;
3578 /* VARARG(keystate,bytes); */
3579 char __pad_9[7];
3583 struct set_key_state_request
3585 struct request_header __header;
3586 thread_id_t tid;
3587 /* VARARG(keystate,bytes); */
3589 struct set_key_state_reply
3591 struct reply_header __header;
3595 struct set_foreground_window_request
3597 struct request_header __header;
3598 user_handle_t handle;
3600 struct set_foreground_window_reply
3602 struct reply_header __header;
3603 user_handle_t previous;
3604 int send_msg_old;
3605 int send_msg_new;
3606 char __pad_20[4];
3610 struct set_focus_window_request
3612 struct request_header __header;
3613 user_handle_t handle;
3615 struct set_focus_window_reply
3617 struct reply_header __header;
3618 user_handle_t previous;
3619 char __pad_12[4];
3623 struct set_active_window_request
3625 struct request_header __header;
3626 user_handle_t handle;
3628 struct set_active_window_reply
3630 struct reply_header __header;
3631 user_handle_t previous;
3632 char __pad_12[4];
3636 struct set_capture_window_request
3638 struct request_header __header;
3639 user_handle_t handle;
3640 unsigned int flags;
3642 struct set_capture_window_reply
3644 struct reply_header __header;
3645 user_handle_t previous;
3646 user_handle_t full_handle;
3648 #define CAPTURE_MENU 0x01
3649 #define CAPTURE_MOVESIZE 0x02
3653 struct set_caret_window_request
3655 struct request_header __header;
3656 user_handle_t handle;
3657 int width;
3658 int height;
3660 struct set_caret_window_reply
3662 struct reply_header __header;
3663 user_handle_t previous;
3664 rectangle_t old_rect;
3665 int old_hide;
3666 int old_state;
3667 char __pad_36[4];
3672 struct set_caret_info_request
3674 struct request_header __header;
3675 unsigned int flags;
3676 user_handle_t handle;
3677 int x;
3678 int y;
3679 int hide;
3680 int state;
3682 struct set_caret_info_reply
3684 struct reply_header __header;
3685 user_handle_t full_handle;
3686 rectangle_t old_rect;
3687 int old_hide;
3688 int old_state;
3689 char __pad_36[4];
3691 #define SET_CARET_POS 0x01
3692 #define SET_CARET_HIDE 0x02
3693 #define SET_CARET_STATE 0x04
3697 struct set_hook_request
3699 struct request_header __header;
3700 int id;
3701 process_id_t pid;
3702 thread_id_t tid;
3703 int event_min;
3704 int event_max;
3705 client_ptr_t proc;
3706 int flags;
3707 int unicode;
3708 /* VARARG(module,unicode_str); */
3710 struct set_hook_reply
3712 struct reply_header __header;
3713 user_handle_t handle;
3714 unsigned int active_hooks;
3719 struct remove_hook_request
3721 struct request_header __header;
3722 user_handle_t handle;
3723 client_ptr_t proc;
3724 int id;
3726 struct remove_hook_reply
3728 struct reply_header __header;
3729 unsigned int active_hooks;
3730 char __pad_12[4];
3735 struct start_hook_chain_request
3737 struct request_header __header;
3738 int id;
3739 int event;
3740 user_handle_t window;
3741 int object_id;
3742 int child_id;
3744 struct start_hook_chain_reply
3746 struct reply_header __header;
3747 user_handle_t handle;
3748 process_id_t pid;
3749 thread_id_t tid;
3750 int unicode;
3751 client_ptr_t proc;
3752 unsigned int active_hooks;
3753 /* VARARG(module,unicode_str); */
3754 char __pad_36[4];
3759 struct finish_hook_chain_request
3761 struct request_header __header;
3762 int id;
3764 struct finish_hook_chain_reply
3766 struct reply_header __header;
3771 struct get_hook_info_request
3773 struct request_header __header;
3774 user_handle_t handle;
3775 int get_next;
3776 int event;
3777 user_handle_t window;
3778 int object_id;
3779 int child_id;
3781 struct get_hook_info_reply
3783 struct reply_header __header;
3784 user_handle_t handle;
3785 int id;
3786 process_id_t pid;
3787 thread_id_t tid;
3788 client_ptr_t proc;
3789 int unicode;
3790 /* VARARG(module,unicode_str); */
3791 char __pad_36[4];
3796 struct create_class_request
3798 struct request_header __header;
3799 int local;
3800 atom_t atom;
3801 unsigned int style;
3802 mod_handle_t instance;
3803 int extra;
3804 int win_extra;
3805 client_ptr_t client_ptr;
3806 /* VARARG(name,unicode_str); */
3808 struct create_class_reply
3810 struct reply_header __header;
3811 atom_t atom;
3812 char __pad_12[4];
3817 struct destroy_class_request
3819 struct request_header __header;
3820 atom_t atom;
3821 mod_handle_t instance;
3822 /* VARARG(name,unicode_str); */
3824 struct destroy_class_reply
3826 struct reply_header __header;
3827 client_ptr_t client_ptr;
3832 struct set_class_info_request
3834 struct request_header __header;
3835 user_handle_t window;
3836 unsigned int flags;
3837 atom_t atom;
3838 unsigned int style;
3839 int win_extra;
3840 mod_handle_t instance;
3841 int extra_offset;
3842 data_size_t extra_size;
3843 lparam_t extra_value;
3845 struct set_class_info_reply
3847 struct reply_header __header;
3848 atom_t old_atom;
3849 unsigned int old_style;
3850 int old_extra;
3851 int old_win_extra;
3852 mod_handle_t old_instance;
3853 lparam_t old_extra_value;
3855 #define SET_CLASS_ATOM 0x0001
3856 #define SET_CLASS_STYLE 0x0002
3857 #define SET_CLASS_WINEXTRA 0x0004
3858 #define SET_CLASS_INSTANCE 0x0008
3859 #define SET_CLASS_EXTRA 0x0010
3863 struct set_clipboard_info_request
3865 struct request_header __header;
3866 unsigned int flags;
3867 user_handle_t clipboard;
3868 user_handle_t owner;
3869 user_handle_t viewer;
3870 unsigned int seqno;
3872 struct set_clipboard_info_reply
3874 struct reply_header __header;
3875 unsigned int flags;
3876 user_handle_t old_clipboard;
3877 user_handle_t old_owner;
3878 user_handle_t old_viewer;
3879 unsigned int seqno;
3880 char __pad_28[4];
3883 #define SET_CB_OPEN 0x001
3884 #define SET_CB_OWNER 0x002
3885 #define SET_CB_VIEWER 0x004
3886 #define SET_CB_SEQNO 0x008
3887 #define SET_CB_RELOWNER 0x010
3888 #define SET_CB_CLOSE 0x020
3889 #define CB_OPEN 0x040
3890 #define CB_OWNER 0x080
3891 #define CB_PROCESS 0x100
3895 struct open_token_request
3897 struct request_header __header;
3898 obj_handle_t handle;
3899 unsigned int access;
3900 unsigned int attributes;
3901 unsigned int flags;
3903 struct open_token_reply
3905 struct reply_header __header;
3906 obj_handle_t token;
3907 char __pad_12[4];
3909 #define OPEN_TOKEN_THREAD 1
3910 #define OPEN_TOKEN_AS_SELF 2
3914 struct set_global_windows_request
3916 struct request_header __header;
3917 unsigned int flags;
3918 user_handle_t shell_window;
3919 user_handle_t shell_listview;
3920 user_handle_t progman_window;
3921 user_handle_t taskman_window;
3923 struct set_global_windows_reply
3925 struct reply_header __header;
3926 user_handle_t old_shell_window;
3927 user_handle_t old_shell_listview;
3928 user_handle_t old_progman_window;
3929 user_handle_t old_taskman_window;
3931 #define SET_GLOBAL_SHELL_WINDOWS 0x01
3932 #define SET_GLOBAL_PROGMAN_WINDOW 0x02
3933 #define SET_GLOBAL_TASKMAN_WINDOW 0x04
3936 struct adjust_token_privileges_request
3938 struct request_header __header;
3939 obj_handle_t handle;
3940 int disable_all;
3941 int get_modified_state;
3942 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
3944 struct adjust_token_privileges_reply
3946 struct reply_header __header;
3947 unsigned int len;
3948 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
3949 char __pad_12[4];
3953 struct get_token_privileges_request
3955 struct request_header __header;
3956 obj_handle_t handle;
3958 struct get_token_privileges_reply
3960 struct reply_header __header;
3961 unsigned int len;
3962 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
3963 char __pad_12[4];
3967 struct check_token_privileges_request
3969 struct request_header __header;
3970 obj_handle_t handle;
3971 int all_required;
3972 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
3974 struct check_token_privileges_reply
3976 struct reply_header __header;
3977 int has_privileges;
3978 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
3979 char __pad_12[4];
3982 struct duplicate_token_request
3984 struct request_header __header;
3985 obj_handle_t handle;
3986 unsigned int access;
3987 unsigned int attributes;
3988 int primary;
3989 int impersonation_level;
3991 struct duplicate_token_reply
3993 struct reply_header __header;
3994 obj_handle_t new_handle;
3995 char __pad_12[4];
3998 struct access_check_request
4000 struct request_header __header;
4001 obj_handle_t handle;
4002 unsigned int desired_access;
4003 unsigned int mapping_read;
4004 unsigned int mapping_write;
4005 unsigned int mapping_execute;
4006 unsigned int mapping_all;
4007 /* VARARG(sd,security_descriptor); */
4009 struct access_check_reply
4011 struct reply_header __header;
4012 unsigned int access_granted;
4013 unsigned int access_status;
4014 unsigned int privileges_len;
4015 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4016 char __pad_20[4];
4019 struct get_token_user_request
4021 struct request_header __header;
4022 obj_handle_t handle;
4024 struct get_token_user_reply
4026 struct reply_header __header;
4027 data_size_t user_len;
4028 /* VARARG(user,SID); */
4029 char __pad_12[4];
4032 struct get_token_groups_request
4034 struct request_header __header;
4035 obj_handle_t handle;
4037 struct get_token_groups_reply
4039 struct reply_header __header;
4040 data_size_t user_len;
4041 /* VARARG(user,token_groups); */
4042 char __pad_12[4];
4045 struct set_security_object_request
4047 struct request_header __header;
4048 obj_handle_t handle;
4049 unsigned int security_info;
4050 /* VARARG(sd,security_descriptor); */
4051 char __pad_20[4];
4053 struct set_security_object_reply
4055 struct reply_header __header;
4058 struct get_security_object_request
4060 struct request_header __header;
4061 obj_handle_t handle;
4062 unsigned int security_info;
4064 struct get_security_object_reply
4066 struct reply_header __header;
4067 unsigned int sd_len;
4068 /* VARARG(sd,security_descriptor); */
4069 char __pad_12[4];
4073 struct create_mailslot_request
4075 struct request_header __header;
4076 unsigned int access;
4077 unsigned int attributes;
4078 obj_handle_t rootdir;
4079 timeout_t read_timeout;
4080 unsigned int max_msgsize;
4081 /* VARARG(name,unicode_str); */
4083 struct create_mailslot_reply
4085 struct reply_header __header;
4086 obj_handle_t handle;
4087 char __pad_12[4];
4092 struct set_mailslot_info_request
4094 struct request_header __header;
4095 obj_handle_t handle;
4096 timeout_t read_timeout;
4097 unsigned int flags;
4099 struct set_mailslot_info_reply
4101 struct reply_header __header;
4102 timeout_t read_timeout;
4103 unsigned int max_msgsize;
4104 char __pad_20[4];
4106 #define MAILSLOT_SET_READ_TIMEOUT 1
4110 struct create_directory_request
4112 struct request_header __header;
4113 unsigned int access;
4114 unsigned int attributes;
4115 obj_handle_t rootdir;
4116 /* VARARG(directory_name,unicode_str); */
4118 struct create_directory_reply
4120 struct reply_header __header;
4121 obj_handle_t handle;
4122 char __pad_12[4];
4127 struct open_directory_request
4129 struct request_header __header;
4130 unsigned int access;
4131 unsigned int attributes;
4132 obj_handle_t rootdir;
4133 /* VARARG(directory_name,unicode_str); */
4135 struct open_directory_reply
4137 struct reply_header __header;
4138 obj_handle_t handle;
4139 char __pad_12[4];
4144 struct get_directory_entry_request
4146 struct request_header __header;
4147 obj_handle_t handle;
4148 unsigned int index;
4150 struct get_directory_entry_reply
4152 struct reply_header __header;
4153 data_size_t name_len;
4154 /* VARARG(name,unicode_str,name_len); */
4155 /* VARARG(type,unicode_str); */
4156 char __pad_12[4];
4161 struct create_symlink_request
4163 struct request_header __header;
4164 unsigned int access;
4165 unsigned int attributes;
4166 obj_handle_t rootdir;
4167 data_size_t name_len;
4168 /* VARARG(name,unicode_str,name_len); */
4169 /* VARARG(target_name,unicode_str); */
4171 struct create_symlink_reply
4173 struct reply_header __header;
4174 obj_handle_t handle;
4175 char __pad_12[4];
4180 struct open_symlink_request
4182 struct request_header __header;
4183 unsigned int access;
4184 unsigned int attributes;
4185 obj_handle_t rootdir;
4186 /* VARARG(name,unicode_str); */
4188 struct open_symlink_reply
4190 struct reply_header __header;
4191 obj_handle_t handle;
4192 char __pad_12[4];
4197 struct query_symlink_request
4199 struct request_header __header;
4200 obj_handle_t handle;
4202 struct query_symlink_reply
4204 struct reply_header __header;
4205 /* VARARG(target_name,unicode_str); */
4210 struct get_object_info_request
4212 struct request_header __header;
4213 obj_handle_t handle;
4215 struct get_object_info_reply
4217 struct reply_header __header;
4218 unsigned int access;
4219 unsigned int ref_count;
4224 struct unlink_object_request
4226 struct request_header __header;
4227 obj_handle_t handle;
4229 struct unlink_object_reply
4231 struct reply_header __header;
4236 struct get_token_impersonation_level_request
4238 struct request_header __header;
4239 obj_handle_t handle;
4241 struct get_token_impersonation_level_reply
4243 struct reply_header __header;
4244 int impersonation_level;
4245 char __pad_12[4];
4249 struct allocate_locally_unique_id_request
4251 struct request_header __header;
4253 struct allocate_locally_unique_id_reply
4255 struct reply_header __header;
4256 luid_t luid;
4261 struct create_device_manager_request
4263 struct request_header __header;
4264 unsigned int access;
4265 unsigned int attributes;
4267 struct create_device_manager_reply
4269 struct reply_header __header;
4270 obj_handle_t handle;
4271 char __pad_12[4];
4276 struct create_device_request
4278 struct request_header __header;
4279 unsigned int access;
4280 unsigned int attributes;
4281 obj_handle_t rootdir;
4282 client_ptr_t user_ptr;
4283 obj_handle_t manager;
4284 /* VARARG(name,unicode_str); */
4286 struct create_device_reply
4288 struct reply_header __header;
4289 obj_handle_t handle;
4290 char __pad_12[4];
4295 struct delete_device_request
4297 struct request_header __header;
4298 obj_handle_t handle;
4300 struct delete_device_reply
4302 struct reply_header __header;
4307 struct get_next_device_request_request
4309 struct request_header __header;
4310 obj_handle_t manager;
4311 obj_handle_t prev;
4312 unsigned int status;
4313 /* VARARG(prev_data,bytes); */
4315 struct get_next_device_request_reply
4317 struct reply_header __header;
4318 obj_handle_t next;
4319 ioctl_code_t code;
4320 client_ptr_t user_ptr;
4321 data_size_t in_size;
4322 data_size_t out_size;
4323 /* VARARG(next_data,bytes); */
4328 struct make_process_system_request
4330 struct request_header __header;
4332 struct make_process_system_reply
4334 struct reply_header __header;
4335 obj_handle_t event;
4336 char __pad_12[4];
4341 struct get_token_statistics_request
4343 struct request_header __header;
4344 obj_handle_t handle;
4346 struct get_token_statistics_reply
4348 struct reply_header __header;
4349 luid_t token_id;
4350 luid_t modified_id;
4351 int primary;
4352 int impersonation_level;
4353 int group_count;
4354 int privilege_count;
4359 struct create_completion_request
4361 struct request_header __header;
4362 unsigned int access;
4363 unsigned int attributes;
4364 unsigned int concurrent;
4365 obj_handle_t rootdir;
4366 /* VARARG(filename,string); */
4368 struct create_completion_reply
4370 struct reply_header __header;
4371 obj_handle_t handle;
4372 char __pad_12[4];
4377 struct open_completion_request
4379 struct request_header __header;
4380 unsigned int access;
4381 unsigned int attributes;
4382 obj_handle_t rootdir;
4383 /* VARARG(filename,string); */
4385 struct open_completion_reply
4387 struct reply_header __header;
4388 obj_handle_t handle;
4389 char __pad_12[4];
4394 struct add_completion_request
4396 struct request_header __header;
4397 obj_handle_t handle;
4398 apc_param_t ckey;
4399 apc_param_t cvalue;
4400 unsigned int information;
4401 unsigned int status;
4403 struct add_completion_reply
4405 struct reply_header __header;
4410 struct remove_completion_request
4412 struct request_header __header;
4413 obj_handle_t handle;
4415 struct remove_completion_reply
4417 struct reply_header __header;
4418 apc_param_t ckey;
4419 apc_param_t cvalue;
4420 unsigned int information;
4421 unsigned int status;
4426 struct query_completion_request
4428 struct request_header __header;
4429 obj_handle_t handle;
4431 struct query_completion_reply
4433 struct reply_header __header;
4434 unsigned int depth;
4435 char __pad_12[4];
4440 struct set_completion_info_request
4442 struct request_header __header;
4443 obj_handle_t handle;
4444 apc_param_t ckey;
4445 obj_handle_t chandle;
4446 char __pad_28[4];
4448 struct set_completion_info_reply
4450 struct reply_header __header;
4455 struct add_fd_completion_request
4457 struct request_header __header;
4458 obj_handle_t handle;
4459 apc_param_t cvalue;
4460 unsigned int status;
4461 unsigned int information;
4463 struct add_fd_completion_reply
4465 struct reply_header __header;
4470 struct get_window_layered_info_request
4472 struct request_header __header;
4473 user_handle_t handle;
4475 struct get_window_layered_info_reply
4477 struct reply_header __header;
4478 unsigned int color_key;
4479 unsigned int alpha;
4480 unsigned int flags;
4481 char __pad_20[4];
4486 struct set_window_layered_info_request
4488 struct request_header __header;
4489 user_handle_t handle;
4490 unsigned int color_key;
4491 unsigned int alpha;
4492 unsigned int flags;
4493 char __pad_28[4];
4495 struct set_window_layered_info_reply
4497 struct reply_header __header;
4501 enum request
4503 REQ_new_process,
4504 REQ_get_new_process_info,
4505 REQ_new_thread,
4506 REQ_get_startup_info,
4507 REQ_init_process_done,
4508 REQ_init_thread,
4509 REQ_terminate_process,
4510 REQ_terminate_thread,
4511 REQ_get_process_info,
4512 REQ_set_process_info,
4513 REQ_get_thread_info,
4514 REQ_set_thread_info,
4515 REQ_get_dll_info,
4516 REQ_suspend_thread,
4517 REQ_resume_thread,
4518 REQ_load_dll,
4519 REQ_unload_dll,
4520 REQ_queue_apc,
4521 REQ_get_apc_result,
4522 REQ_close_handle,
4523 REQ_set_handle_info,
4524 REQ_dup_handle,
4525 REQ_open_process,
4526 REQ_open_thread,
4527 REQ_select,
4528 REQ_create_event,
4529 REQ_event_op,
4530 REQ_open_event,
4531 REQ_create_mutex,
4532 REQ_release_mutex,
4533 REQ_open_mutex,
4534 REQ_create_semaphore,
4535 REQ_release_semaphore,
4536 REQ_open_semaphore,
4537 REQ_create_file,
4538 REQ_open_file_object,
4539 REQ_alloc_file_handle,
4540 REQ_get_handle_fd,
4541 REQ_flush_file,
4542 REQ_lock_file,
4543 REQ_unlock_file,
4544 REQ_create_socket,
4545 REQ_accept_socket,
4546 REQ_set_socket_event,
4547 REQ_get_socket_event,
4548 REQ_enable_socket_event,
4549 REQ_set_socket_deferred,
4550 REQ_alloc_console,
4551 REQ_free_console,
4552 REQ_get_console_renderer_events,
4553 REQ_open_console,
4554 REQ_get_console_wait_event,
4555 REQ_get_console_mode,
4556 REQ_set_console_mode,
4557 REQ_set_console_input_info,
4558 REQ_get_console_input_info,
4559 REQ_append_console_input_history,
4560 REQ_get_console_input_history,
4561 REQ_create_console_output,
4562 REQ_set_console_output_info,
4563 REQ_get_console_output_info,
4564 REQ_write_console_input,
4565 REQ_read_console_input,
4566 REQ_write_console_output,
4567 REQ_fill_console_output,
4568 REQ_read_console_output,
4569 REQ_move_console_output,
4570 REQ_send_console_signal,
4571 REQ_read_directory_changes,
4572 REQ_read_change,
4573 REQ_create_mapping,
4574 REQ_open_mapping,
4575 REQ_get_mapping_info,
4576 REQ_get_mapping_committed_range,
4577 REQ_add_mapping_committed_range,
4578 REQ_create_snapshot,
4579 REQ_next_process,
4580 REQ_next_thread,
4581 REQ_wait_debug_event,
4582 REQ_queue_exception_event,
4583 REQ_get_exception_status,
4584 REQ_output_debug_string,
4585 REQ_continue_debug_event,
4586 REQ_debug_process,
4587 REQ_debug_break,
4588 REQ_set_debugger_kill_on_exit,
4589 REQ_read_process_memory,
4590 REQ_write_process_memory,
4591 REQ_create_key,
4592 REQ_open_key,
4593 REQ_delete_key,
4594 REQ_flush_key,
4595 REQ_enum_key,
4596 REQ_set_key_value,
4597 REQ_get_key_value,
4598 REQ_enum_key_value,
4599 REQ_delete_key_value,
4600 REQ_load_registry,
4601 REQ_unload_registry,
4602 REQ_save_registry,
4603 REQ_set_registry_notification,
4604 REQ_create_timer,
4605 REQ_open_timer,
4606 REQ_set_timer,
4607 REQ_cancel_timer,
4608 REQ_get_timer_info,
4609 REQ_get_thread_context,
4610 REQ_set_thread_context,
4611 REQ_get_selector_entry,
4612 REQ_add_atom,
4613 REQ_delete_atom,
4614 REQ_find_atom,
4615 REQ_get_atom_information,
4616 REQ_set_atom_information,
4617 REQ_empty_atom_table,
4618 REQ_init_atom_table,
4619 REQ_get_msg_queue,
4620 REQ_set_queue_fd,
4621 REQ_set_queue_mask,
4622 REQ_get_queue_status,
4623 REQ_get_process_idle_event,
4624 REQ_send_message,
4625 REQ_post_quit_message,
4626 REQ_send_hardware_message,
4627 REQ_get_message,
4628 REQ_reply_message,
4629 REQ_accept_hardware_message,
4630 REQ_get_message_reply,
4631 REQ_set_win_timer,
4632 REQ_kill_win_timer,
4633 REQ_is_window_hung,
4634 REQ_get_serial_info,
4635 REQ_set_serial_info,
4636 REQ_register_async,
4637 REQ_cancel_async,
4638 REQ_ioctl,
4639 REQ_get_ioctl_result,
4640 REQ_create_named_pipe,
4641 REQ_get_named_pipe_info,
4642 REQ_create_window,
4643 REQ_destroy_window,
4644 REQ_get_desktop_window,
4645 REQ_set_window_owner,
4646 REQ_get_window_info,
4647 REQ_set_window_info,
4648 REQ_set_parent,
4649 REQ_get_window_parents,
4650 REQ_get_window_children,
4651 REQ_get_window_children_from_point,
4652 REQ_get_window_tree,
4653 REQ_set_window_pos,
4654 REQ_get_window_rectangles,
4655 REQ_get_window_text,
4656 REQ_set_window_text,
4657 REQ_get_windows_offset,
4658 REQ_get_visible_region,
4659 REQ_get_window_region,
4660 REQ_set_window_region,
4661 REQ_get_update_region,
4662 REQ_update_window_zorder,
4663 REQ_redraw_window,
4664 REQ_set_window_property,
4665 REQ_remove_window_property,
4666 REQ_get_window_property,
4667 REQ_get_window_properties,
4668 REQ_create_winstation,
4669 REQ_open_winstation,
4670 REQ_close_winstation,
4671 REQ_get_process_winstation,
4672 REQ_set_process_winstation,
4673 REQ_enum_winstation,
4674 REQ_create_desktop,
4675 REQ_open_desktop,
4676 REQ_close_desktop,
4677 REQ_get_thread_desktop,
4678 REQ_set_thread_desktop,
4679 REQ_enum_desktop,
4680 REQ_set_user_object_info,
4681 REQ_attach_thread_input,
4682 REQ_get_thread_input,
4683 REQ_get_last_input_time,
4684 REQ_get_key_state,
4685 REQ_set_key_state,
4686 REQ_set_foreground_window,
4687 REQ_set_focus_window,
4688 REQ_set_active_window,
4689 REQ_set_capture_window,
4690 REQ_set_caret_window,
4691 REQ_set_caret_info,
4692 REQ_set_hook,
4693 REQ_remove_hook,
4694 REQ_start_hook_chain,
4695 REQ_finish_hook_chain,
4696 REQ_get_hook_info,
4697 REQ_create_class,
4698 REQ_destroy_class,
4699 REQ_set_class_info,
4700 REQ_set_clipboard_info,
4701 REQ_open_token,
4702 REQ_set_global_windows,
4703 REQ_adjust_token_privileges,
4704 REQ_get_token_privileges,
4705 REQ_check_token_privileges,
4706 REQ_duplicate_token,
4707 REQ_access_check,
4708 REQ_get_token_user,
4709 REQ_get_token_groups,
4710 REQ_set_security_object,
4711 REQ_get_security_object,
4712 REQ_create_mailslot,
4713 REQ_set_mailslot_info,
4714 REQ_create_directory,
4715 REQ_open_directory,
4716 REQ_get_directory_entry,
4717 REQ_create_symlink,
4718 REQ_open_symlink,
4719 REQ_query_symlink,
4720 REQ_get_object_info,
4721 REQ_unlink_object,
4722 REQ_get_token_impersonation_level,
4723 REQ_allocate_locally_unique_id,
4724 REQ_create_device_manager,
4725 REQ_create_device,
4726 REQ_delete_device,
4727 REQ_get_next_device_request,
4728 REQ_make_process_system,
4729 REQ_get_token_statistics,
4730 REQ_create_completion,
4731 REQ_open_completion,
4732 REQ_add_completion,
4733 REQ_remove_completion,
4734 REQ_query_completion,
4735 REQ_set_completion_info,
4736 REQ_add_fd_completion,
4737 REQ_get_window_layered_info,
4738 REQ_set_window_layered_info,
4739 REQ_NB_REQUESTS
4742 union generic_request
4744 struct request_max_size max_size;
4745 struct request_header request_header;
4746 struct new_process_request new_process_request;
4747 struct get_new_process_info_request get_new_process_info_request;
4748 struct new_thread_request new_thread_request;
4749 struct get_startup_info_request get_startup_info_request;
4750 struct init_process_done_request init_process_done_request;
4751 struct init_thread_request init_thread_request;
4752 struct terminate_process_request terminate_process_request;
4753 struct terminate_thread_request terminate_thread_request;
4754 struct get_process_info_request get_process_info_request;
4755 struct set_process_info_request set_process_info_request;
4756 struct get_thread_info_request get_thread_info_request;
4757 struct set_thread_info_request set_thread_info_request;
4758 struct get_dll_info_request get_dll_info_request;
4759 struct suspend_thread_request suspend_thread_request;
4760 struct resume_thread_request resume_thread_request;
4761 struct load_dll_request load_dll_request;
4762 struct unload_dll_request unload_dll_request;
4763 struct queue_apc_request queue_apc_request;
4764 struct get_apc_result_request get_apc_result_request;
4765 struct close_handle_request close_handle_request;
4766 struct set_handle_info_request set_handle_info_request;
4767 struct dup_handle_request dup_handle_request;
4768 struct open_process_request open_process_request;
4769 struct open_thread_request open_thread_request;
4770 struct select_request select_request;
4771 struct create_event_request create_event_request;
4772 struct event_op_request event_op_request;
4773 struct open_event_request open_event_request;
4774 struct create_mutex_request create_mutex_request;
4775 struct release_mutex_request release_mutex_request;
4776 struct open_mutex_request open_mutex_request;
4777 struct create_semaphore_request create_semaphore_request;
4778 struct release_semaphore_request release_semaphore_request;
4779 struct open_semaphore_request open_semaphore_request;
4780 struct create_file_request create_file_request;
4781 struct open_file_object_request open_file_object_request;
4782 struct alloc_file_handle_request alloc_file_handle_request;
4783 struct get_handle_fd_request get_handle_fd_request;
4784 struct flush_file_request flush_file_request;
4785 struct lock_file_request lock_file_request;
4786 struct unlock_file_request unlock_file_request;
4787 struct create_socket_request create_socket_request;
4788 struct accept_socket_request accept_socket_request;
4789 struct set_socket_event_request set_socket_event_request;
4790 struct get_socket_event_request get_socket_event_request;
4791 struct enable_socket_event_request enable_socket_event_request;
4792 struct set_socket_deferred_request set_socket_deferred_request;
4793 struct alloc_console_request alloc_console_request;
4794 struct free_console_request free_console_request;
4795 struct get_console_renderer_events_request get_console_renderer_events_request;
4796 struct open_console_request open_console_request;
4797 struct get_console_wait_event_request get_console_wait_event_request;
4798 struct get_console_mode_request get_console_mode_request;
4799 struct set_console_mode_request set_console_mode_request;
4800 struct set_console_input_info_request set_console_input_info_request;
4801 struct get_console_input_info_request get_console_input_info_request;
4802 struct append_console_input_history_request append_console_input_history_request;
4803 struct get_console_input_history_request get_console_input_history_request;
4804 struct create_console_output_request create_console_output_request;
4805 struct set_console_output_info_request set_console_output_info_request;
4806 struct get_console_output_info_request get_console_output_info_request;
4807 struct write_console_input_request write_console_input_request;
4808 struct read_console_input_request read_console_input_request;
4809 struct write_console_output_request write_console_output_request;
4810 struct fill_console_output_request fill_console_output_request;
4811 struct read_console_output_request read_console_output_request;
4812 struct move_console_output_request move_console_output_request;
4813 struct send_console_signal_request send_console_signal_request;
4814 struct read_directory_changes_request read_directory_changes_request;
4815 struct read_change_request read_change_request;
4816 struct create_mapping_request create_mapping_request;
4817 struct open_mapping_request open_mapping_request;
4818 struct get_mapping_info_request get_mapping_info_request;
4819 struct get_mapping_committed_range_request get_mapping_committed_range_request;
4820 struct add_mapping_committed_range_request add_mapping_committed_range_request;
4821 struct create_snapshot_request create_snapshot_request;
4822 struct next_process_request next_process_request;
4823 struct next_thread_request next_thread_request;
4824 struct wait_debug_event_request wait_debug_event_request;
4825 struct queue_exception_event_request queue_exception_event_request;
4826 struct get_exception_status_request get_exception_status_request;
4827 struct output_debug_string_request output_debug_string_request;
4828 struct continue_debug_event_request continue_debug_event_request;
4829 struct debug_process_request debug_process_request;
4830 struct debug_break_request debug_break_request;
4831 struct set_debugger_kill_on_exit_request set_debugger_kill_on_exit_request;
4832 struct read_process_memory_request read_process_memory_request;
4833 struct write_process_memory_request write_process_memory_request;
4834 struct create_key_request create_key_request;
4835 struct open_key_request open_key_request;
4836 struct delete_key_request delete_key_request;
4837 struct flush_key_request flush_key_request;
4838 struct enum_key_request enum_key_request;
4839 struct set_key_value_request set_key_value_request;
4840 struct get_key_value_request get_key_value_request;
4841 struct enum_key_value_request enum_key_value_request;
4842 struct delete_key_value_request delete_key_value_request;
4843 struct load_registry_request load_registry_request;
4844 struct unload_registry_request unload_registry_request;
4845 struct save_registry_request save_registry_request;
4846 struct set_registry_notification_request set_registry_notification_request;
4847 struct create_timer_request create_timer_request;
4848 struct open_timer_request open_timer_request;
4849 struct set_timer_request set_timer_request;
4850 struct cancel_timer_request cancel_timer_request;
4851 struct get_timer_info_request get_timer_info_request;
4852 struct get_thread_context_request get_thread_context_request;
4853 struct set_thread_context_request set_thread_context_request;
4854 struct get_selector_entry_request get_selector_entry_request;
4855 struct add_atom_request add_atom_request;
4856 struct delete_atom_request delete_atom_request;
4857 struct find_atom_request find_atom_request;
4858 struct get_atom_information_request get_atom_information_request;
4859 struct set_atom_information_request set_atom_information_request;
4860 struct empty_atom_table_request empty_atom_table_request;
4861 struct init_atom_table_request init_atom_table_request;
4862 struct get_msg_queue_request get_msg_queue_request;
4863 struct set_queue_fd_request set_queue_fd_request;
4864 struct set_queue_mask_request set_queue_mask_request;
4865 struct get_queue_status_request get_queue_status_request;
4866 struct get_process_idle_event_request get_process_idle_event_request;
4867 struct send_message_request send_message_request;
4868 struct post_quit_message_request post_quit_message_request;
4869 struct send_hardware_message_request send_hardware_message_request;
4870 struct get_message_request get_message_request;
4871 struct reply_message_request reply_message_request;
4872 struct accept_hardware_message_request accept_hardware_message_request;
4873 struct get_message_reply_request get_message_reply_request;
4874 struct set_win_timer_request set_win_timer_request;
4875 struct kill_win_timer_request kill_win_timer_request;
4876 struct is_window_hung_request is_window_hung_request;
4877 struct get_serial_info_request get_serial_info_request;
4878 struct set_serial_info_request set_serial_info_request;
4879 struct register_async_request register_async_request;
4880 struct cancel_async_request cancel_async_request;
4881 struct ioctl_request ioctl_request;
4882 struct get_ioctl_result_request get_ioctl_result_request;
4883 struct create_named_pipe_request create_named_pipe_request;
4884 struct get_named_pipe_info_request get_named_pipe_info_request;
4885 struct create_window_request create_window_request;
4886 struct destroy_window_request destroy_window_request;
4887 struct get_desktop_window_request get_desktop_window_request;
4888 struct set_window_owner_request set_window_owner_request;
4889 struct get_window_info_request get_window_info_request;
4890 struct set_window_info_request set_window_info_request;
4891 struct set_parent_request set_parent_request;
4892 struct get_window_parents_request get_window_parents_request;
4893 struct get_window_children_request get_window_children_request;
4894 struct get_window_children_from_point_request get_window_children_from_point_request;
4895 struct get_window_tree_request get_window_tree_request;
4896 struct set_window_pos_request set_window_pos_request;
4897 struct get_window_rectangles_request get_window_rectangles_request;
4898 struct get_window_text_request get_window_text_request;
4899 struct set_window_text_request set_window_text_request;
4900 struct get_windows_offset_request get_windows_offset_request;
4901 struct get_visible_region_request get_visible_region_request;
4902 struct get_window_region_request get_window_region_request;
4903 struct set_window_region_request set_window_region_request;
4904 struct get_update_region_request get_update_region_request;
4905 struct update_window_zorder_request update_window_zorder_request;
4906 struct redraw_window_request redraw_window_request;
4907 struct set_window_property_request set_window_property_request;
4908 struct remove_window_property_request remove_window_property_request;
4909 struct get_window_property_request get_window_property_request;
4910 struct get_window_properties_request get_window_properties_request;
4911 struct create_winstation_request create_winstation_request;
4912 struct open_winstation_request open_winstation_request;
4913 struct close_winstation_request close_winstation_request;
4914 struct get_process_winstation_request get_process_winstation_request;
4915 struct set_process_winstation_request set_process_winstation_request;
4916 struct enum_winstation_request enum_winstation_request;
4917 struct create_desktop_request create_desktop_request;
4918 struct open_desktop_request open_desktop_request;
4919 struct close_desktop_request close_desktop_request;
4920 struct get_thread_desktop_request get_thread_desktop_request;
4921 struct set_thread_desktop_request set_thread_desktop_request;
4922 struct enum_desktop_request enum_desktop_request;
4923 struct set_user_object_info_request set_user_object_info_request;
4924 struct attach_thread_input_request attach_thread_input_request;
4925 struct get_thread_input_request get_thread_input_request;
4926 struct get_last_input_time_request get_last_input_time_request;
4927 struct get_key_state_request get_key_state_request;
4928 struct set_key_state_request set_key_state_request;
4929 struct set_foreground_window_request set_foreground_window_request;
4930 struct set_focus_window_request set_focus_window_request;
4931 struct set_active_window_request set_active_window_request;
4932 struct set_capture_window_request set_capture_window_request;
4933 struct set_caret_window_request set_caret_window_request;
4934 struct set_caret_info_request set_caret_info_request;
4935 struct set_hook_request set_hook_request;
4936 struct remove_hook_request remove_hook_request;
4937 struct start_hook_chain_request start_hook_chain_request;
4938 struct finish_hook_chain_request finish_hook_chain_request;
4939 struct get_hook_info_request get_hook_info_request;
4940 struct create_class_request create_class_request;
4941 struct destroy_class_request destroy_class_request;
4942 struct set_class_info_request set_class_info_request;
4943 struct set_clipboard_info_request set_clipboard_info_request;
4944 struct open_token_request open_token_request;
4945 struct set_global_windows_request set_global_windows_request;
4946 struct adjust_token_privileges_request adjust_token_privileges_request;
4947 struct get_token_privileges_request get_token_privileges_request;
4948 struct check_token_privileges_request check_token_privileges_request;
4949 struct duplicate_token_request duplicate_token_request;
4950 struct access_check_request access_check_request;
4951 struct get_token_user_request get_token_user_request;
4952 struct get_token_groups_request get_token_groups_request;
4953 struct set_security_object_request set_security_object_request;
4954 struct get_security_object_request get_security_object_request;
4955 struct create_mailslot_request create_mailslot_request;
4956 struct set_mailslot_info_request set_mailslot_info_request;
4957 struct create_directory_request create_directory_request;
4958 struct open_directory_request open_directory_request;
4959 struct get_directory_entry_request get_directory_entry_request;
4960 struct create_symlink_request create_symlink_request;
4961 struct open_symlink_request open_symlink_request;
4962 struct query_symlink_request query_symlink_request;
4963 struct get_object_info_request get_object_info_request;
4964 struct unlink_object_request unlink_object_request;
4965 struct get_token_impersonation_level_request get_token_impersonation_level_request;
4966 struct allocate_locally_unique_id_request allocate_locally_unique_id_request;
4967 struct create_device_manager_request create_device_manager_request;
4968 struct create_device_request create_device_request;
4969 struct delete_device_request delete_device_request;
4970 struct get_next_device_request_request get_next_device_request_request;
4971 struct make_process_system_request make_process_system_request;
4972 struct get_token_statistics_request get_token_statistics_request;
4973 struct create_completion_request create_completion_request;
4974 struct open_completion_request open_completion_request;
4975 struct add_completion_request add_completion_request;
4976 struct remove_completion_request remove_completion_request;
4977 struct query_completion_request query_completion_request;
4978 struct set_completion_info_request set_completion_info_request;
4979 struct add_fd_completion_request add_fd_completion_request;
4980 struct get_window_layered_info_request get_window_layered_info_request;
4981 struct set_window_layered_info_request set_window_layered_info_request;
4983 union generic_reply
4985 struct request_max_size max_size;
4986 struct reply_header reply_header;
4987 struct new_process_reply new_process_reply;
4988 struct get_new_process_info_reply get_new_process_info_reply;
4989 struct new_thread_reply new_thread_reply;
4990 struct get_startup_info_reply get_startup_info_reply;
4991 struct init_process_done_reply init_process_done_reply;
4992 struct init_thread_reply init_thread_reply;
4993 struct terminate_process_reply terminate_process_reply;
4994 struct terminate_thread_reply terminate_thread_reply;
4995 struct get_process_info_reply get_process_info_reply;
4996 struct set_process_info_reply set_process_info_reply;
4997 struct get_thread_info_reply get_thread_info_reply;
4998 struct set_thread_info_reply set_thread_info_reply;
4999 struct get_dll_info_reply get_dll_info_reply;
5000 struct suspend_thread_reply suspend_thread_reply;
5001 struct resume_thread_reply resume_thread_reply;
5002 struct load_dll_reply load_dll_reply;
5003 struct unload_dll_reply unload_dll_reply;
5004 struct queue_apc_reply queue_apc_reply;
5005 struct get_apc_result_reply get_apc_result_reply;
5006 struct close_handle_reply close_handle_reply;
5007 struct set_handle_info_reply set_handle_info_reply;
5008 struct dup_handle_reply dup_handle_reply;
5009 struct open_process_reply open_process_reply;
5010 struct open_thread_reply open_thread_reply;
5011 struct select_reply select_reply;
5012 struct create_event_reply create_event_reply;
5013 struct event_op_reply event_op_reply;
5014 struct open_event_reply open_event_reply;
5015 struct create_mutex_reply create_mutex_reply;
5016 struct release_mutex_reply release_mutex_reply;
5017 struct open_mutex_reply open_mutex_reply;
5018 struct create_semaphore_reply create_semaphore_reply;
5019 struct release_semaphore_reply release_semaphore_reply;
5020 struct open_semaphore_reply open_semaphore_reply;
5021 struct create_file_reply create_file_reply;
5022 struct open_file_object_reply open_file_object_reply;
5023 struct alloc_file_handle_reply alloc_file_handle_reply;
5024 struct get_handle_fd_reply get_handle_fd_reply;
5025 struct flush_file_reply flush_file_reply;
5026 struct lock_file_reply lock_file_reply;
5027 struct unlock_file_reply unlock_file_reply;
5028 struct create_socket_reply create_socket_reply;
5029 struct accept_socket_reply accept_socket_reply;
5030 struct set_socket_event_reply set_socket_event_reply;
5031 struct get_socket_event_reply get_socket_event_reply;
5032 struct enable_socket_event_reply enable_socket_event_reply;
5033 struct set_socket_deferred_reply set_socket_deferred_reply;
5034 struct alloc_console_reply alloc_console_reply;
5035 struct free_console_reply free_console_reply;
5036 struct get_console_renderer_events_reply get_console_renderer_events_reply;
5037 struct open_console_reply open_console_reply;
5038 struct get_console_wait_event_reply get_console_wait_event_reply;
5039 struct get_console_mode_reply get_console_mode_reply;
5040 struct set_console_mode_reply set_console_mode_reply;
5041 struct set_console_input_info_reply set_console_input_info_reply;
5042 struct get_console_input_info_reply get_console_input_info_reply;
5043 struct append_console_input_history_reply append_console_input_history_reply;
5044 struct get_console_input_history_reply get_console_input_history_reply;
5045 struct create_console_output_reply create_console_output_reply;
5046 struct set_console_output_info_reply set_console_output_info_reply;
5047 struct get_console_output_info_reply get_console_output_info_reply;
5048 struct write_console_input_reply write_console_input_reply;
5049 struct read_console_input_reply read_console_input_reply;
5050 struct write_console_output_reply write_console_output_reply;
5051 struct fill_console_output_reply fill_console_output_reply;
5052 struct read_console_output_reply read_console_output_reply;
5053 struct move_console_output_reply move_console_output_reply;
5054 struct send_console_signal_reply send_console_signal_reply;
5055 struct read_directory_changes_reply read_directory_changes_reply;
5056 struct read_change_reply read_change_reply;
5057 struct create_mapping_reply create_mapping_reply;
5058 struct open_mapping_reply open_mapping_reply;
5059 struct get_mapping_info_reply get_mapping_info_reply;
5060 struct get_mapping_committed_range_reply get_mapping_committed_range_reply;
5061 struct add_mapping_committed_range_reply add_mapping_committed_range_reply;
5062 struct create_snapshot_reply create_snapshot_reply;
5063 struct next_process_reply next_process_reply;
5064 struct next_thread_reply next_thread_reply;
5065 struct wait_debug_event_reply wait_debug_event_reply;
5066 struct queue_exception_event_reply queue_exception_event_reply;
5067 struct get_exception_status_reply get_exception_status_reply;
5068 struct output_debug_string_reply output_debug_string_reply;
5069 struct continue_debug_event_reply continue_debug_event_reply;
5070 struct debug_process_reply debug_process_reply;
5071 struct debug_break_reply debug_break_reply;
5072 struct set_debugger_kill_on_exit_reply set_debugger_kill_on_exit_reply;
5073 struct read_process_memory_reply read_process_memory_reply;
5074 struct write_process_memory_reply write_process_memory_reply;
5075 struct create_key_reply create_key_reply;
5076 struct open_key_reply open_key_reply;
5077 struct delete_key_reply delete_key_reply;
5078 struct flush_key_reply flush_key_reply;
5079 struct enum_key_reply enum_key_reply;
5080 struct set_key_value_reply set_key_value_reply;
5081 struct get_key_value_reply get_key_value_reply;
5082 struct enum_key_value_reply enum_key_value_reply;
5083 struct delete_key_value_reply delete_key_value_reply;
5084 struct load_registry_reply load_registry_reply;
5085 struct unload_registry_reply unload_registry_reply;
5086 struct save_registry_reply save_registry_reply;
5087 struct set_registry_notification_reply set_registry_notification_reply;
5088 struct create_timer_reply create_timer_reply;
5089 struct open_timer_reply open_timer_reply;
5090 struct set_timer_reply set_timer_reply;
5091 struct cancel_timer_reply cancel_timer_reply;
5092 struct get_timer_info_reply get_timer_info_reply;
5093 struct get_thread_context_reply get_thread_context_reply;
5094 struct set_thread_context_reply set_thread_context_reply;
5095 struct get_selector_entry_reply get_selector_entry_reply;
5096 struct add_atom_reply add_atom_reply;
5097 struct delete_atom_reply delete_atom_reply;
5098 struct find_atom_reply find_atom_reply;
5099 struct get_atom_information_reply get_atom_information_reply;
5100 struct set_atom_information_reply set_atom_information_reply;
5101 struct empty_atom_table_reply empty_atom_table_reply;
5102 struct init_atom_table_reply init_atom_table_reply;
5103 struct get_msg_queue_reply get_msg_queue_reply;
5104 struct set_queue_fd_reply set_queue_fd_reply;
5105 struct set_queue_mask_reply set_queue_mask_reply;
5106 struct get_queue_status_reply get_queue_status_reply;
5107 struct get_process_idle_event_reply get_process_idle_event_reply;
5108 struct send_message_reply send_message_reply;
5109 struct post_quit_message_reply post_quit_message_reply;
5110 struct send_hardware_message_reply send_hardware_message_reply;
5111 struct get_message_reply get_message_reply;
5112 struct reply_message_reply reply_message_reply;
5113 struct accept_hardware_message_reply accept_hardware_message_reply;
5114 struct get_message_reply_reply get_message_reply_reply;
5115 struct set_win_timer_reply set_win_timer_reply;
5116 struct kill_win_timer_reply kill_win_timer_reply;
5117 struct is_window_hung_reply is_window_hung_reply;
5118 struct get_serial_info_reply get_serial_info_reply;
5119 struct set_serial_info_reply set_serial_info_reply;
5120 struct register_async_reply register_async_reply;
5121 struct cancel_async_reply cancel_async_reply;
5122 struct ioctl_reply ioctl_reply;
5123 struct get_ioctl_result_reply get_ioctl_result_reply;
5124 struct create_named_pipe_reply create_named_pipe_reply;
5125 struct get_named_pipe_info_reply get_named_pipe_info_reply;
5126 struct create_window_reply create_window_reply;
5127 struct destroy_window_reply destroy_window_reply;
5128 struct get_desktop_window_reply get_desktop_window_reply;
5129 struct set_window_owner_reply set_window_owner_reply;
5130 struct get_window_info_reply get_window_info_reply;
5131 struct set_window_info_reply set_window_info_reply;
5132 struct set_parent_reply set_parent_reply;
5133 struct get_window_parents_reply get_window_parents_reply;
5134 struct get_window_children_reply get_window_children_reply;
5135 struct get_window_children_from_point_reply get_window_children_from_point_reply;
5136 struct get_window_tree_reply get_window_tree_reply;
5137 struct set_window_pos_reply set_window_pos_reply;
5138 struct get_window_rectangles_reply get_window_rectangles_reply;
5139 struct get_window_text_reply get_window_text_reply;
5140 struct set_window_text_reply set_window_text_reply;
5141 struct get_windows_offset_reply get_windows_offset_reply;
5142 struct get_visible_region_reply get_visible_region_reply;
5143 struct get_window_region_reply get_window_region_reply;
5144 struct set_window_region_reply set_window_region_reply;
5145 struct get_update_region_reply get_update_region_reply;
5146 struct update_window_zorder_reply update_window_zorder_reply;
5147 struct redraw_window_reply redraw_window_reply;
5148 struct set_window_property_reply set_window_property_reply;
5149 struct remove_window_property_reply remove_window_property_reply;
5150 struct get_window_property_reply get_window_property_reply;
5151 struct get_window_properties_reply get_window_properties_reply;
5152 struct create_winstation_reply create_winstation_reply;
5153 struct open_winstation_reply open_winstation_reply;
5154 struct close_winstation_reply close_winstation_reply;
5155 struct get_process_winstation_reply get_process_winstation_reply;
5156 struct set_process_winstation_reply set_process_winstation_reply;
5157 struct enum_winstation_reply enum_winstation_reply;
5158 struct create_desktop_reply create_desktop_reply;
5159 struct open_desktop_reply open_desktop_reply;
5160 struct close_desktop_reply close_desktop_reply;
5161 struct get_thread_desktop_reply get_thread_desktop_reply;
5162 struct set_thread_desktop_reply set_thread_desktop_reply;
5163 struct enum_desktop_reply enum_desktop_reply;
5164 struct set_user_object_info_reply set_user_object_info_reply;
5165 struct attach_thread_input_reply attach_thread_input_reply;
5166 struct get_thread_input_reply get_thread_input_reply;
5167 struct get_last_input_time_reply get_last_input_time_reply;
5168 struct get_key_state_reply get_key_state_reply;
5169 struct set_key_state_reply set_key_state_reply;
5170 struct set_foreground_window_reply set_foreground_window_reply;
5171 struct set_focus_window_reply set_focus_window_reply;
5172 struct set_active_window_reply set_active_window_reply;
5173 struct set_capture_window_reply set_capture_window_reply;
5174 struct set_caret_window_reply set_caret_window_reply;
5175 struct set_caret_info_reply set_caret_info_reply;
5176 struct set_hook_reply set_hook_reply;
5177 struct remove_hook_reply remove_hook_reply;
5178 struct start_hook_chain_reply start_hook_chain_reply;
5179 struct finish_hook_chain_reply finish_hook_chain_reply;
5180 struct get_hook_info_reply get_hook_info_reply;
5181 struct create_class_reply create_class_reply;
5182 struct destroy_class_reply destroy_class_reply;
5183 struct set_class_info_reply set_class_info_reply;
5184 struct set_clipboard_info_reply set_clipboard_info_reply;
5185 struct open_token_reply open_token_reply;
5186 struct set_global_windows_reply set_global_windows_reply;
5187 struct adjust_token_privileges_reply adjust_token_privileges_reply;
5188 struct get_token_privileges_reply get_token_privileges_reply;
5189 struct check_token_privileges_reply check_token_privileges_reply;
5190 struct duplicate_token_reply duplicate_token_reply;
5191 struct access_check_reply access_check_reply;
5192 struct get_token_user_reply get_token_user_reply;
5193 struct get_token_groups_reply get_token_groups_reply;
5194 struct set_security_object_reply set_security_object_reply;
5195 struct get_security_object_reply get_security_object_reply;
5196 struct create_mailslot_reply create_mailslot_reply;
5197 struct set_mailslot_info_reply set_mailslot_info_reply;
5198 struct create_directory_reply create_directory_reply;
5199 struct open_directory_reply open_directory_reply;
5200 struct get_directory_entry_reply get_directory_entry_reply;
5201 struct create_symlink_reply create_symlink_reply;
5202 struct open_symlink_reply open_symlink_reply;
5203 struct query_symlink_reply query_symlink_reply;
5204 struct get_object_info_reply get_object_info_reply;
5205 struct unlink_object_reply unlink_object_reply;
5206 struct get_token_impersonation_level_reply get_token_impersonation_level_reply;
5207 struct allocate_locally_unique_id_reply allocate_locally_unique_id_reply;
5208 struct create_device_manager_reply create_device_manager_reply;
5209 struct create_device_reply create_device_reply;
5210 struct delete_device_reply delete_device_reply;
5211 struct get_next_device_request_reply get_next_device_request_reply;
5212 struct make_process_system_reply make_process_system_reply;
5213 struct get_token_statistics_reply get_token_statistics_reply;
5214 struct create_completion_reply create_completion_reply;
5215 struct open_completion_reply open_completion_reply;
5216 struct add_completion_reply add_completion_reply;
5217 struct remove_completion_reply remove_completion_reply;
5218 struct query_completion_reply query_completion_reply;
5219 struct set_completion_info_reply set_completion_info_reply;
5220 struct add_fd_completion_reply add_fd_completion_reply;
5221 struct get_window_layered_info_reply get_window_layered_info_reply;
5222 struct set_window_layered_info_reply set_window_layered_info_reply;
5225 #define SERVER_PROTOCOL_VERSION 383
5227 #endif /* __WINE_WINE_SERVER_PROTOCOL_H */