windowscodecs: Fix interlaced PNG writing.
[wine.git] / include / wine / server_protocol.h
blob57ab8398571a285d18cba9aa617df4f6f34752b0
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 } debug_event_t;
118 enum cpu_type
120 CPU_x86, CPU_x86_64, CPU_POWERPC, CPU_ARM, CPU_ARM64
122 typedef int cpu_type_t;
125 typedef struct
127 cpu_type_t cpu;
128 unsigned int flags;
129 union
131 struct { unsigned int eip, ebp, esp, eflags, cs, ss; } i386_regs;
132 struct { unsigned __int64 rip, rbp, rsp;
133 unsigned int cs, ss, flags, __pad; } x86_64_regs;
134 struct { unsigned int iar, msr, ctr, lr, dar, dsisr, trap, __pad; } powerpc_regs;
135 struct { unsigned int sp, lr, pc, cpsr; } arm_regs;
136 struct { unsigned __int64 sp, pc, pstate; } arm64_regs;
137 } ctl;
138 union
140 struct { unsigned int eax, ebx, ecx, edx, esi, edi; } i386_regs;
141 struct { unsigned __int64 rax,rbx, rcx, rdx, rsi, rdi,
142 r8, r9, r10, r11, r12, r13, r14, r15; } x86_64_regs;
143 struct { unsigned int gpr[32], cr, xer; } powerpc_regs;
144 struct { unsigned int r[13]; } arm_regs;
145 struct { unsigned __int64 x[31]; } arm64_regs;
146 } integer;
147 union
149 struct { unsigned int ds, es, fs, gs; } i386_regs;
150 struct { unsigned int ds, es, fs, gs; } x86_64_regs;
151 } seg;
152 union
154 struct { unsigned int ctrl, status, tag, err_off, err_sel, data_off, data_sel, cr0npx;
155 unsigned char regs[80]; } i386_regs;
156 struct { struct { unsigned __int64 low, high; } fpregs[32]; } x86_64_regs;
157 struct { double fpr[32], fpscr; } powerpc_regs;
158 } fp;
159 union
161 struct { unsigned int dr0, dr1, dr2, dr3, dr6, dr7; } i386_regs;
162 struct { unsigned __int64 dr0, dr1, dr2, dr3, dr6, dr7; } x86_64_regs;
163 struct { unsigned int dr[8]; } powerpc_regs;
164 } debug;
165 union
167 unsigned char i386_regs[512];
168 } ext;
169 } context_t;
171 #define SERVER_CTX_CONTROL 0x01
172 #define SERVER_CTX_INTEGER 0x02
173 #define SERVER_CTX_SEGMENTS 0x04
174 #define SERVER_CTX_FLOATING_POINT 0x08
175 #define SERVER_CTX_DEBUG_REGISTERS 0x10
176 #define SERVER_CTX_EXTENDED_REGISTERS 0x20
179 struct send_fd
181 thread_id_t tid;
182 int fd;
186 struct wake_up_reply
188 client_ptr_t cookie;
189 int signaled;
190 int __pad;
194 typedef __int64 timeout_t;
195 #define TIMEOUT_INFINITE (((timeout_t)0x7fffffff) << 32 | 0xffffffff)
198 typedef struct
200 unsigned int debug_flags;
201 unsigned int console_flags;
202 obj_handle_t console;
203 obj_handle_t hstdin;
204 obj_handle_t hstdout;
205 obj_handle_t hstderr;
206 unsigned int x;
207 unsigned int y;
208 unsigned int xsize;
209 unsigned int ysize;
210 unsigned int xchars;
211 unsigned int ychars;
212 unsigned int attribute;
213 unsigned int flags;
214 unsigned int show;
215 data_size_t curdir_len;
216 data_size_t dllpath_len;
217 data_size_t imagepath_len;
218 data_size_t cmdline_len;
219 data_size_t title_len;
220 data_size_t desktop_len;
221 data_size_t shellinfo_len;
222 data_size_t runtime_len;
231 } startup_info_t;
234 typedef struct
236 atom_t atom;
237 int string;
238 lparam_t data;
239 } property_data_t;
242 typedef struct
244 int left;
245 int top;
246 int right;
247 int bottom;
248 } rectangle_t;
251 typedef struct
253 obj_handle_t handle;
254 obj_handle_t event;
255 client_ptr_t callback;
256 client_ptr_t iosb;
257 client_ptr_t arg;
258 apc_param_t cvalue;
259 } async_data_t;
263 struct hardware_msg_data
265 lparam_t info;
266 int x;
267 int y;
268 unsigned int hw_id;
269 unsigned int flags;
270 union
272 int type;
273 struct
275 int type;
276 unsigned int message;
277 unsigned short vkey;
278 unsigned short scan;
279 } kbd;
280 struct
282 int type;
283 int x;
284 int y;
285 unsigned int data;
286 } mouse;
287 } rawinput;
290 struct callback_msg_data
292 client_ptr_t callback;
293 lparam_t data;
294 lparam_t result;
297 struct winevent_msg_data
299 user_handle_t hook;
300 thread_id_t tid;
301 client_ptr_t hook_proc;
305 typedef union
307 int type;
308 struct
310 int type;
311 unsigned short vkey;
312 unsigned short scan;
313 unsigned int flags;
314 unsigned int time;
315 lparam_t info;
316 } kbd;
317 struct
319 int type;
320 int x;
321 int y;
322 unsigned int data;
323 unsigned int flags;
324 unsigned int time;
325 lparam_t info;
326 } mouse;
327 struct
329 int type;
330 unsigned int msg;
331 lparam_t lparam;
332 } hw;
333 } hw_input_t;
335 typedef union
337 unsigned char bytes[1];
338 struct hardware_msg_data hardware;
339 struct callback_msg_data callback;
340 struct winevent_msg_data winevent;
341 } message_data_t;
344 typedef struct
346 WCHAR ch;
347 unsigned short attr;
348 } char_info_t;
351 struct filesystem_event
353 int action;
354 data_size_t len;
355 char name[1];
358 typedef struct
360 unsigned int low_part;
361 int high_part;
362 } luid_t;
364 #define MAX_ACL_LEN 65535
366 struct security_descriptor
368 unsigned int control;
369 data_size_t owner_len;
370 data_size_t group_len;
371 data_size_t sacl_len;
372 data_size_t dacl_len;
379 struct object_attributes
381 obj_handle_t rootdir;
382 data_size_t sd_len;
383 data_size_t name_len;
388 struct token_groups
390 unsigned int count;
395 enum select_op
397 SELECT_NONE,
398 SELECT_WAIT,
399 SELECT_WAIT_ALL,
400 SELECT_SIGNAL_AND_WAIT,
401 SELECT_KEYED_EVENT_WAIT,
402 SELECT_KEYED_EVENT_RELEASE
405 typedef union
407 enum select_op op;
408 struct
410 enum select_op op;
411 obj_handle_t handles[MAXIMUM_WAIT_OBJECTS];
412 } wait;
413 struct
415 enum select_op op;
416 obj_handle_t wait;
417 obj_handle_t signal;
418 } signal_and_wait;
419 struct
421 enum select_op op;
422 obj_handle_t handle;
423 client_ptr_t key;
424 } keyed_event;
425 } select_op_t;
427 enum apc_type
429 APC_NONE,
430 APC_USER,
431 APC_TIMER,
432 APC_ASYNC_IO,
433 APC_VIRTUAL_ALLOC,
434 APC_VIRTUAL_FREE,
435 APC_VIRTUAL_QUERY,
436 APC_VIRTUAL_PROTECT,
437 APC_VIRTUAL_FLUSH,
438 APC_VIRTUAL_LOCK,
439 APC_VIRTUAL_UNLOCK,
440 APC_MAP_VIEW,
441 APC_UNMAP_VIEW,
442 APC_CREATE_THREAD
445 typedef union
447 enum apc_type type;
448 struct
450 enum apc_type type;
451 int __pad;
452 client_ptr_t func;
453 apc_param_t args[3];
454 } user;
455 struct
457 enum apc_type type;
458 int __pad;
459 client_ptr_t func;
460 timeout_t time;
461 client_ptr_t arg;
462 } timer;
463 struct
465 enum apc_type type;
466 unsigned int status;
467 client_ptr_t func;
468 client_ptr_t user;
469 client_ptr_t sb;
470 } async_io;
471 struct
473 enum apc_type type;
474 unsigned int op_type;
475 client_ptr_t addr;
476 mem_size_t size;
477 unsigned int zero_bits;
478 unsigned int prot;
479 } virtual_alloc;
480 struct
482 enum apc_type type;
483 unsigned int op_type;
484 client_ptr_t addr;
485 mem_size_t size;
486 } virtual_free;
487 struct
489 enum apc_type type;
490 int __pad;
491 client_ptr_t addr;
492 } virtual_query;
493 struct
495 enum apc_type type;
496 unsigned int prot;
497 client_ptr_t addr;
498 mem_size_t size;
499 } virtual_protect;
500 struct
502 enum apc_type type;
503 int __pad;
504 client_ptr_t addr;
505 mem_size_t size;
506 } virtual_flush;
507 struct
509 enum apc_type type;
510 int __pad;
511 client_ptr_t addr;
512 mem_size_t size;
513 } virtual_lock;
514 struct
516 enum apc_type type;
517 int __pad;
518 client_ptr_t addr;
519 mem_size_t size;
520 } virtual_unlock;
521 struct
523 enum apc_type type;
524 obj_handle_t handle;
525 client_ptr_t addr;
526 mem_size_t size;
527 file_pos_t offset;
528 unsigned int alloc_type;
529 unsigned short zero_bits;
530 unsigned short prot;
531 } map_view;
532 struct
534 enum apc_type type;
535 int __pad;
536 client_ptr_t addr;
537 } unmap_view;
538 struct
540 enum apc_type type;
541 int suspend;
542 client_ptr_t func;
543 client_ptr_t arg;
544 mem_size_t reserve;
545 mem_size_t commit;
546 } create_thread;
547 } apc_call_t;
549 typedef union
551 enum apc_type type;
552 struct
554 enum apc_type type;
555 unsigned int status;
556 client_ptr_t apc;
557 unsigned int total;
558 } async_io;
559 struct
561 enum apc_type type;
562 unsigned int status;
563 client_ptr_t addr;
564 mem_size_t size;
565 } virtual_alloc;
566 struct
568 enum apc_type type;
569 unsigned int status;
570 client_ptr_t addr;
571 mem_size_t size;
572 } virtual_free;
573 struct
575 enum apc_type type;
576 unsigned int status;
577 client_ptr_t base;
578 client_ptr_t alloc_base;
579 mem_size_t size;
580 unsigned short state;
581 unsigned short prot;
582 unsigned short alloc_prot;
583 unsigned short alloc_type;
584 } virtual_query;
585 struct
587 enum apc_type type;
588 unsigned int status;
589 client_ptr_t addr;
590 mem_size_t size;
591 unsigned int prot;
592 } virtual_protect;
593 struct
595 enum apc_type type;
596 unsigned int status;
597 client_ptr_t addr;
598 mem_size_t size;
599 } virtual_flush;
600 struct
602 enum apc_type type;
603 unsigned int status;
604 client_ptr_t addr;
605 mem_size_t size;
606 } virtual_lock;
607 struct
609 enum apc_type type;
610 unsigned int status;
611 client_ptr_t addr;
612 mem_size_t size;
613 } virtual_unlock;
614 struct
616 enum apc_type type;
617 unsigned int status;
618 client_ptr_t addr;
619 mem_size_t size;
620 } map_view;
621 struct
623 enum apc_type type;
624 unsigned int status;
625 } unmap_view;
626 struct
628 enum apc_type type;
629 unsigned int status;
630 thread_id_t tid;
631 obj_handle_t handle;
632 } create_thread;
633 } apc_result_t;
635 struct rawinput_device
637 unsigned short usage_page;
638 unsigned short usage;
639 unsigned int flags;
640 user_handle_t target;
647 struct new_process_request
649 struct request_header __header;
650 int inherit_all;
651 unsigned int create_flags;
652 int socket_fd;
653 obj_handle_t exe_file;
654 unsigned int process_access;
655 unsigned int process_attr;
656 unsigned int thread_access;
657 unsigned int thread_attr;
658 cpu_type_t cpu;
659 data_size_t info_size;
660 /* VARARG(info,startup_info,info_size); */
661 /* VARARG(env,unicode_str); */
662 char __pad_52[4];
664 struct new_process_reply
666 struct reply_header __header;
667 obj_handle_t info;
668 process_id_t pid;
669 obj_handle_t phandle;
670 thread_id_t tid;
671 obj_handle_t thandle;
672 char __pad_28[4];
677 struct get_new_process_info_request
679 struct request_header __header;
680 obj_handle_t info;
682 struct get_new_process_info_reply
684 struct reply_header __header;
685 int success;
686 int exit_code;
691 struct new_thread_request
693 struct request_header __header;
694 unsigned int access;
695 unsigned int attributes;
696 int suspend;
697 int request_fd;
698 char __pad_28[4];
700 struct new_thread_reply
702 struct reply_header __header;
703 thread_id_t tid;
704 obj_handle_t handle;
709 struct get_startup_info_request
711 struct request_header __header;
712 char __pad_12[4];
714 struct get_startup_info_reply
716 struct reply_header __header;
717 obj_handle_t exe_file;
718 data_size_t info_size;
719 /* VARARG(info,startup_info,info_size); */
720 /* VARARG(env,unicode_str); */
725 struct init_process_done_request
727 struct request_header __header;
728 int gui;
729 mod_handle_t module;
730 client_ptr_t ldt_copy;
731 client_ptr_t entry;
733 struct init_process_done_reply
735 struct reply_header __header;
740 struct init_thread_request
742 struct request_header __header;
743 int unix_pid;
744 int unix_tid;
745 int debug_level;
746 client_ptr_t teb;
747 client_ptr_t entry;
748 int reply_fd;
749 int wait_fd;
750 cpu_type_t cpu;
751 char __pad_52[4];
753 struct init_thread_reply
755 struct reply_header __header;
756 process_id_t pid;
757 thread_id_t tid;
758 timeout_t server_start;
759 data_size_t info_size;
760 int version;
761 unsigned int all_cpus;
762 char __pad_36[4];
767 struct terminate_process_request
769 struct request_header __header;
770 obj_handle_t handle;
771 int exit_code;
772 char __pad_20[4];
774 struct terminate_process_reply
776 struct reply_header __header;
777 int self;
778 char __pad_12[4];
783 struct terminate_thread_request
785 struct request_header __header;
786 obj_handle_t handle;
787 int exit_code;
788 char __pad_20[4];
790 struct terminate_thread_reply
792 struct reply_header __header;
793 int self;
794 int last;
799 struct get_process_info_request
801 struct request_header __header;
802 obj_handle_t handle;
804 struct get_process_info_reply
806 struct reply_header __header;
807 process_id_t pid;
808 process_id_t ppid;
809 affinity_t affinity;
810 client_ptr_t peb;
811 timeout_t start_time;
812 timeout_t end_time;
813 int exit_code;
814 int priority;
815 cpu_type_t cpu;
816 int debugger_present;
821 struct set_process_info_request
823 struct request_header __header;
824 obj_handle_t handle;
825 int mask;
826 int priority;
827 affinity_t affinity;
829 struct set_process_info_reply
831 struct reply_header __header;
833 #define SET_PROCESS_INFO_PRIORITY 0x01
834 #define SET_PROCESS_INFO_AFFINITY 0x02
838 struct get_thread_info_request
840 struct request_header __header;
841 obj_handle_t handle;
842 thread_id_t tid_in;
843 char __pad_20[4];
845 struct get_thread_info_reply
847 struct reply_header __header;
848 process_id_t pid;
849 thread_id_t tid;
850 client_ptr_t teb;
851 affinity_t affinity;
852 timeout_t creation_time;
853 timeout_t exit_time;
854 int exit_code;
855 int priority;
856 int last;
857 char __pad_60[4];
862 struct set_thread_info_request
864 struct request_header __header;
865 obj_handle_t handle;
866 int mask;
867 int priority;
868 affinity_t affinity;
869 obj_handle_t token;
870 char __pad_36[4];
872 struct set_thread_info_reply
874 struct reply_header __header;
876 #define SET_THREAD_INFO_PRIORITY 0x01
877 #define SET_THREAD_INFO_AFFINITY 0x02
878 #define SET_THREAD_INFO_TOKEN 0x04
882 struct get_dll_info_request
884 struct request_header __header;
885 obj_handle_t handle;
886 mod_handle_t base_address;
888 struct get_dll_info_reply
890 struct reply_header __header;
891 client_ptr_t entry_point;
892 data_size_t size;
893 data_size_t filename_len;
894 /* VARARG(filename,unicode_str); */
899 struct suspend_thread_request
901 struct request_header __header;
902 obj_handle_t handle;
904 struct suspend_thread_reply
906 struct reply_header __header;
907 int count;
908 char __pad_12[4];
913 struct resume_thread_request
915 struct request_header __header;
916 obj_handle_t handle;
918 struct resume_thread_reply
920 struct reply_header __header;
921 int count;
922 char __pad_12[4];
927 struct load_dll_request
929 struct request_header __header;
930 obj_handle_t mapping;
931 mod_handle_t base;
932 client_ptr_t name;
933 data_size_t size;
934 int dbg_offset;
935 int dbg_size;
936 /* VARARG(filename,unicode_str); */
937 char __pad_44[4];
939 struct load_dll_reply
941 struct reply_header __header;
946 struct unload_dll_request
948 struct request_header __header;
949 char __pad_12[4];
950 mod_handle_t base;
952 struct unload_dll_reply
954 struct reply_header __header;
959 struct queue_apc_request
961 struct request_header __header;
962 obj_handle_t handle;
963 apc_call_t call;
965 struct queue_apc_reply
967 struct reply_header __header;
968 obj_handle_t handle;
969 int self;
974 struct get_apc_result_request
976 struct request_header __header;
977 obj_handle_t handle;
979 struct get_apc_result_reply
981 struct reply_header __header;
982 apc_result_t result;
987 struct close_handle_request
989 struct request_header __header;
990 obj_handle_t handle;
992 struct close_handle_reply
994 struct reply_header __header;
999 struct set_handle_info_request
1001 struct request_header __header;
1002 obj_handle_t handle;
1003 int flags;
1004 int mask;
1006 struct set_handle_info_reply
1008 struct reply_header __header;
1009 int old_flags;
1010 char __pad_12[4];
1015 struct dup_handle_request
1017 struct request_header __header;
1018 obj_handle_t src_process;
1019 obj_handle_t src_handle;
1020 obj_handle_t dst_process;
1021 unsigned int access;
1022 unsigned int attributes;
1023 unsigned int options;
1024 char __pad_36[4];
1026 struct dup_handle_reply
1028 struct reply_header __header;
1029 obj_handle_t handle;
1030 int self;
1031 int closed;
1032 char __pad_20[4];
1034 #define DUP_HANDLE_CLOSE_SOURCE DUPLICATE_CLOSE_SOURCE
1035 #define DUP_HANDLE_SAME_ACCESS DUPLICATE_SAME_ACCESS
1036 #define DUP_HANDLE_MAKE_GLOBAL 0x80000000
1040 struct open_process_request
1042 struct request_header __header;
1043 process_id_t pid;
1044 unsigned int access;
1045 unsigned int attributes;
1047 struct open_process_reply
1049 struct reply_header __header;
1050 obj_handle_t handle;
1051 char __pad_12[4];
1056 struct open_thread_request
1058 struct request_header __header;
1059 thread_id_t tid;
1060 unsigned int access;
1061 unsigned int attributes;
1063 struct open_thread_reply
1065 struct reply_header __header;
1066 obj_handle_t handle;
1067 char __pad_12[4];
1072 struct select_request
1074 struct request_header __header;
1075 int flags;
1076 client_ptr_t cookie;
1077 timeout_t timeout;
1078 obj_handle_t prev_apc;
1079 /* VARARG(result,apc_result); */
1080 /* VARARG(data,select_op); */
1081 char __pad_36[4];
1083 struct select_reply
1085 struct reply_header __header;
1086 timeout_t timeout;
1087 apc_call_t call;
1088 obj_handle_t apc_handle;
1089 char __pad_60[4];
1091 #define SELECT_ALERTABLE 1
1092 #define SELECT_INTERRUPTIBLE 2
1096 struct create_event_request
1098 struct request_header __header;
1099 unsigned int access;
1100 unsigned int attributes;
1101 int manual_reset;
1102 int initial_state;
1103 /* VARARG(objattr,object_attributes); */
1104 char __pad_28[4];
1106 struct create_event_reply
1108 struct reply_header __header;
1109 obj_handle_t handle;
1110 char __pad_12[4];
1114 struct event_op_request
1116 struct request_header __header;
1117 obj_handle_t handle;
1118 int op;
1119 char __pad_20[4];
1121 struct event_op_reply
1123 struct reply_header __header;
1125 enum event_op { PULSE_EVENT, SET_EVENT, RESET_EVENT };
1127 struct query_event_request
1129 struct request_header __header;
1130 obj_handle_t handle;
1132 struct query_event_reply
1134 struct reply_header __header;
1135 int manual_reset;
1136 int state;
1140 struct open_event_request
1142 struct request_header __header;
1143 unsigned int access;
1144 unsigned int attributes;
1145 obj_handle_t rootdir;
1146 /* VARARG(name,unicode_str); */
1148 struct open_event_reply
1150 struct reply_header __header;
1151 obj_handle_t handle;
1152 char __pad_12[4];
1157 struct create_keyed_event_request
1159 struct request_header __header;
1160 unsigned int access;
1161 unsigned int attributes;
1162 /* VARARG(objattr,object_attributes); */
1163 char __pad_20[4];
1165 struct create_keyed_event_reply
1167 struct reply_header __header;
1168 obj_handle_t handle;
1169 char __pad_12[4];
1173 struct open_keyed_event_request
1175 struct request_header __header;
1176 unsigned int access;
1177 unsigned int attributes;
1178 obj_handle_t rootdir;
1179 /* VARARG(name,unicode_str); */
1181 struct open_keyed_event_reply
1183 struct reply_header __header;
1184 obj_handle_t handle;
1185 char __pad_12[4];
1190 struct create_mutex_request
1192 struct request_header __header;
1193 unsigned int access;
1194 unsigned int attributes;
1195 int owned;
1196 /* VARARG(objattr,object_attributes); */
1198 struct create_mutex_reply
1200 struct reply_header __header;
1201 obj_handle_t handle;
1202 char __pad_12[4];
1207 struct release_mutex_request
1209 struct request_header __header;
1210 obj_handle_t handle;
1212 struct release_mutex_reply
1214 struct reply_header __header;
1215 unsigned int prev_count;
1216 char __pad_12[4];
1221 struct open_mutex_request
1223 struct request_header __header;
1224 unsigned int access;
1225 unsigned int attributes;
1226 obj_handle_t rootdir;
1227 /* VARARG(name,unicode_str); */
1229 struct open_mutex_reply
1231 struct reply_header __header;
1232 obj_handle_t handle;
1233 char __pad_12[4];
1238 struct create_semaphore_request
1240 struct request_header __header;
1241 unsigned int access;
1242 unsigned int attributes;
1243 unsigned int initial;
1244 unsigned int max;
1245 /* VARARG(objattr,object_attributes); */
1246 char __pad_28[4];
1248 struct create_semaphore_reply
1250 struct reply_header __header;
1251 obj_handle_t handle;
1252 char __pad_12[4];
1257 struct release_semaphore_request
1259 struct request_header __header;
1260 obj_handle_t handle;
1261 unsigned int count;
1262 char __pad_20[4];
1264 struct release_semaphore_reply
1266 struct reply_header __header;
1267 unsigned int prev_count;
1268 char __pad_12[4];
1271 struct query_semaphore_request
1273 struct request_header __header;
1274 obj_handle_t handle;
1276 struct query_semaphore_reply
1278 struct reply_header __header;
1279 unsigned int current;
1280 unsigned int max;
1284 struct open_semaphore_request
1286 struct request_header __header;
1287 unsigned int access;
1288 unsigned int attributes;
1289 obj_handle_t rootdir;
1290 /* VARARG(name,unicode_str); */
1292 struct open_semaphore_reply
1294 struct reply_header __header;
1295 obj_handle_t handle;
1296 char __pad_12[4];
1301 struct create_file_request
1303 struct request_header __header;
1304 unsigned int access;
1305 unsigned int attributes;
1306 unsigned int sharing;
1307 int create;
1308 unsigned int options;
1309 unsigned int attrs;
1310 /* VARARG(objattr,object_attributes); */
1311 /* VARARG(filename,string); */
1312 char __pad_36[4];
1314 struct create_file_reply
1316 struct reply_header __header;
1317 obj_handle_t handle;
1318 char __pad_12[4];
1323 struct open_file_object_request
1325 struct request_header __header;
1326 unsigned int access;
1327 unsigned int attributes;
1328 obj_handle_t rootdir;
1329 unsigned int sharing;
1330 unsigned int options;
1331 /* VARARG(filename,unicode_str); */
1333 struct open_file_object_reply
1335 struct reply_header __header;
1336 obj_handle_t handle;
1337 char __pad_12[4];
1342 struct alloc_file_handle_request
1344 struct request_header __header;
1345 unsigned int access;
1346 unsigned int attributes;
1347 int fd;
1349 struct alloc_file_handle_reply
1351 struct reply_header __header;
1352 obj_handle_t handle;
1353 char __pad_12[4];
1358 struct get_handle_unix_name_request
1360 struct request_header __header;
1361 obj_handle_t handle;
1363 struct get_handle_unix_name_reply
1365 struct reply_header __header;
1366 data_size_t name_len;
1367 /* VARARG(name,string); */
1368 char __pad_12[4];
1373 struct get_handle_fd_request
1375 struct request_header __header;
1376 obj_handle_t handle;
1378 struct get_handle_fd_reply
1380 struct reply_header __header;
1381 int type;
1382 int cacheable;
1383 unsigned int access;
1384 unsigned int options;
1386 enum server_fd_type
1388 FD_TYPE_INVALID,
1389 FD_TYPE_FILE,
1390 FD_TYPE_DIR,
1391 FD_TYPE_SOCKET,
1392 FD_TYPE_SERIAL,
1393 FD_TYPE_PIPE,
1394 FD_TYPE_MAILSLOT,
1395 FD_TYPE_CHAR,
1396 FD_TYPE_DEVICE,
1397 FD_TYPE_NB_TYPES
1402 struct flush_file_request
1404 struct request_header __header;
1405 obj_handle_t handle;
1407 struct flush_file_reply
1409 struct reply_header __header;
1410 obj_handle_t event;
1411 char __pad_12[4];
1416 struct lock_file_request
1418 struct request_header __header;
1419 obj_handle_t handle;
1420 file_pos_t offset;
1421 file_pos_t count;
1422 int shared;
1423 int wait;
1425 struct lock_file_reply
1427 struct reply_header __header;
1428 obj_handle_t handle;
1429 int overlapped;
1434 struct unlock_file_request
1436 struct request_header __header;
1437 obj_handle_t handle;
1438 file_pos_t offset;
1439 file_pos_t count;
1441 struct unlock_file_reply
1443 struct reply_header __header;
1448 struct create_socket_request
1450 struct request_header __header;
1451 unsigned int access;
1452 unsigned int attributes;
1453 int family;
1454 int type;
1455 int protocol;
1456 unsigned int flags;
1457 char __pad_36[4];
1459 struct create_socket_reply
1461 struct reply_header __header;
1462 obj_handle_t handle;
1463 char __pad_12[4];
1468 struct accept_socket_request
1470 struct request_header __header;
1471 obj_handle_t lhandle;
1472 unsigned int access;
1473 unsigned int attributes;
1475 struct accept_socket_reply
1477 struct reply_header __header;
1478 obj_handle_t handle;
1479 char __pad_12[4];
1484 struct accept_into_socket_request
1486 struct request_header __header;
1487 obj_handle_t lhandle;
1488 obj_handle_t ahandle;
1489 char __pad_20[4];
1491 struct accept_into_socket_reply
1493 struct reply_header __header;
1498 struct set_socket_event_request
1500 struct request_header __header;
1501 obj_handle_t handle;
1502 unsigned int mask;
1503 obj_handle_t event;
1504 user_handle_t window;
1505 unsigned int msg;
1507 struct set_socket_event_reply
1509 struct reply_header __header;
1514 struct get_socket_event_request
1516 struct request_header __header;
1517 obj_handle_t handle;
1518 int service;
1519 obj_handle_t c_event;
1521 struct get_socket_event_reply
1523 struct reply_header __header;
1524 unsigned int mask;
1525 unsigned int pmask;
1526 unsigned int state;
1527 /* VARARG(errors,ints); */
1528 char __pad_20[4];
1533 struct get_socket_info_request
1535 struct request_header __header;
1536 obj_handle_t handle;
1538 struct get_socket_info_reply
1540 struct reply_header __header;
1541 int family;
1542 int type;
1543 int protocol;
1544 char __pad_20[4];
1549 struct enable_socket_event_request
1551 struct request_header __header;
1552 obj_handle_t handle;
1553 unsigned int mask;
1554 unsigned int sstate;
1555 unsigned int cstate;
1556 char __pad_28[4];
1558 struct enable_socket_event_reply
1560 struct reply_header __header;
1563 struct set_socket_deferred_request
1565 struct request_header __header;
1566 obj_handle_t handle;
1567 obj_handle_t deferred;
1568 char __pad_20[4];
1570 struct set_socket_deferred_reply
1572 struct reply_header __header;
1576 struct alloc_console_request
1578 struct request_header __header;
1579 unsigned int access;
1580 unsigned int attributes;
1581 process_id_t pid;
1582 int input_fd;
1583 char __pad_28[4];
1585 struct alloc_console_reply
1587 struct reply_header __header;
1588 obj_handle_t handle_in;
1589 obj_handle_t event;
1594 struct free_console_request
1596 struct request_header __header;
1597 char __pad_12[4];
1599 struct free_console_reply
1601 struct reply_header __header;
1605 #define CONSOLE_RENDERER_NONE_EVENT 0x00
1606 #define CONSOLE_RENDERER_TITLE_EVENT 0x01
1607 #define CONSOLE_RENDERER_ACTIVE_SB_EVENT 0x02
1608 #define CONSOLE_RENDERER_SB_RESIZE_EVENT 0x03
1609 #define CONSOLE_RENDERER_UPDATE_EVENT 0x04
1610 #define CONSOLE_RENDERER_CURSOR_POS_EVENT 0x05
1611 #define CONSOLE_RENDERER_CURSOR_GEOM_EVENT 0x06
1612 #define CONSOLE_RENDERER_DISPLAY_EVENT 0x07
1613 #define CONSOLE_RENDERER_EXIT_EVENT 0x08
1614 struct console_renderer_event
1616 short event;
1617 union
1619 struct update
1621 short top;
1622 short bottom;
1623 } update;
1624 struct resize
1626 short width;
1627 short height;
1628 } resize;
1629 struct cursor_pos
1631 short x;
1632 short y;
1633 } cursor_pos;
1634 struct cursor_geom
1636 short visible;
1637 short size;
1638 } cursor_geom;
1639 struct display
1641 short left;
1642 short top;
1643 short width;
1644 short height;
1645 } display;
1646 } u;
1650 struct get_console_renderer_events_request
1652 struct request_header __header;
1653 obj_handle_t handle;
1655 struct get_console_renderer_events_reply
1657 struct reply_header __header;
1658 /* VARARG(data,bytes); */
1663 struct open_console_request
1665 struct request_header __header;
1666 obj_handle_t from;
1668 unsigned int access;
1669 unsigned int attributes;
1670 int share;
1671 char __pad_28[4];
1673 struct open_console_reply
1675 struct reply_header __header;
1676 obj_handle_t handle;
1677 char __pad_12[4];
1682 struct get_console_wait_event_request
1684 struct request_header __header;
1685 char __pad_12[4];
1687 struct get_console_wait_event_reply
1689 struct reply_header __header;
1690 obj_handle_t handle;
1691 char __pad_12[4];
1695 struct get_console_mode_request
1697 struct request_header __header;
1698 obj_handle_t handle;
1700 struct get_console_mode_reply
1702 struct reply_header __header;
1703 int mode;
1704 char __pad_12[4];
1709 struct set_console_mode_request
1711 struct request_header __header;
1712 obj_handle_t handle;
1713 int mode;
1714 char __pad_20[4];
1716 struct set_console_mode_reply
1718 struct reply_header __header;
1723 struct set_console_input_info_request
1725 struct request_header __header;
1726 obj_handle_t handle;
1727 int mask;
1728 obj_handle_t active_sb;
1729 int history_mode;
1730 int history_size;
1731 int edition_mode;
1732 int input_cp;
1733 int output_cp;
1734 user_handle_t win;
1735 /* VARARG(title,unicode_str); */
1737 struct set_console_input_info_reply
1739 struct reply_header __header;
1741 #define SET_CONSOLE_INPUT_INFO_ACTIVE_SB 0x01
1742 #define SET_CONSOLE_INPUT_INFO_TITLE 0x02
1743 #define SET_CONSOLE_INPUT_INFO_HISTORY_MODE 0x04
1744 #define SET_CONSOLE_INPUT_INFO_HISTORY_SIZE 0x08
1745 #define SET_CONSOLE_INPUT_INFO_EDITION_MODE 0x10
1746 #define SET_CONSOLE_INPUT_INFO_INPUT_CODEPAGE 0x20
1747 #define SET_CONSOLE_INPUT_INFO_OUTPUT_CODEPAGE 0x40
1748 #define SET_CONSOLE_INPUT_INFO_WIN 0x80
1752 struct get_console_input_info_request
1754 struct request_header __header;
1755 obj_handle_t handle;
1757 struct get_console_input_info_reply
1759 struct reply_header __header;
1760 int history_mode;
1761 int history_size;
1762 int history_index;
1763 int edition_mode;
1764 int input_cp;
1765 int output_cp;
1766 user_handle_t win;
1767 /* VARARG(title,unicode_str); */
1768 char __pad_36[4];
1773 struct append_console_input_history_request
1775 struct request_header __header;
1776 obj_handle_t handle;
1777 /* VARARG(line,unicode_str); */
1779 struct append_console_input_history_reply
1781 struct reply_header __header;
1786 struct get_console_input_history_request
1788 struct request_header __header;
1789 obj_handle_t handle;
1790 int index;
1791 char __pad_20[4];
1793 struct get_console_input_history_reply
1795 struct reply_header __header;
1796 int total;
1797 /* VARARG(line,unicode_str); */
1798 char __pad_12[4];
1803 struct create_console_output_request
1805 struct request_header __header;
1806 obj_handle_t handle_in;
1807 unsigned int access;
1808 unsigned int attributes;
1809 unsigned int share;
1810 int fd;
1812 struct create_console_output_reply
1814 struct reply_header __header;
1815 obj_handle_t handle_out;
1816 char __pad_12[4];
1821 struct set_console_output_info_request
1823 struct request_header __header;
1824 obj_handle_t handle;
1825 int mask;
1826 short int cursor_size;
1827 short int cursor_visible;
1828 short int cursor_x;
1829 short int cursor_y;
1830 short int width;
1831 short int height;
1832 short int attr;
1833 short int win_left;
1834 short int win_top;
1835 short int win_right;
1836 short int win_bottom;
1837 short int max_width;
1838 short int max_height;
1839 char __pad_46[2];
1841 struct set_console_output_info_reply
1843 struct reply_header __header;
1845 #define SET_CONSOLE_OUTPUT_INFO_CURSOR_GEOM 0x01
1846 #define SET_CONSOLE_OUTPUT_INFO_CURSOR_POS 0x02
1847 #define SET_CONSOLE_OUTPUT_INFO_SIZE 0x04
1848 #define SET_CONSOLE_OUTPUT_INFO_ATTR 0x08
1849 #define SET_CONSOLE_OUTPUT_INFO_DISPLAY_WINDOW 0x10
1850 #define SET_CONSOLE_OUTPUT_INFO_MAX_SIZE 0x20
1854 struct get_console_output_info_request
1856 struct request_header __header;
1857 obj_handle_t handle;
1859 struct get_console_output_info_reply
1861 struct reply_header __header;
1862 short int cursor_size;
1863 short int cursor_visible;
1864 short int cursor_x;
1865 short int cursor_y;
1866 short int width;
1867 short int height;
1868 short int attr;
1869 short int win_left;
1870 short int win_top;
1871 short int win_right;
1872 short int win_bottom;
1873 short int max_width;
1874 short int max_height;
1875 char __pad_34[6];
1879 struct write_console_input_request
1881 struct request_header __header;
1882 obj_handle_t handle;
1883 /* VARARG(rec,input_records); */
1885 struct write_console_input_reply
1887 struct reply_header __header;
1888 int written;
1889 char __pad_12[4];
1894 struct read_console_input_request
1896 struct request_header __header;
1897 obj_handle_t handle;
1898 int flush;
1899 char __pad_20[4];
1901 struct read_console_input_reply
1903 struct reply_header __header;
1904 int read;
1905 /* VARARG(rec,input_records); */
1906 char __pad_12[4];
1911 struct write_console_output_request
1913 struct request_header __header;
1914 obj_handle_t handle;
1915 int x;
1916 int y;
1917 int mode;
1918 int wrap;
1919 /* VARARG(data,bytes); */
1921 struct write_console_output_reply
1923 struct reply_header __header;
1924 int written;
1925 int width;
1926 int height;
1927 char __pad_20[4];
1929 enum char_info_mode
1931 CHAR_INFO_MODE_TEXT,
1932 CHAR_INFO_MODE_ATTR,
1933 CHAR_INFO_MODE_TEXTATTR,
1934 CHAR_INFO_MODE_TEXTSTDATTR
1939 struct fill_console_output_request
1941 struct request_header __header;
1942 obj_handle_t handle;
1943 int x;
1944 int y;
1945 int mode;
1946 int count;
1947 int wrap;
1948 char_info_t data;
1950 struct fill_console_output_reply
1952 struct reply_header __header;
1953 int written;
1954 char __pad_12[4];
1959 struct read_console_output_request
1961 struct request_header __header;
1962 obj_handle_t handle;
1963 int x;
1964 int y;
1965 int mode;
1966 int wrap;
1968 struct read_console_output_reply
1970 struct reply_header __header;
1971 int width;
1972 int height;
1973 /* VARARG(data,bytes); */
1978 struct move_console_output_request
1980 struct request_header __header;
1981 obj_handle_t handle;
1982 short int x_src;
1983 short int y_src;
1984 short int x_dst;
1985 short int y_dst;
1986 short int w;
1987 short int h;
1988 char __pad_28[4];
1990 struct move_console_output_reply
1992 struct reply_header __header;
1997 struct send_console_signal_request
1999 struct request_header __header;
2000 int signal;
2001 process_id_t group_id;
2002 char __pad_20[4];
2004 struct send_console_signal_reply
2006 struct reply_header __header;
2011 struct read_directory_changes_request
2013 struct request_header __header;
2014 unsigned int filter;
2015 int subtree;
2016 int want_data;
2017 async_data_t async;
2019 struct read_directory_changes_reply
2021 struct reply_header __header;
2025 struct read_change_request
2027 struct request_header __header;
2028 obj_handle_t handle;
2030 struct read_change_reply
2032 struct reply_header __header;
2033 /* VARARG(events,filesystem_event); */
2038 struct create_mapping_request
2040 struct request_header __header;
2041 unsigned int access;
2042 unsigned int attributes;
2043 unsigned int protect;
2044 mem_size_t size;
2045 obj_handle_t file_handle;
2046 /* VARARG(objattr,object_attributes); */
2047 char __pad_36[4];
2049 struct create_mapping_reply
2051 struct reply_header __header;
2052 obj_handle_t handle;
2053 char __pad_12[4];
2056 #define VPROT_READ 0x01
2057 #define VPROT_WRITE 0x02
2058 #define VPROT_EXEC 0x04
2059 #define VPROT_WRITECOPY 0x08
2060 #define VPROT_GUARD 0x10
2061 #define VPROT_NOCACHE 0x20
2062 #define VPROT_COMMITTED 0x40
2063 #define VPROT_WRITEWATCH 0x80
2065 #define VPROT_IMAGE 0x0100
2066 #define VPROT_SYSTEM 0x0200
2067 #define VPROT_VALLOC 0x0400
2068 #define VPROT_NOEXEC 0x0800
2072 struct open_mapping_request
2074 struct request_header __header;
2075 unsigned int access;
2076 unsigned int attributes;
2077 obj_handle_t rootdir;
2078 /* VARARG(name,unicode_str); */
2080 struct open_mapping_reply
2082 struct reply_header __header;
2083 obj_handle_t handle;
2084 char __pad_12[4];
2089 struct get_mapping_info_request
2091 struct request_header __header;
2092 obj_handle_t handle;
2093 unsigned int access;
2094 char __pad_20[4];
2096 struct get_mapping_info_reply
2098 struct reply_header __header;
2099 mem_size_t size;
2100 int protect;
2101 int header_size;
2102 client_ptr_t base;
2103 obj_handle_t mapping;
2104 obj_handle_t shared_file;
2109 struct get_mapping_committed_range_request
2111 struct request_header __header;
2112 obj_handle_t handle;
2113 file_pos_t offset;
2115 struct get_mapping_committed_range_reply
2117 struct reply_header __header;
2118 mem_size_t size;
2119 int committed;
2120 char __pad_20[4];
2125 struct add_mapping_committed_range_request
2127 struct request_header __header;
2128 obj_handle_t handle;
2129 file_pos_t offset;
2130 mem_size_t size;
2132 struct add_mapping_committed_range_reply
2134 struct reply_header __header;
2138 #define SNAP_PROCESS 0x00000001
2139 #define SNAP_THREAD 0x00000002
2141 struct create_snapshot_request
2143 struct request_header __header;
2144 unsigned int attributes;
2145 unsigned int flags;
2146 char __pad_20[4];
2148 struct create_snapshot_reply
2150 struct reply_header __header;
2151 obj_handle_t handle;
2152 char __pad_12[4];
2157 struct next_process_request
2159 struct request_header __header;
2160 obj_handle_t handle;
2161 int reset;
2162 char __pad_20[4];
2164 struct next_process_reply
2166 struct reply_header __header;
2167 int count;
2168 process_id_t pid;
2169 process_id_t ppid;
2170 int threads;
2171 int priority;
2172 int handles;
2173 int unix_pid;
2174 /* VARARG(filename,unicode_str); */
2175 char __pad_36[4];
2180 struct next_thread_request
2182 struct request_header __header;
2183 obj_handle_t handle;
2184 int reset;
2185 char __pad_20[4];
2187 struct next_thread_reply
2189 struct reply_header __header;
2190 int count;
2191 process_id_t pid;
2192 thread_id_t tid;
2193 int base_pri;
2194 int delta_pri;
2195 char __pad_28[4];
2200 struct wait_debug_event_request
2202 struct request_header __header;
2203 int get_handle;
2205 struct wait_debug_event_reply
2207 struct reply_header __header;
2208 process_id_t pid;
2209 thread_id_t tid;
2210 obj_handle_t wait;
2211 /* VARARG(event,debug_event); */
2212 char __pad_20[4];
2217 struct queue_exception_event_request
2219 struct request_header __header;
2220 int first;
2221 unsigned int code;
2222 unsigned int flags;
2223 client_ptr_t record;
2224 client_ptr_t address;
2225 data_size_t len;
2226 /* VARARG(params,uints64,len); */
2227 /* VARARG(context,context); */
2228 char __pad_44[4];
2230 struct queue_exception_event_reply
2232 struct reply_header __header;
2233 obj_handle_t handle;
2234 char __pad_12[4];
2239 struct get_exception_status_request
2241 struct request_header __header;
2242 obj_handle_t handle;
2244 struct get_exception_status_reply
2246 struct reply_header __header;
2247 /* VARARG(context,context); */
2252 struct continue_debug_event_request
2254 struct request_header __header;
2255 process_id_t pid;
2256 thread_id_t tid;
2257 int status;
2259 struct continue_debug_event_reply
2261 struct reply_header __header;
2266 struct debug_process_request
2268 struct request_header __header;
2269 process_id_t pid;
2270 int attach;
2271 char __pad_20[4];
2273 struct debug_process_reply
2275 struct reply_header __header;
2280 struct debug_break_request
2282 struct request_header __header;
2283 obj_handle_t handle;
2285 struct debug_break_reply
2287 struct reply_header __header;
2288 int self;
2289 char __pad_12[4];
2294 struct set_debugger_kill_on_exit_request
2296 struct request_header __header;
2297 int kill_on_exit;
2299 struct set_debugger_kill_on_exit_reply
2301 struct reply_header __header;
2306 struct read_process_memory_request
2308 struct request_header __header;
2309 obj_handle_t handle;
2310 client_ptr_t addr;
2312 struct read_process_memory_reply
2314 struct reply_header __header;
2315 /* VARARG(data,bytes); */
2320 struct write_process_memory_request
2322 struct request_header __header;
2323 obj_handle_t handle;
2324 client_ptr_t addr;
2325 /* VARARG(data,bytes); */
2327 struct write_process_memory_reply
2329 struct reply_header __header;
2334 struct create_key_request
2336 struct request_header __header;
2337 obj_handle_t parent;
2338 unsigned int access;
2339 unsigned int attributes;
2340 unsigned int options;
2341 data_size_t namelen;
2342 /* VARARG(name,unicode_str,namelen); */
2343 /* VARARG(class,unicode_str); */
2345 struct create_key_reply
2347 struct reply_header __header;
2348 obj_handle_t hkey;
2349 int created;
2353 struct open_key_request
2355 struct request_header __header;
2356 obj_handle_t parent;
2357 unsigned int access;
2358 unsigned int attributes;
2359 /* VARARG(name,unicode_str); */
2361 struct open_key_reply
2363 struct reply_header __header;
2364 obj_handle_t hkey;
2365 char __pad_12[4];
2370 struct delete_key_request
2372 struct request_header __header;
2373 obj_handle_t hkey;
2375 struct delete_key_reply
2377 struct reply_header __header;
2382 struct flush_key_request
2384 struct request_header __header;
2385 obj_handle_t hkey;
2387 struct flush_key_reply
2389 struct reply_header __header;
2394 struct enum_key_request
2396 struct request_header __header;
2397 obj_handle_t hkey;
2398 int index;
2399 int info_class;
2401 struct enum_key_reply
2403 struct reply_header __header;
2404 int subkeys;
2405 int max_subkey;
2406 int max_class;
2407 int values;
2408 int max_value;
2409 int max_data;
2410 timeout_t modif;
2411 data_size_t total;
2412 data_size_t namelen;
2413 /* VARARG(name,unicode_str,namelen); */
2414 /* VARARG(class,unicode_str); */
2419 struct set_key_value_request
2421 struct request_header __header;
2422 obj_handle_t hkey;
2423 int type;
2424 data_size_t namelen;
2425 /* VARARG(name,unicode_str,namelen); */
2426 /* VARARG(data,bytes); */
2428 struct set_key_value_reply
2430 struct reply_header __header;
2435 struct get_key_value_request
2437 struct request_header __header;
2438 obj_handle_t hkey;
2439 /* VARARG(name,unicode_str); */
2441 struct get_key_value_reply
2443 struct reply_header __header;
2444 int type;
2445 data_size_t total;
2446 /* VARARG(data,bytes); */
2451 struct enum_key_value_request
2453 struct request_header __header;
2454 obj_handle_t hkey;
2455 int index;
2456 int info_class;
2458 struct enum_key_value_reply
2460 struct reply_header __header;
2461 int type;
2462 data_size_t total;
2463 data_size_t namelen;
2464 /* VARARG(name,unicode_str,namelen); */
2465 /* VARARG(data,bytes); */
2466 char __pad_20[4];
2471 struct delete_key_value_request
2473 struct request_header __header;
2474 obj_handle_t hkey;
2475 /* VARARG(name,unicode_str); */
2477 struct delete_key_value_reply
2479 struct reply_header __header;
2484 struct load_registry_request
2486 struct request_header __header;
2487 obj_handle_t hkey;
2488 obj_handle_t file;
2489 /* VARARG(name,unicode_str); */
2490 char __pad_20[4];
2492 struct load_registry_reply
2494 struct reply_header __header;
2499 struct unload_registry_request
2501 struct request_header __header;
2502 obj_handle_t hkey;
2504 struct unload_registry_reply
2506 struct reply_header __header;
2511 struct save_registry_request
2513 struct request_header __header;
2514 obj_handle_t hkey;
2515 obj_handle_t file;
2516 char __pad_20[4];
2518 struct save_registry_reply
2520 struct reply_header __header;
2525 struct set_registry_notification_request
2527 struct request_header __header;
2528 obj_handle_t hkey;
2529 obj_handle_t event;
2530 int subtree;
2531 unsigned int filter;
2532 char __pad_28[4];
2534 struct set_registry_notification_reply
2536 struct reply_header __header;
2541 struct create_timer_request
2543 struct request_header __header;
2544 unsigned int access;
2545 unsigned int attributes;
2546 obj_handle_t rootdir;
2547 int manual;
2548 /* VARARG(name,unicode_str); */
2549 char __pad_28[4];
2551 struct create_timer_reply
2553 struct reply_header __header;
2554 obj_handle_t handle;
2555 char __pad_12[4];
2560 struct open_timer_request
2562 struct request_header __header;
2563 unsigned int access;
2564 unsigned int attributes;
2565 obj_handle_t rootdir;
2566 /* VARARG(name,unicode_str); */
2568 struct open_timer_reply
2570 struct reply_header __header;
2571 obj_handle_t handle;
2572 char __pad_12[4];
2576 struct set_timer_request
2578 struct request_header __header;
2579 obj_handle_t handle;
2580 timeout_t expire;
2581 client_ptr_t callback;
2582 client_ptr_t arg;
2583 int period;
2584 char __pad_44[4];
2586 struct set_timer_reply
2588 struct reply_header __header;
2589 int signaled;
2590 char __pad_12[4];
2594 struct cancel_timer_request
2596 struct request_header __header;
2597 obj_handle_t handle;
2599 struct cancel_timer_reply
2601 struct reply_header __header;
2602 int signaled;
2603 char __pad_12[4];
2607 struct get_timer_info_request
2609 struct request_header __header;
2610 obj_handle_t handle;
2612 struct get_timer_info_reply
2614 struct reply_header __header;
2615 timeout_t when;
2616 int signaled;
2617 char __pad_20[4];
2622 struct get_thread_context_request
2624 struct request_header __header;
2625 obj_handle_t handle;
2626 unsigned int flags;
2627 int suspend;
2629 struct get_thread_context_reply
2631 struct reply_header __header;
2632 int self;
2633 /* VARARG(context,context); */
2634 char __pad_12[4];
2639 struct set_thread_context_request
2641 struct request_header __header;
2642 obj_handle_t handle;
2643 int suspend;
2644 /* VARARG(context,context); */
2645 char __pad_20[4];
2647 struct set_thread_context_reply
2649 struct reply_header __header;
2650 int self;
2651 char __pad_12[4];
2656 struct get_selector_entry_request
2658 struct request_header __header;
2659 obj_handle_t handle;
2660 int entry;
2661 char __pad_20[4];
2663 struct get_selector_entry_reply
2665 struct reply_header __header;
2666 unsigned int base;
2667 unsigned int limit;
2668 unsigned char flags;
2669 char __pad_17[7];
2674 struct add_atom_request
2676 struct request_header __header;
2677 obj_handle_t table;
2678 /* VARARG(name,unicode_str); */
2680 struct add_atom_reply
2682 struct reply_header __header;
2683 atom_t atom;
2684 char __pad_12[4];
2689 struct delete_atom_request
2691 struct request_header __header;
2692 obj_handle_t table;
2693 atom_t atom;
2694 char __pad_20[4];
2696 struct delete_atom_reply
2698 struct reply_header __header;
2703 struct find_atom_request
2705 struct request_header __header;
2706 obj_handle_t table;
2707 /* VARARG(name,unicode_str); */
2709 struct find_atom_reply
2711 struct reply_header __header;
2712 atom_t atom;
2713 char __pad_12[4];
2718 struct get_atom_information_request
2720 struct request_header __header;
2721 obj_handle_t table;
2722 atom_t atom;
2723 char __pad_20[4];
2725 struct get_atom_information_reply
2727 struct reply_header __header;
2728 int count;
2729 int pinned;
2730 data_size_t total;
2731 /* VARARG(name,unicode_str); */
2732 char __pad_20[4];
2737 struct set_atom_information_request
2739 struct request_header __header;
2740 obj_handle_t table;
2741 atom_t atom;
2742 int pinned;
2744 struct set_atom_information_reply
2746 struct reply_header __header;
2751 struct empty_atom_table_request
2753 struct request_header __header;
2754 obj_handle_t table;
2755 int if_pinned;
2756 char __pad_20[4];
2758 struct empty_atom_table_reply
2760 struct reply_header __header;
2765 struct init_atom_table_request
2767 struct request_header __header;
2768 int entries;
2770 struct init_atom_table_reply
2772 struct reply_header __header;
2773 obj_handle_t table;
2774 char __pad_12[4];
2779 struct get_msg_queue_request
2781 struct request_header __header;
2782 char __pad_12[4];
2784 struct get_msg_queue_reply
2786 struct reply_header __header;
2787 obj_handle_t handle;
2788 char __pad_12[4];
2793 struct set_queue_fd_request
2795 struct request_header __header;
2796 obj_handle_t handle;
2798 struct set_queue_fd_reply
2800 struct reply_header __header;
2805 struct set_queue_mask_request
2807 struct request_header __header;
2808 unsigned int wake_mask;
2809 unsigned int changed_mask;
2810 int skip_wait;
2812 struct set_queue_mask_reply
2814 struct reply_header __header;
2815 unsigned int wake_bits;
2816 unsigned int changed_bits;
2821 struct get_queue_status_request
2823 struct request_header __header;
2824 int clear;
2826 struct get_queue_status_reply
2828 struct reply_header __header;
2829 unsigned int wake_bits;
2830 unsigned int changed_bits;
2835 struct get_process_idle_event_request
2837 struct request_header __header;
2838 obj_handle_t handle;
2840 struct get_process_idle_event_reply
2842 struct reply_header __header;
2843 obj_handle_t event;
2844 char __pad_12[4];
2849 struct send_message_request
2851 struct request_header __header;
2852 thread_id_t id;
2853 int type;
2854 int flags;
2855 user_handle_t win;
2856 unsigned int msg;
2857 lparam_t wparam;
2858 lparam_t lparam;
2859 timeout_t timeout;
2860 /* VARARG(data,message_data); */
2862 struct send_message_reply
2864 struct reply_header __header;
2867 struct post_quit_message_request
2869 struct request_header __header;
2870 int exit_code;
2872 struct post_quit_message_reply
2874 struct reply_header __header;
2877 enum message_type
2879 MSG_ASCII,
2880 MSG_UNICODE,
2881 MSG_NOTIFY,
2882 MSG_CALLBACK,
2883 MSG_CALLBACK_RESULT,
2884 MSG_OTHER_PROCESS,
2885 MSG_POSTED,
2886 MSG_HARDWARE,
2887 MSG_WINEVENT,
2888 MSG_HOOK_LL
2890 #define SEND_MSG_ABORT_IF_HUNG 0x01
2894 struct send_hardware_message_request
2896 struct request_header __header;
2897 user_handle_t win;
2898 hw_input_t input;
2899 unsigned int flags;
2900 char __pad_52[4];
2902 struct send_hardware_message_reply
2904 struct reply_header __header;
2905 int wait;
2906 int prev_x;
2907 int prev_y;
2908 int new_x;
2909 int new_y;
2910 /* VARARG(keystate,bytes); */
2911 char __pad_28[4];
2913 #define SEND_HWMSG_INJECTED 0x01
2917 struct get_message_request
2919 struct request_header __header;
2920 unsigned int flags;
2921 user_handle_t get_win;
2922 unsigned int get_first;
2923 unsigned int get_last;
2924 unsigned int hw_id;
2925 unsigned int wake_mask;
2926 unsigned int changed_mask;
2928 struct get_message_reply
2930 struct reply_header __header;
2931 user_handle_t win;
2932 unsigned int msg;
2933 lparam_t wparam;
2934 lparam_t lparam;
2935 int type;
2936 unsigned int time;
2937 unsigned int active_hooks;
2938 data_size_t total;
2939 /* VARARG(data,message_data); */
2944 struct reply_message_request
2946 struct request_header __header;
2947 int remove;
2948 lparam_t result;
2949 /* VARARG(data,bytes); */
2951 struct reply_message_reply
2953 struct reply_header __header;
2958 struct accept_hardware_message_request
2960 struct request_header __header;
2961 unsigned int hw_id;
2962 int remove;
2963 user_handle_t new_win;
2965 struct accept_hardware_message_reply
2967 struct reply_header __header;
2972 struct get_message_reply_request
2974 struct request_header __header;
2975 int cancel;
2977 struct get_message_reply_reply
2979 struct reply_header __header;
2980 lparam_t result;
2981 /* VARARG(data,bytes); */
2986 struct set_win_timer_request
2988 struct request_header __header;
2989 user_handle_t win;
2990 unsigned int msg;
2991 unsigned int rate;
2992 lparam_t id;
2993 lparam_t lparam;
2995 struct set_win_timer_reply
2997 struct reply_header __header;
2998 lparam_t id;
3003 struct kill_win_timer_request
3005 struct request_header __header;
3006 user_handle_t win;
3007 lparam_t id;
3008 unsigned int msg;
3009 char __pad_28[4];
3011 struct kill_win_timer_reply
3013 struct reply_header __header;
3018 struct is_window_hung_request
3020 struct request_header __header;
3021 user_handle_t win;
3023 struct is_window_hung_reply
3025 struct reply_header __header;
3026 int is_hung;
3027 char __pad_12[4];
3032 struct get_serial_info_request
3034 struct request_header __header;
3035 obj_handle_t handle;
3036 int flags;
3037 char __pad_20[4];
3039 struct get_serial_info_reply
3041 struct reply_header __header;
3042 unsigned int readinterval;
3043 unsigned int readconst;
3044 unsigned int readmult;
3045 unsigned int writeconst;
3046 unsigned int writemult;
3047 unsigned int eventmask;
3048 unsigned int cookie;
3049 unsigned int pending_write;
3054 struct set_serial_info_request
3056 struct request_header __header;
3057 obj_handle_t handle;
3058 int flags;
3059 unsigned int readinterval;
3060 unsigned int readconst;
3061 unsigned int readmult;
3062 unsigned int writeconst;
3063 unsigned int writemult;
3064 unsigned int eventmask;
3065 char __pad_44[4];
3067 struct set_serial_info_reply
3069 struct reply_header __header;
3071 #define SERIALINFO_SET_TIMEOUTS 0x01
3072 #define SERIALINFO_SET_MASK 0x02
3073 #define SERIALINFO_PENDING_WRITE 0x04
3074 #define SERIALINFO_PENDING_WAIT 0x08
3078 struct register_async_request
3080 struct request_header __header;
3081 int type;
3082 async_data_t async;
3083 int count;
3084 char __pad_60[4];
3086 struct register_async_reply
3088 struct reply_header __header;
3090 #define ASYNC_TYPE_READ 0x01
3091 #define ASYNC_TYPE_WRITE 0x02
3092 #define ASYNC_TYPE_WAIT 0x03
3096 struct cancel_async_request
3098 struct request_header __header;
3099 obj_handle_t handle;
3100 client_ptr_t iosb;
3101 int only_thread;
3102 char __pad_28[4];
3104 struct cancel_async_reply
3106 struct reply_header __header;
3111 struct ioctl_request
3113 struct request_header __header;
3114 ioctl_code_t code;
3115 async_data_t async;
3116 int blocking;
3117 /* VARARG(in_data,bytes); */
3118 char __pad_60[4];
3120 struct ioctl_reply
3122 struct reply_header __header;
3123 obj_handle_t wait;
3124 unsigned int options;
3125 /* VARARG(out_data,bytes); */
3130 struct get_ioctl_result_request
3132 struct request_header __header;
3133 obj_handle_t handle;
3134 client_ptr_t user_arg;
3136 struct get_ioctl_result_reply
3138 struct reply_header __header;
3139 /* VARARG(out_data,bytes); */
3144 struct create_named_pipe_request
3146 struct request_header __header;
3147 unsigned int access;
3148 unsigned int attributes;
3149 obj_handle_t rootdir;
3150 unsigned int options;
3151 unsigned int sharing;
3152 unsigned int maxinstances;
3153 unsigned int outsize;
3154 unsigned int insize;
3155 char __pad_44[4];
3156 timeout_t timeout;
3157 unsigned int flags;
3158 /* VARARG(name,unicode_str); */
3159 char __pad_60[4];
3161 struct create_named_pipe_reply
3163 struct reply_header __header;
3164 obj_handle_t handle;
3165 char __pad_12[4];
3169 #define NAMED_PIPE_MESSAGE_STREAM_WRITE 0x0001
3170 #define NAMED_PIPE_MESSAGE_STREAM_READ 0x0002
3171 #define NAMED_PIPE_NONBLOCKING_MODE 0x0004
3172 #define NAMED_PIPE_SERVER_END 0x8000
3175 struct get_named_pipe_info_request
3177 struct request_header __header;
3178 obj_handle_t handle;
3180 struct get_named_pipe_info_reply
3182 struct reply_header __header;
3183 unsigned int flags;
3184 unsigned int sharing;
3185 unsigned int maxinstances;
3186 unsigned int instances;
3187 unsigned int outsize;
3188 unsigned int insize;
3193 struct create_window_request
3195 struct request_header __header;
3196 user_handle_t parent;
3197 user_handle_t owner;
3198 atom_t atom;
3199 mod_handle_t instance;
3200 /* VARARG(class,unicode_str); */
3202 struct create_window_reply
3204 struct reply_header __header;
3205 user_handle_t handle;
3206 user_handle_t parent;
3207 user_handle_t owner;
3208 int extra;
3209 client_ptr_t class_ptr;
3214 struct destroy_window_request
3216 struct request_header __header;
3217 user_handle_t handle;
3219 struct destroy_window_reply
3221 struct reply_header __header;
3226 struct get_desktop_window_request
3228 struct request_header __header;
3229 int force;
3231 struct get_desktop_window_reply
3233 struct reply_header __header;
3234 user_handle_t top_window;
3235 user_handle_t msg_window;
3240 struct set_window_owner_request
3242 struct request_header __header;
3243 user_handle_t handle;
3244 user_handle_t owner;
3245 char __pad_20[4];
3247 struct set_window_owner_reply
3249 struct reply_header __header;
3250 user_handle_t full_owner;
3251 user_handle_t prev_owner;
3256 struct get_window_info_request
3258 struct request_header __header;
3259 user_handle_t handle;
3261 struct get_window_info_reply
3263 struct reply_header __header;
3264 user_handle_t full_handle;
3265 user_handle_t last_active;
3266 process_id_t pid;
3267 thread_id_t tid;
3268 atom_t atom;
3269 int is_unicode;
3274 struct set_window_info_request
3276 struct request_header __header;
3277 unsigned short flags;
3278 short int is_unicode;
3279 user_handle_t handle;
3280 unsigned int style;
3281 unsigned int ex_style;
3282 unsigned int id;
3283 mod_handle_t instance;
3284 lparam_t user_data;
3285 int extra_offset;
3286 data_size_t extra_size;
3287 lparam_t extra_value;
3289 struct set_window_info_reply
3291 struct reply_header __header;
3292 unsigned int old_style;
3293 unsigned int old_ex_style;
3294 mod_handle_t old_instance;
3295 lparam_t old_user_data;
3296 lparam_t old_extra_value;
3297 unsigned int old_id;
3298 char __pad_44[4];
3300 #define SET_WIN_STYLE 0x01
3301 #define SET_WIN_EXSTYLE 0x02
3302 #define SET_WIN_ID 0x04
3303 #define SET_WIN_INSTANCE 0x08
3304 #define SET_WIN_USERDATA 0x10
3305 #define SET_WIN_EXTRA 0x20
3306 #define SET_WIN_UNICODE 0x40
3310 struct set_parent_request
3312 struct request_header __header;
3313 user_handle_t handle;
3314 user_handle_t parent;
3315 char __pad_20[4];
3317 struct set_parent_reply
3319 struct reply_header __header;
3320 user_handle_t old_parent;
3321 user_handle_t full_parent;
3326 struct get_window_parents_request
3328 struct request_header __header;
3329 user_handle_t handle;
3331 struct get_window_parents_reply
3333 struct reply_header __header;
3334 int count;
3335 /* VARARG(parents,user_handles); */
3336 char __pad_12[4];
3341 struct get_window_children_request
3343 struct request_header __header;
3344 obj_handle_t desktop;
3345 user_handle_t parent;
3346 atom_t atom;
3347 thread_id_t tid;
3348 /* VARARG(class,unicode_str); */
3349 char __pad_28[4];
3351 struct get_window_children_reply
3353 struct reply_header __header;
3354 int count;
3355 /* VARARG(children,user_handles); */
3356 char __pad_12[4];
3361 struct get_window_children_from_point_request
3363 struct request_header __header;
3364 user_handle_t parent;
3365 int x;
3366 int y;
3368 struct get_window_children_from_point_reply
3370 struct reply_header __header;
3371 int count;
3372 /* VARARG(children,user_handles); */
3373 char __pad_12[4];
3378 struct get_window_tree_request
3380 struct request_header __header;
3381 user_handle_t handle;
3383 struct get_window_tree_reply
3385 struct reply_header __header;
3386 user_handle_t parent;
3387 user_handle_t owner;
3388 user_handle_t next_sibling;
3389 user_handle_t prev_sibling;
3390 user_handle_t first_sibling;
3391 user_handle_t last_sibling;
3392 user_handle_t first_child;
3393 user_handle_t last_child;
3397 struct set_window_pos_request
3399 struct request_header __header;
3400 unsigned short swp_flags;
3401 unsigned short paint_flags;
3402 user_handle_t handle;
3403 user_handle_t previous;
3404 rectangle_t window;
3405 rectangle_t client;
3406 /* VARARG(valid,rectangles); */
3408 struct set_window_pos_reply
3410 struct reply_header __header;
3411 unsigned int new_style;
3412 unsigned int new_ex_style;
3413 user_handle_t surface_win;
3414 char __pad_20[4];
3416 #define SET_WINPOS_PAINT_SURFACE 0x01
3417 #define SET_WINPOS_PIXEL_FORMAT 0x02
3420 struct get_window_rectangles_request
3422 struct request_header __header;
3423 user_handle_t handle;
3424 int relative;
3425 char __pad_20[4];
3427 struct get_window_rectangles_reply
3429 struct reply_header __header;
3430 rectangle_t window;
3431 rectangle_t visible;
3432 rectangle_t client;
3434 enum coords_relative
3436 COORDS_CLIENT,
3437 COORDS_WINDOW,
3438 COORDS_PARENT,
3439 COORDS_SCREEN
3444 struct get_window_text_request
3446 struct request_header __header;
3447 user_handle_t handle;
3449 struct get_window_text_reply
3451 struct reply_header __header;
3452 /* VARARG(text,unicode_str); */
3457 struct set_window_text_request
3459 struct request_header __header;
3460 user_handle_t handle;
3461 /* VARARG(text,unicode_str); */
3463 struct set_window_text_reply
3465 struct reply_header __header;
3470 struct get_windows_offset_request
3472 struct request_header __header;
3473 user_handle_t from;
3474 user_handle_t to;
3475 char __pad_20[4];
3477 struct get_windows_offset_reply
3479 struct reply_header __header;
3480 int x;
3481 int y;
3482 int mirror;
3483 char __pad_20[4];
3488 struct get_visible_region_request
3490 struct request_header __header;
3491 user_handle_t window;
3492 unsigned int flags;
3493 char __pad_20[4];
3495 struct get_visible_region_reply
3497 struct reply_header __header;
3498 user_handle_t top_win;
3499 rectangle_t top_rect;
3500 rectangle_t win_rect;
3501 unsigned int paint_flags;
3502 data_size_t total_size;
3503 /* VARARG(region,rectangles); */
3504 char __pad_52[4];
3509 struct get_surface_region_request
3511 struct request_header __header;
3512 user_handle_t window;
3514 struct get_surface_region_reply
3516 struct reply_header __header;
3517 rectangle_t visible_rect;
3518 data_size_t total_size;
3519 /* VARARG(region,rectangles); */
3520 char __pad_28[4];
3525 struct get_window_region_request
3527 struct request_header __header;
3528 user_handle_t window;
3530 struct get_window_region_reply
3532 struct reply_header __header;
3533 data_size_t total_size;
3534 /* VARARG(region,rectangles); */
3535 char __pad_12[4];
3540 struct set_window_region_request
3542 struct request_header __header;
3543 user_handle_t window;
3544 int redraw;
3545 /* VARARG(region,rectangles); */
3546 char __pad_20[4];
3548 struct set_window_region_reply
3550 struct reply_header __header;
3555 struct get_update_region_request
3557 struct request_header __header;
3558 user_handle_t window;
3559 user_handle_t from_child;
3560 unsigned int flags;
3562 struct get_update_region_reply
3564 struct reply_header __header;
3565 user_handle_t child;
3566 unsigned int flags;
3567 data_size_t total_size;
3568 /* VARARG(region,rectangles); */
3569 char __pad_20[4];
3571 #define UPDATE_NONCLIENT 0x01
3572 #define UPDATE_ERASE 0x02
3573 #define UPDATE_PAINT 0x04
3574 #define UPDATE_INTERNALPAINT 0x08
3575 #define UPDATE_ALLCHILDREN 0x10
3576 #define UPDATE_NOCHILDREN 0x20
3577 #define UPDATE_NOREGION 0x40
3578 #define UPDATE_DELAYED_ERASE 0x80
3582 struct update_window_zorder_request
3584 struct request_header __header;
3585 user_handle_t window;
3586 rectangle_t rect;
3588 struct update_window_zorder_reply
3590 struct reply_header __header;
3595 struct redraw_window_request
3597 struct request_header __header;
3598 user_handle_t window;
3599 unsigned int flags;
3600 /* VARARG(region,rectangles); */
3601 char __pad_20[4];
3603 struct redraw_window_reply
3605 struct reply_header __header;
3610 struct set_window_property_request
3612 struct request_header __header;
3613 user_handle_t window;
3614 lparam_t data;
3615 atom_t atom;
3616 /* VARARG(name,unicode_str); */
3617 char __pad_28[4];
3619 struct set_window_property_reply
3621 struct reply_header __header;
3626 struct remove_window_property_request
3628 struct request_header __header;
3629 user_handle_t window;
3630 atom_t atom;
3631 /* VARARG(name,unicode_str); */
3632 char __pad_20[4];
3634 struct remove_window_property_reply
3636 struct reply_header __header;
3637 lparam_t data;
3642 struct get_window_property_request
3644 struct request_header __header;
3645 user_handle_t window;
3646 atom_t atom;
3647 /* VARARG(name,unicode_str); */
3648 char __pad_20[4];
3650 struct get_window_property_reply
3652 struct reply_header __header;
3653 lparam_t data;
3658 struct get_window_properties_request
3660 struct request_header __header;
3661 user_handle_t window;
3663 struct get_window_properties_reply
3665 struct reply_header __header;
3666 int total;
3667 /* VARARG(props,properties); */
3668 char __pad_12[4];
3673 struct create_winstation_request
3675 struct request_header __header;
3676 unsigned int flags;
3677 unsigned int access;
3678 unsigned int attributes;
3679 /* VARARG(name,unicode_str); */
3681 struct create_winstation_reply
3683 struct reply_header __header;
3684 obj_handle_t handle;
3685 char __pad_12[4];
3690 struct open_winstation_request
3692 struct request_header __header;
3693 unsigned int access;
3694 unsigned int attributes;
3695 /* VARARG(name,unicode_str); */
3696 char __pad_20[4];
3698 struct open_winstation_reply
3700 struct reply_header __header;
3701 obj_handle_t handle;
3702 char __pad_12[4];
3707 struct close_winstation_request
3709 struct request_header __header;
3710 obj_handle_t handle;
3712 struct close_winstation_reply
3714 struct reply_header __header;
3719 struct get_process_winstation_request
3721 struct request_header __header;
3722 char __pad_12[4];
3724 struct get_process_winstation_reply
3726 struct reply_header __header;
3727 obj_handle_t handle;
3728 char __pad_12[4];
3733 struct set_process_winstation_request
3735 struct request_header __header;
3736 obj_handle_t handle;
3738 struct set_process_winstation_reply
3740 struct reply_header __header;
3745 struct enum_winstation_request
3747 struct request_header __header;
3748 unsigned int index;
3750 struct enum_winstation_reply
3752 struct reply_header __header;
3753 unsigned int next;
3754 /* VARARG(name,unicode_str); */
3755 char __pad_12[4];
3760 struct create_desktop_request
3762 struct request_header __header;
3763 unsigned int flags;
3764 unsigned int access;
3765 unsigned int attributes;
3766 /* VARARG(name,unicode_str); */
3768 struct create_desktop_reply
3770 struct reply_header __header;
3771 obj_handle_t handle;
3772 char __pad_12[4];
3777 struct open_desktop_request
3779 struct request_header __header;
3780 obj_handle_t winsta;
3781 unsigned int flags;
3782 unsigned int access;
3783 unsigned int attributes;
3784 /* VARARG(name,unicode_str); */
3785 char __pad_28[4];
3787 struct open_desktop_reply
3789 struct reply_header __header;
3790 obj_handle_t handle;
3791 char __pad_12[4];
3796 struct open_input_desktop_request
3798 struct request_header __header;
3799 unsigned int flags;
3800 unsigned int access;
3801 unsigned int attributes;
3803 struct open_input_desktop_reply
3805 struct reply_header __header;
3806 obj_handle_t handle;
3807 char __pad_12[4];
3812 struct close_desktop_request
3814 struct request_header __header;
3815 obj_handle_t handle;
3817 struct close_desktop_reply
3819 struct reply_header __header;
3824 struct get_thread_desktop_request
3826 struct request_header __header;
3827 thread_id_t tid;
3829 struct get_thread_desktop_reply
3831 struct reply_header __header;
3832 obj_handle_t handle;
3833 char __pad_12[4];
3838 struct set_thread_desktop_request
3840 struct request_header __header;
3841 obj_handle_t handle;
3843 struct set_thread_desktop_reply
3845 struct reply_header __header;
3850 struct enum_desktop_request
3852 struct request_header __header;
3853 obj_handle_t winstation;
3854 unsigned int index;
3855 char __pad_20[4];
3857 struct enum_desktop_reply
3859 struct reply_header __header;
3860 unsigned int next;
3861 /* VARARG(name,unicode_str); */
3862 char __pad_12[4];
3867 struct set_user_object_info_request
3869 struct request_header __header;
3870 obj_handle_t handle;
3871 unsigned int flags;
3872 unsigned int obj_flags;
3874 struct set_user_object_info_reply
3876 struct reply_header __header;
3877 int is_desktop;
3878 unsigned int old_obj_flags;
3879 /* VARARG(name,unicode_str); */
3881 #define SET_USER_OBJECT_FLAGS 1
3885 struct register_hotkey_request
3887 struct request_header __header;
3888 user_handle_t window;
3889 int id;
3890 unsigned int flags;
3891 unsigned int vkey;
3892 char __pad_28[4];
3894 struct register_hotkey_reply
3896 struct reply_header __header;
3897 int replaced;
3898 unsigned int flags;
3899 unsigned int vkey;
3900 char __pad_20[4];
3905 struct unregister_hotkey_request
3907 struct request_header __header;
3908 user_handle_t window;
3909 int id;
3910 char __pad_20[4];
3912 struct unregister_hotkey_reply
3914 struct reply_header __header;
3915 unsigned int flags;
3916 unsigned int vkey;
3921 struct attach_thread_input_request
3923 struct request_header __header;
3924 thread_id_t tid_from;
3925 thread_id_t tid_to;
3926 int attach;
3928 struct attach_thread_input_reply
3930 struct reply_header __header;
3935 struct get_thread_input_request
3937 struct request_header __header;
3938 thread_id_t tid;
3940 struct get_thread_input_reply
3942 struct reply_header __header;
3943 user_handle_t focus;
3944 user_handle_t capture;
3945 user_handle_t active;
3946 user_handle_t foreground;
3947 user_handle_t menu_owner;
3948 user_handle_t move_size;
3949 user_handle_t caret;
3950 user_handle_t cursor;
3951 int show_count;
3952 rectangle_t rect;
3953 char __pad_60[4];
3958 struct get_last_input_time_request
3960 struct request_header __header;
3961 char __pad_12[4];
3963 struct get_last_input_time_reply
3965 struct reply_header __header;
3966 unsigned int time;
3967 char __pad_12[4];
3972 struct get_key_state_request
3974 struct request_header __header;
3975 thread_id_t tid;
3976 int key;
3977 char __pad_20[4];
3979 struct get_key_state_reply
3981 struct reply_header __header;
3982 unsigned char state;
3983 /* VARARG(keystate,bytes); */
3984 char __pad_9[7];
3988 struct set_key_state_request
3990 struct request_header __header;
3991 thread_id_t tid;
3992 int async;
3993 /* VARARG(keystate,bytes); */
3994 char __pad_20[4];
3996 struct set_key_state_reply
3998 struct reply_header __header;
4002 struct set_foreground_window_request
4004 struct request_header __header;
4005 user_handle_t handle;
4007 struct set_foreground_window_reply
4009 struct reply_header __header;
4010 user_handle_t previous;
4011 int send_msg_old;
4012 int send_msg_new;
4013 char __pad_20[4];
4017 struct set_focus_window_request
4019 struct request_header __header;
4020 user_handle_t handle;
4022 struct set_focus_window_reply
4024 struct reply_header __header;
4025 user_handle_t previous;
4026 char __pad_12[4];
4030 struct set_active_window_request
4032 struct request_header __header;
4033 user_handle_t handle;
4035 struct set_active_window_reply
4037 struct reply_header __header;
4038 user_handle_t previous;
4039 char __pad_12[4];
4043 struct set_capture_window_request
4045 struct request_header __header;
4046 user_handle_t handle;
4047 unsigned int flags;
4048 char __pad_20[4];
4050 struct set_capture_window_reply
4052 struct reply_header __header;
4053 user_handle_t previous;
4054 user_handle_t full_handle;
4056 #define CAPTURE_MENU 0x01
4057 #define CAPTURE_MOVESIZE 0x02
4061 struct set_caret_window_request
4063 struct request_header __header;
4064 user_handle_t handle;
4065 int width;
4066 int height;
4068 struct set_caret_window_reply
4070 struct reply_header __header;
4071 user_handle_t previous;
4072 rectangle_t old_rect;
4073 int old_hide;
4074 int old_state;
4075 char __pad_36[4];
4080 struct set_caret_info_request
4082 struct request_header __header;
4083 unsigned int flags;
4084 user_handle_t handle;
4085 int x;
4086 int y;
4087 int hide;
4088 int state;
4089 char __pad_36[4];
4091 struct set_caret_info_reply
4093 struct reply_header __header;
4094 user_handle_t full_handle;
4095 rectangle_t old_rect;
4096 int old_hide;
4097 int old_state;
4098 char __pad_36[4];
4100 #define SET_CARET_POS 0x01
4101 #define SET_CARET_HIDE 0x02
4102 #define SET_CARET_STATE 0x04
4106 struct set_hook_request
4108 struct request_header __header;
4109 int id;
4110 process_id_t pid;
4111 thread_id_t tid;
4112 int event_min;
4113 int event_max;
4114 client_ptr_t proc;
4115 int flags;
4116 int unicode;
4117 /* VARARG(module,unicode_str); */
4119 struct set_hook_reply
4121 struct reply_header __header;
4122 user_handle_t handle;
4123 unsigned int active_hooks;
4128 struct remove_hook_request
4130 struct request_header __header;
4131 user_handle_t handle;
4132 client_ptr_t proc;
4133 int id;
4134 char __pad_28[4];
4136 struct remove_hook_reply
4138 struct reply_header __header;
4139 unsigned int active_hooks;
4140 char __pad_12[4];
4145 struct start_hook_chain_request
4147 struct request_header __header;
4148 int id;
4149 int event;
4150 user_handle_t window;
4151 int object_id;
4152 int child_id;
4154 struct start_hook_chain_reply
4156 struct reply_header __header;
4157 user_handle_t handle;
4158 process_id_t pid;
4159 thread_id_t tid;
4160 int unicode;
4161 client_ptr_t proc;
4162 unsigned int active_hooks;
4163 /* VARARG(module,unicode_str); */
4164 char __pad_36[4];
4169 struct finish_hook_chain_request
4171 struct request_header __header;
4172 int id;
4174 struct finish_hook_chain_reply
4176 struct reply_header __header;
4181 struct get_hook_info_request
4183 struct request_header __header;
4184 user_handle_t handle;
4185 int get_next;
4186 int event;
4187 user_handle_t window;
4188 int object_id;
4189 int child_id;
4190 char __pad_36[4];
4192 struct get_hook_info_reply
4194 struct reply_header __header;
4195 user_handle_t handle;
4196 int id;
4197 process_id_t pid;
4198 thread_id_t tid;
4199 client_ptr_t proc;
4200 int unicode;
4201 /* VARARG(module,unicode_str); */
4202 char __pad_36[4];
4207 struct create_class_request
4209 struct request_header __header;
4210 int local;
4211 atom_t atom;
4212 unsigned int style;
4213 mod_handle_t instance;
4214 int extra;
4215 int win_extra;
4216 client_ptr_t client_ptr;
4217 /* VARARG(name,unicode_str); */
4219 struct create_class_reply
4221 struct reply_header __header;
4222 atom_t atom;
4223 char __pad_12[4];
4228 struct destroy_class_request
4230 struct request_header __header;
4231 atom_t atom;
4232 mod_handle_t instance;
4233 /* VARARG(name,unicode_str); */
4235 struct destroy_class_reply
4237 struct reply_header __header;
4238 client_ptr_t client_ptr;
4243 struct set_class_info_request
4245 struct request_header __header;
4246 user_handle_t window;
4247 unsigned int flags;
4248 atom_t atom;
4249 unsigned int style;
4250 int win_extra;
4251 mod_handle_t instance;
4252 int extra_offset;
4253 data_size_t extra_size;
4254 lparam_t extra_value;
4256 struct set_class_info_reply
4258 struct reply_header __header;
4259 atom_t old_atom;
4260 unsigned int old_style;
4261 int old_extra;
4262 int old_win_extra;
4263 mod_handle_t old_instance;
4264 lparam_t old_extra_value;
4266 #define SET_CLASS_ATOM 0x0001
4267 #define SET_CLASS_STYLE 0x0002
4268 #define SET_CLASS_WINEXTRA 0x0004
4269 #define SET_CLASS_INSTANCE 0x0008
4270 #define SET_CLASS_EXTRA 0x0010
4274 struct set_clipboard_info_request
4276 struct request_header __header;
4277 unsigned int flags;
4278 user_handle_t clipboard;
4279 user_handle_t owner;
4280 user_handle_t viewer;
4281 unsigned int seqno;
4283 struct set_clipboard_info_reply
4285 struct reply_header __header;
4286 unsigned int flags;
4287 user_handle_t old_clipboard;
4288 user_handle_t old_owner;
4289 user_handle_t old_viewer;
4290 unsigned int seqno;
4291 char __pad_28[4];
4294 #define SET_CB_OPEN 0x001
4295 #define SET_CB_OWNER 0x002
4296 #define SET_CB_VIEWER 0x004
4297 #define SET_CB_SEQNO 0x008
4298 #define SET_CB_RELOWNER 0x010
4299 #define SET_CB_CLOSE 0x020
4300 #define CB_OPEN 0x040
4301 #define CB_OWNER 0x080
4302 #define CB_PROCESS 0x100
4306 struct open_token_request
4308 struct request_header __header;
4309 obj_handle_t handle;
4310 unsigned int access;
4311 unsigned int attributes;
4312 unsigned int flags;
4313 char __pad_28[4];
4315 struct open_token_reply
4317 struct reply_header __header;
4318 obj_handle_t token;
4319 char __pad_12[4];
4321 #define OPEN_TOKEN_THREAD 1
4322 #define OPEN_TOKEN_AS_SELF 2
4326 struct set_global_windows_request
4328 struct request_header __header;
4329 unsigned int flags;
4330 user_handle_t shell_window;
4331 user_handle_t shell_listview;
4332 user_handle_t progman_window;
4333 user_handle_t taskman_window;
4335 struct set_global_windows_reply
4337 struct reply_header __header;
4338 user_handle_t old_shell_window;
4339 user_handle_t old_shell_listview;
4340 user_handle_t old_progman_window;
4341 user_handle_t old_taskman_window;
4343 #define SET_GLOBAL_SHELL_WINDOWS 0x01
4344 #define SET_GLOBAL_PROGMAN_WINDOW 0x02
4345 #define SET_GLOBAL_TASKMAN_WINDOW 0x04
4348 struct adjust_token_privileges_request
4350 struct request_header __header;
4351 obj_handle_t handle;
4352 int disable_all;
4353 int get_modified_state;
4354 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4356 struct adjust_token_privileges_reply
4358 struct reply_header __header;
4359 unsigned int len;
4360 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4361 char __pad_12[4];
4365 struct get_token_privileges_request
4367 struct request_header __header;
4368 obj_handle_t handle;
4370 struct get_token_privileges_reply
4372 struct reply_header __header;
4373 unsigned int len;
4374 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4375 char __pad_12[4];
4379 struct check_token_privileges_request
4381 struct request_header __header;
4382 obj_handle_t handle;
4383 int all_required;
4384 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4385 char __pad_20[4];
4387 struct check_token_privileges_reply
4389 struct reply_header __header;
4390 int has_privileges;
4391 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4392 char __pad_12[4];
4395 struct duplicate_token_request
4397 struct request_header __header;
4398 obj_handle_t handle;
4399 unsigned int access;
4400 unsigned int attributes;
4401 int primary;
4402 int impersonation_level;
4404 struct duplicate_token_reply
4406 struct reply_header __header;
4407 obj_handle_t new_handle;
4408 char __pad_12[4];
4411 struct access_check_request
4413 struct request_header __header;
4414 obj_handle_t handle;
4415 unsigned int desired_access;
4416 unsigned int mapping_read;
4417 unsigned int mapping_write;
4418 unsigned int mapping_execute;
4419 unsigned int mapping_all;
4420 /* VARARG(sd,security_descriptor); */
4421 char __pad_36[4];
4423 struct access_check_reply
4425 struct reply_header __header;
4426 unsigned int access_granted;
4427 unsigned int access_status;
4428 unsigned int privileges_len;
4429 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4430 char __pad_20[4];
4433 struct get_token_sid_request
4435 struct request_header __header;
4436 obj_handle_t handle;
4437 unsigned int which_sid;
4438 char __pad_20[4];
4440 struct get_token_sid_reply
4442 struct reply_header __header;
4443 data_size_t sid_len;
4444 /* VARARG(sid,SID); */
4445 char __pad_12[4];
4448 struct get_token_groups_request
4450 struct request_header __header;
4451 obj_handle_t handle;
4453 struct get_token_groups_reply
4455 struct reply_header __header;
4456 data_size_t user_len;
4457 /* VARARG(user,token_groups); */
4458 char __pad_12[4];
4461 struct get_token_default_dacl_request
4463 struct request_header __header;
4464 obj_handle_t handle;
4466 struct get_token_default_dacl_reply
4468 struct reply_header __header;
4469 data_size_t acl_len;
4470 /* VARARG(acl,ACL); */
4471 char __pad_12[4];
4474 struct set_token_default_dacl_request
4476 struct request_header __header;
4477 obj_handle_t handle;
4478 /* VARARG(acl,ACL); */
4480 struct set_token_default_dacl_reply
4482 struct reply_header __header;
4485 struct set_security_object_request
4487 struct request_header __header;
4488 obj_handle_t handle;
4489 unsigned int security_info;
4490 /* VARARG(sd,security_descriptor); */
4491 char __pad_20[4];
4493 struct set_security_object_reply
4495 struct reply_header __header;
4498 struct get_security_object_request
4500 struct request_header __header;
4501 obj_handle_t handle;
4502 unsigned int security_info;
4503 char __pad_20[4];
4505 struct get_security_object_reply
4507 struct reply_header __header;
4508 unsigned int sd_len;
4509 /* VARARG(sd,security_descriptor); */
4510 char __pad_12[4];
4514 struct create_mailslot_request
4516 struct request_header __header;
4517 unsigned int access;
4518 unsigned int attributes;
4519 obj_handle_t rootdir;
4520 timeout_t read_timeout;
4521 unsigned int max_msgsize;
4522 /* VARARG(name,unicode_str); */
4523 char __pad_36[4];
4525 struct create_mailslot_reply
4527 struct reply_header __header;
4528 obj_handle_t handle;
4529 char __pad_12[4];
4534 struct set_mailslot_info_request
4536 struct request_header __header;
4537 obj_handle_t handle;
4538 timeout_t read_timeout;
4539 unsigned int flags;
4540 char __pad_28[4];
4542 struct set_mailslot_info_reply
4544 struct reply_header __header;
4545 timeout_t read_timeout;
4546 unsigned int max_msgsize;
4547 char __pad_20[4];
4549 #define MAILSLOT_SET_READ_TIMEOUT 1
4553 struct create_directory_request
4555 struct request_header __header;
4556 unsigned int access;
4557 unsigned int attributes;
4558 obj_handle_t rootdir;
4559 /* VARARG(directory_name,unicode_str); */
4561 struct create_directory_reply
4563 struct reply_header __header;
4564 obj_handle_t handle;
4565 char __pad_12[4];
4570 struct open_directory_request
4572 struct request_header __header;
4573 unsigned int access;
4574 unsigned int attributes;
4575 obj_handle_t rootdir;
4576 /* VARARG(directory_name,unicode_str); */
4578 struct open_directory_reply
4580 struct reply_header __header;
4581 obj_handle_t handle;
4582 char __pad_12[4];
4587 struct get_directory_entry_request
4589 struct request_header __header;
4590 obj_handle_t handle;
4591 unsigned int index;
4592 char __pad_20[4];
4594 struct get_directory_entry_reply
4596 struct reply_header __header;
4597 data_size_t name_len;
4598 /* VARARG(name,unicode_str,name_len); */
4599 /* VARARG(type,unicode_str); */
4600 char __pad_12[4];
4605 struct create_symlink_request
4607 struct request_header __header;
4608 unsigned int access;
4609 unsigned int attributes;
4610 obj_handle_t rootdir;
4611 data_size_t name_len;
4612 /* VARARG(name,unicode_str,name_len); */
4613 /* VARARG(target_name,unicode_str); */
4614 char __pad_28[4];
4616 struct create_symlink_reply
4618 struct reply_header __header;
4619 obj_handle_t handle;
4620 char __pad_12[4];
4625 struct open_symlink_request
4627 struct request_header __header;
4628 unsigned int access;
4629 unsigned int attributes;
4630 obj_handle_t rootdir;
4631 /* VARARG(name,unicode_str); */
4633 struct open_symlink_reply
4635 struct reply_header __header;
4636 obj_handle_t handle;
4637 char __pad_12[4];
4642 struct query_symlink_request
4644 struct request_header __header;
4645 obj_handle_t handle;
4647 struct query_symlink_reply
4649 struct reply_header __header;
4650 data_size_t total;
4651 /* VARARG(target_name,unicode_str); */
4652 char __pad_12[4];
4657 struct get_object_info_request
4659 struct request_header __header;
4660 obj_handle_t handle;
4662 struct get_object_info_reply
4664 struct reply_header __header;
4665 unsigned int access;
4666 unsigned int ref_count;
4667 data_size_t total;
4668 /* VARARG(name,unicode_str); */
4669 char __pad_20[4];
4674 struct unlink_object_request
4676 struct request_header __header;
4677 obj_handle_t handle;
4679 struct unlink_object_reply
4681 struct reply_header __header;
4686 struct get_token_impersonation_level_request
4688 struct request_header __header;
4689 obj_handle_t handle;
4691 struct get_token_impersonation_level_reply
4693 struct reply_header __header;
4694 int impersonation_level;
4695 char __pad_12[4];
4699 struct allocate_locally_unique_id_request
4701 struct request_header __header;
4702 char __pad_12[4];
4704 struct allocate_locally_unique_id_reply
4706 struct reply_header __header;
4707 luid_t luid;
4712 struct create_device_manager_request
4714 struct request_header __header;
4715 unsigned int access;
4716 unsigned int attributes;
4717 char __pad_20[4];
4719 struct create_device_manager_reply
4721 struct reply_header __header;
4722 obj_handle_t handle;
4723 char __pad_12[4];
4728 struct create_device_request
4730 struct request_header __header;
4731 unsigned int access;
4732 unsigned int attributes;
4733 obj_handle_t rootdir;
4734 client_ptr_t user_ptr;
4735 obj_handle_t manager;
4736 /* VARARG(name,unicode_str); */
4737 char __pad_36[4];
4739 struct create_device_reply
4741 struct reply_header __header;
4742 obj_handle_t handle;
4743 char __pad_12[4];
4748 struct delete_device_request
4750 struct request_header __header;
4751 obj_handle_t handle;
4753 struct delete_device_reply
4755 struct reply_header __header;
4760 struct get_next_device_request_request
4762 struct request_header __header;
4763 obj_handle_t manager;
4764 obj_handle_t prev;
4765 unsigned int status;
4766 /* VARARG(prev_data,bytes); */
4768 struct get_next_device_request_reply
4770 struct reply_header __header;
4771 obj_handle_t next;
4772 ioctl_code_t code;
4773 client_ptr_t user_ptr;
4774 process_id_t client_pid;
4775 thread_id_t client_tid;
4776 data_size_t in_size;
4777 data_size_t out_size;
4778 /* VARARG(next_data,bytes); */
4783 struct make_process_system_request
4785 struct request_header __header;
4786 char __pad_12[4];
4788 struct make_process_system_reply
4790 struct reply_header __header;
4791 obj_handle_t event;
4792 char __pad_12[4];
4797 struct get_token_statistics_request
4799 struct request_header __header;
4800 obj_handle_t handle;
4802 struct get_token_statistics_reply
4804 struct reply_header __header;
4805 luid_t token_id;
4806 luid_t modified_id;
4807 int primary;
4808 int impersonation_level;
4809 int group_count;
4810 int privilege_count;
4815 struct create_completion_request
4817 struct request_header __header;
4818 unsigned int access;
4819 unsigned int attributes;
4820 unsigned int concurrent;
4821 obj_handle_t rootdir;
4822 /* VARARG(filename,string); */
4823 char __pad_28[4];
4825 struct create_completion_reply
4827 struct reply_header __header;
4828 obj_handle_t handle;
4829 char __pad_12[4];
4834 struct open_completion_request
4836 struct request_header __header;
4837 unsigned int access;
4838 unsigned int attributes;
4839 obj_handle_t rootdir;
4840 /* VARARG(filename,string); */
4842 struct open_completion_reply
4844 struct reply_header __header;
4845 obj_handle_t handle;
4846 char __pad_12[4];
4851 struct add_completion_request
4853 struct request_header __header;
4854 obj_handle_t handle;
4855 apc_param_t ckey;
4856 apc_param_t cvalue;
4857 apc_param_t information;
4858 unsigned int status;
4859 char __pad_44[4];
4861 struct add_completion_reply
4863 struct reply_header __header;
4868 struct remove_completion_request
4870 struct request_header __header;
4871 obj_handle_t handle;
4873 struct remove_completion_reply
4875 struct reply_header __header;
4876 apc_param_t ckey;
4877 apc_param_t cvalue;
4878 apc_param_t information;
4879 unsigned int status;
4880 char __pad_36[4];
4885 struct query_completion_request
4887 struct request_header __header;
4888 obj_handle_t handle;
4890 struct query_completion_reply
4892 struct reply_header __header;
4893 unsigned int depth;
4894 char __pad_12[4];
4899 struct set_completion_info_request
4901 struct request_header __header;
4902 obj_handle_t handle;
4903 apc_param_t ckey;
4904 obj_handle_t chandle;
4905 char __pad_28[4];
4907 struct set_completion_info_reply
4909 struct reply_header __header;
4914 struct add_fd_completion_request
4916 struct request_header __header;
4917 obj_handle_t handle;
4918 apc_param_t cvalue;
4919 apc_param_t information;
4920 unsigned int status;
4921 char __pad_36[4];
4923 struct add_fd_completion_reply
4925 struct reply_header __header;
4930 struct get_window_layered_info_request
4932 struct request_header __header;
4933 user_handle_t handle;
4935 struct get_window_layered_info_reply
4937 struct reply_header __header;
4938 unsigned int color_key;
4939 unsigned int alpha;
4940 unsigned int flags;
4941 char __pad_20[4];
4946 struct set_window_layered_info_request
4948 struct request_header __header;
4949 user_handle_t handle;
4950 unsigned int color_key;
4951 unsigned int alpha;
4952 unsigned int flags;
4953 char __pad_28[4];
4955 struct set_window_layered_info_reply
4957 struct reply_header __header;
4962 struct alloc_user_handle_request
4964 struct request_header __header;
4965 char __pad_12[4];
4967 struct alloc_user_handle_reply
4969 struct reply_header __header;
4970 user_handle_t handle;
4971 char __pad_12[4];
4976 struct free_user_handle_request
4978 struct request_header __header;
4979 user_handle_t handle;
4981 struct free_user_handle_reply
4983 struct reply_header __header;
4988 struct set_cursor_request
4990 struct request_header __header;
4991 unsigned int flags;
4992 user_handle_t handle;
4993 int show_count;
4994 int x;
4995 int y;
4996 rectangle_t clip;
4997 unsigned int clip_msg;
4998 char __pad_52[4];
5000 struct set_cursor_reply
5002 struct reply_header __header;
5003 user_handle_t prev_handle;
5004 int prev_count;
5005 int prev_x;
5006 int prev_y;
5007 int new_x;
5008 int new_y;
5009 rectangle_t new_clip;
5010 unsigned int last_change;
5011 char __pad_52[4];
5013 #define SET_CURSOR_HANDLE 0x01
5014 #define SET_CURSOR_COUNT 0x02
5015 #define SET_CURSOR_POS 0x04
5016 #define SET_CURSOR_CLIP 0x08
5017 #define SET_CURSOR_NOCLIP 0x10
5021 struct update_rawinput_devices_request
5023 struct request_header __header;
5024 /* VARARG(devices,rawinput_devices); */
5025 char __pad_12[4];
5027 struct update_rawinput_devices_reply
5029 struct reply_header __header;
5034 struct get_suspend_context_request
5036 struct request_header __header;
5037 char __pad_12[4];
5039 struct get_suspend_context_reply
5041 struct reply_header __header;
5042 /* VARARG(context,context); */
5047 struct set_suspend_context_request
5049 struct request_header __header;
5050 /* VARARG(context,context); */
5051 char __pad_12[4];
5053 struct set_suspend_context_reply
5055 struct reply_header __header;
5059 enum request
5061 REQ_new_process,
5062 REQ_get_new_process_info,
5063 REQ_new_thread,
5064 REQ_get_startup_info,
5065 REQ_init_process_done,
5066 REQ_init_thread,
5067 REQ_terminate_process,
5068 REQ_terminate_thread,
5069 REQ_get_process_info,
5070 REQ_set_process_info,
5071 REQ_get_thread_info,
5072 REQ_set_thread_info,
5073 REQ_get_dll_info,
5074 REQ_suspend_thread,
5075 REQ_resume_thread,
5076 REQ_load_dll,
5077 REQ_unload_dll,
5078 REQ_queue_apc,
5079 REQ_get_apc_result,
5080 REQ_close_handle,
5081 REQ_set_handle_info,
5082 REQ_dup_handle,
5083 REQ_open_process,
5084 REQ_open_thread,
5085 REQ_select,
5086 REQ_create_event,
5087 REQ_event_op,
5088 REQ_query_event,
5089 REQ_open_event,
5090 REQ_create_keyed_event,
5091 REQ_open_keyed_event,
5092 REQ_create_mutex,
5093 REQ_release_mutex,
5094 REQ_open_mutex,
5095 REQ_create_semaphore,
5096 REQ_release_semaphore,
5097 REQ_query_semaphore,
5098 REQ_open_semaphore,
5099 REQ_create_file,
5100 REQ_open_file_object,
5101 REQ_alloc_file_handle,
5102 REQ_get_handle_unix_name,
5103 REQ_get_handle_fd,
5104 REQ_flush_file,
5105 REQ_lock_file,
5106 REQ_unlock_file,
5107 REQ_create_socket,
5108 REQ_accept_socket,
5109 REQ_accept_into_socket,
5110 REQ_set_socket_event,
5111 REQ_get_socket_event,
5112 REQ_get_socket_info,
5113 REQ_enable_socket_event,
5114 REQ_set_socket_deferred,
5115 REQ_alloc_console,
5116 REQ_free_console,
5117 REQ_get_console_renderer_events,
5118 REQ_open_console,
5119 REQ_get_console_wait_event,
5120 REQ_get_console_mode,
5121 REQ_set_console_mode,
5122 REQ_set_console_input_info,
5123 REQ_get_console_input_info,
5124 REQ_append_console_input_history,
5125 REQ_get_console_input_history,
5126 REQ_create_console_output,
5127 REQ_set_console_output_info,
5128 REQ_get_console_output_info,
5129 REQ_write_console_input,
5130 REQ_read_console_input,
5131 REQ_write_console_output,
5132 REQ_fill_console_output,
5133 REQ_read_console_output,
5134 REQ_move_console_output,
5135 REQ_send_console_signal,
5136 REQ_read_directory_changes,
5137 REQ_read_change,
5138 REQ_create_mapping,
5139 REQ_open_mapping,
5140 REQ_get_mapping_info,
5141 REQ_get_mapping_committed_range,
5142 REQ_add_mapping_committed_range,
5143 REQ_create_snapshot,
5144 REQ_next_process,
5145 REQ_next_thread,
5146 REQ_wait_debug_event,
5147 REQ_queue_exception_event,
5148 REQ_get_exception_status,
5149 REQ_continue_debug_event,
5150 REQ_debug_process,
5151 REQ_debug_break,
5152 REQ_set_debugger_kill_on_exit,
5153 REQ_read_process_memory,
5154 REQ_write_process_memory,
5155 REQ_create_key,
5156 REQ_open_key,
5157 REQ_delete_key,
5158 REQ_flush_key,
5159 REQ_enum_key,
5160 REQ_set_key_value,
5161 REQ_get_key_value,
5162 REQ_enum_key_value,
5163 REQ_delete_key_value,
5164 REQ_load_registry,
5165 REQ_unload_registry,
5166 REQ_save_registry,
5167 REQ_set_registry_notification,
5168 REQ_create_timer,
5169 REQ_open_timer,
5170 REQ_set_timer,
5171 REQ_cancel_timer,
5172 REQ_get_timer_info,
5173 REQ_get_thread_context,
5174 REQ_set_thread_context,
5175 REQ_get_selector_entry,
5176 REQ_add_atom,
5177 REQ_delete_atom,
5178 REQ_find_atom,
5179 REQ_get_atom_information,
5180 REQ_set_atom_information,
5181 REQ_empty_atom_table,
5182 REQ_init_atom_table,
5183 REQ_get_msg_queue,
5184 REQ_set_queue_fd,
5185 REQ_set_queue_mask,
5186 REQ_get_queue_status,
5187 REQ_get_process_idle_event,
5188 REQ_send_message,
5189 REQ_post_quit_message,
5190 REQ_send_hardware_message,
5191 REQ_get_message,
5192 REQ_reply_message,
5193 REQ_accept_hardware_message,
5194 REQ_get_message_reply,
5195 REQ_set_win_timer,
5196 REQ_kill_win_timer,
5197 REQ_is_window_hung,
5198 REQ_get_serial_info,
5199 REQ_set_serial_info,
5200 REQ_register_async,
5201 REQ_cancel_async,
5202 REQ_ioctl,
5203 REQ_get_ioctl_result,
5204 REQ_create_named_pipe,
5205 REQ_get_named_pipe_info,
5206 REQ_create_window,
5207 REQ_destroy_window,
5208 REQ_get_desktop_window,
5209 REQ_set_window_owner,
5210 REQ_get_window_info,
5211 REQ_set_window_info,
5212 REQ_set_parent,
5213 REQ_get_window_parents,
5214 REQ_get_window_children,
5215 REQ_get_window_children_from_point,
5216 REQ_get_window_tree,
5217 REQ_set_window_pos,
5218 REQ_get_window_rectangles,
5219 REQ_get_window_text,
5220 REQ_set_window_text,
5221 REQ_get_windows_offset,
5222 REQ_get_visible_region,
5223 REQ_get_surface_region,
5224 REQ_get_window_region,
5225 REQ_set_window_region,
5226 REQ_get_update_region,
5227 REQ_update_window_zorder,
5228 REQ_redraw_window,
5229 REQ_set_window_property,
5230 REQ_remove_window_property,
5231 REQ_get_window_property,
5232 REQ_get_window_properties,
5233 REQ_create_winstation,
5234 REQ_open_winstation,
5235 REQ_close_winstation,
5236 REQ_get_process_winstation,
5237 REQ_set_process_winstation,
5238 REQ_enum_winstation,
5239 REQ_create_desktop,
5240 REQ_open_desktop,
5241 REQ_open_input_desktop,
5242 REQ_close_desktop,
5243 REQ_get_thread_desktop,
5244 REQ_set_thread_desktop,
5245 REQ_enum_desktop,
5246 REQ_set_user_object_info,
5247 REQ_register_hotkey,
5248 REQ_unregister_hotkey,
5249 REQ_attach_thread_input,
5250 REQ_get_thread_input,
5251 REQ_get_last_input_time,
5252 REQ_get_key_state,
5253 REQ_set_key_state,
5254 REQ_set_foreground_window,
5255 REQ_set_focus_window,
5256 REQ_set_active_window,
5257 REQ_set_capture_window,
5258 REQ_set_caret_window,
5259 REQ_set_caret_info,
5260 REQ_set_hook,
5261 REQ_remove_hook,
5262 REQ_start_hook_chain,
5263 REQ_finish_hook_chain,
5264 REQ_get_hook_info,
5265 REQ_create_class,
5266 REQ_destroy_class,
5267 REQ_set_class_info,
5268 REQ_set_clipboard_info,
5269 REQ_open_token,
5270 REQ_set_global_windows,
5271 REQ_adjust_token_privileges,
5272 REQ_get_token_privileges,
5273 REQ_check_token_privileges,
5274 REQ_duplicate_token,
5275 REQ_access_check,
5276 REQ_get_token_sid,
5277 REQ_get_token_groups,
5278 REQ_get_token_default_dacl,
5279 REQ_set_token_default_dacl,
5280 REQ_set_security_object,
5281 REQ_get_security_object,
5282 REQ_create_mailslot,
5283 REQ_set_mailslot_info,
5284 REQ_create_directory,
5285 REQ_open_directory,
5286 REQ_get_directory_entry,
5287 REQ_create_symlink,
5288 REQ_open_symlink,
5289 REQ_query_symlink,
5290 REQ_get_object_info,
5291 REQ_unlink_object,
5292 REQ_get_token_impersonation_level,
5293 REQ_allocate_locally_unique_id,
5294 REQ_create_device_manager,
5295 REQ_create_device,
5296 REQ_delete_device,
5297 REQ_get_next_device_request,
5298 REQ_make_process_system,
5299 REQ_get_token_statistics,
5300 REQ_create_completion,
5301 REQ_open_completion,
5302 REQ_add_completion,
5303 REQ_remove_completion,
5304 REQ_query_completion,
5305 REQ_set_completion_info,
5306 REQ_add_fd_completion,
5307 REQ_get_window_layered_info,
5308 REQ_set_window_layered_info,
5309 REQ_alloc_user_handle,
5310 REQ_free_user_handle,
5311 REQ_set_cursor,
5312 REQ_update_rawinput_devices,
5313 REQ_get_suspend_context,
5314 REQ_set_suspend_context,
5315 REQ_NB_REQUESTS
5318 union generic_request
5320 struct request_max_size max_size;
5321 struct request_header request_header;
5322 struct new_process_request new_process_request;
5323 struct get_new_process_info_request get_new_process_info_request;
5324 struct new_thread_request new_thread_request;
5325 struct get_startup_info_request get_startup_info_request;
5326 struct init_process_done_request init_process_done_request;
5327 struct init_thread_request init_thread_request;
5328 struct terminate_process_request terminate_process_request;
5329 struct terminate_thread_request terminate_thread_request;
5330 struct get_process_info_request get_process_info_request;
5331 struct set_process_info_request set_process_info_request;
5332 struct get_thread_info_request get_thread_info_request;
5333 struct set_thread_info_request set_thread_info_request;
5334 struct get_dll_info_request get_dll_info_request;
5335 struct suspend_thread_request suspend_thread_request;
5336 struct resume_thread_request resume_thread_request;
5337 struct load_dll_request load_dll_request;
5338 struct unload_dll_request unload_dll_request;
5339 struct queue_apc_request queue_apc_request;
5340 struct get_apc_result_request get_apc_result_request;
5341 struct close_handle_request close_handle_request;
5342 struct set_handle_info_request set_handle_info_request;
5343 struct dup_handle_request dup_handle_request;
5344 struct open_process_request open_process_request;
5345 struct open_thread_request open_thread_request;
5346 struct select_request select_request;
5347 struct create_event_request create_event_request;
5348 struct event_op_request event_op_request;
5349 struct query_event_request query_event_request;
5350 struct open_event_request open_event_request;
5351 struct create_keyed_event_request create_keyed_event_request;
5352 struct open_keyed_event_request open_keyed_event_request;
5353 struct create_mutex_request create_mutex_request;
5354 struct release_mutex_request release_mutex_request;
5355 struct open_mutex_request open_mutex_request;
5356 struct create_semaphore_request create_semaphore_request;
5357 struct release_semaphore_request release_semaphore_request;
5358 struct query_semaphore_request query_semaphore_request;
5359 struct open_semaphore_request open_semaphore_request;
5360 struct create_file_request create_file_request;
5361 struct open_file_object_request open_file_object_request;
5362 struct alloc_file_handle_request alloc_file_handle_request;
5363 struct get_handle_unix_name_request get_handle_unix_name_request;
5364 struct get_handle_fd_request get_handle_fd_request;
5365 struct flush_file_request flush_file_request;
5366 struct lock_file_request lock_file_request;
5367 struct unlock_file_request unlock_file_request;
5368 struct create_socket_request create_socket_request;
5369 struct accept_socket_request accept_socket_request;
5370 struct accept_into_socket_request accept_into_socket_request;
5371 struct set_socket_event_request set_socket_event_request;
5372 struct get_socket_event_request get_socket_event_request;
5373 struct get_socket_info_request get_socket_info_request;
5374 struct enable_socket_event_request enable_socket_event_request;
5375 struct set_socket_deferred_request set_socket_deferred_request;
5376 struct alloc_console_request alloc_console_request;
5377 struct free_console_request free_console_request;
5378 struct get_console_renderer_events_request get_console_renderer_events_request;
5379 struct open_console_request open_console_request;
5380 struct get_console_wait_event_request get_console_wait_event_request;
5381 struct get_console_mode_request get_console_mode_request;
5382 struct set_console_mode_request set_console_mode_request;
5383 struct set_console_input_info_request set_console_input_info_request;
5384 struct get_console_input_info_request get_console_input_info_request;
5385 struct append_console_input_history_request append_console_input_history_request;
5386 struct get_console_input_history_request get_console_input_history_request;
5387 struct create_console_output_request create_console_output_request;
5388 struct set_console_output_info_request set_console_output_info_request;
5389 struct get_console_output_info_request get_console_output_info_request;
5390 struct write_console_input_request write_console_input_request;
5391 struct read_console_input_request read_console_input_request;
5392 struct write_console_output_request write_console_output_request;
5393 struct fill_console_output_request fill_console_output_request;
5394 struct read_console_output_request read_console_output_request;
5395 struct move_console_output_request move_console_output_request;
5396 struct send_console_signal_request send_console_signal_request;
5397 struct read_directory_changes_request read_directory_changes_request;
5398 struct read_change_request read_change_request;
5399 struct create_mapping_request create_mapping_request;
5400 struct open_mapping_request open_mapping_request;
5401 struct get_mapping_info_request get_mapping_info_request;
5402 struct get_mapping_committed_range_request get_mapping_committed_range_request;
5403 struct add_mapping_committed_range_request add_mapping_committed_range_request;
5404 struct create_snapshot_request create_snapshot_request;
5405 struct next_process_request next_process_request;
5406 struct next_thread_request next_thread_request;
5407 struct wait_debug_event_request wait_debug_event_request;
5408 struct queue_exception_event_request queue_exception_event_request;
5409 struct get_exception_status_request get_exception_status_request;
5410 struct continue_debug_event_request continue_debug_event_request;
5411 struct debug_process_request debug_process_request;
5412 struct debug_break_request debug_break_request;
5413 struct set_debugger_kill_on_exit_request set_debugger_kill_on_exit_request;
5414 struct read_process_memory_request read_process_memory_request;
5415 struct write_process_memory_request write_process_memory_request;
5416 struct create_key_request create_key_request;
5417 struct open_key_request open_key_request;
5418 struct delete_key_request delete_key_request;
5419 struct flush_key_request flush_key_request;
5420 struct enum_key_request enum_key_request;
5421 struct set_key_value_request set_key_value_request;
5422 struct get_key_value_request get_key_value_request;
5423 struct enum_key_value_request enum_key_value_request;
5424 struct delete_key_value_request delete_key_value_request;
5425 struct load_registry_request load_registry_request;
5426 struct unload_registry_request unload_registry_request;
5427 struct save_registry_request save_registry_request;
5428 struct set_registry_notification_request set_registry_notification_request;
5429 struct create_timer_request create_timer_request;
5430 struct open_timer_request open_timer_request;
5431 struct set_timer_request set_timer_request;
5432 struct cancel_timer_request cancel_timer_request;
5433 struct get_timer_info_request get_timer_info_request;
5434 struct get_thread_context_request get_thread_context_request;
5435 struct set_thread_context_request set_thread_context_request;
5436 struct get_selector_entry_request get_selector_entry_request;
5437 struct add_atom_request add_atom_request;
5438 struct delete_atom_request delete_atom_request;
5439 struct find_atom_request find_atom_request;
5440 struct get_atom_information_request get_atom_information_request;
5441 struct set_atom_information_request set_atom_information_request;
5442 struct empty_atom_table_request empty_atom_table_request;
5443 struct init_atom_table_request init_atom_table_request;
5444 struct get_msg_queue_request get_msg_queue_request;
5445 struct set_queue_fd_request set_queue_fd_request;
5446 struct set_queue_mask_request set_queue_mask_request;
5447 struct get_queue_status_request get_queue_status_request;
5448 struct get_process_idle_event_request get_process_idle_event_request;
5449 struct send_message_request send_message_request;
5450 struct post_quit_message_request post_quit_message_request;
5451 struct send_hardware_message_request send_hardware_message_request;
5452 struct get_message_request get_message_request;
5453 struct reply_message_request reply_message_request;
5454 struct accept_hardware_message_request accept_hardware_message_request;
5455 struct get_message_reply_request get_message_reply_request;
5456 struct set_win_timer_request set_win_timer_request;
5457 struct kill_win_timer_request kill_win_timer_request;
5458 struct is_window_hung_request is_window_hung_request;
5459 struct get_serial_info_request get_serial_info_request;
5460 struct set_serial_info_request set_serial_info_request;
5461 struct register_async_request register_async_request;
5462 struct cancel_async_request cancel_async_request;
5463 struct ioctl_request ioctl_request;
5464 struct get_ioctl_result_request get_ioctl_result_request;
5465 struct create_named_pipe_request create_named_pipe_request;
5466 struct get_named_pipe_info_request get_named_pipe_info_request;
5467 struct create_window_request create_window_request;
5468 struct destroy_window_request destroy_window_request;
5469 struct get_desktop_window_request get_desktop_window_request;
5470 struct set_window_owner_request set_window_owner_request;
5471 struct get_window_info_request get_window_info_request;
5472 struct set_window_info_request set_window_info_request;
5473 struct set_parent_request set_parent_request;
5474 struct get_window_parents_request get_window_parents_request;
5475 struct get_window_children_request get_window_children_request;
5476 struct get_window_children_from_point_request get_window_children_from_point_request;
5477 struct get_window_tree_request get_window_tree_request;
5478 struct set_window_pos_request set_window_pos_request;
5479 struct get_window_rectangles_request get_window_rectangles_request;
5480 struct get_window_text_request get_window_text_request;
5481 struct set_window_text_request set_window_text_request;
5482 struct get_windows_offset_request get_windows_offset_request;
5483 struct get_visible_region_request get_visible_region_request;
5484 struct get_surface_region_request get_surface_region_request;
5485 struct get_window_region_request get_window_region_request;
5486 struct set_window_region_request set_window_region_request;
5487 struct get_update_region_request get_update_region_request;
5488 struct update_window_zorder_request update_window_zorder_request;
5489 struct redraw_window_request redraw_window_request;
5490 struct set_window_property_request set_window_property_request;
5491 struct remove_window_property_request remove_window_property_request;
5492 struct get_window_property_request get_window_property_request;
5493 struct get_window_properties_request get_window_properties_request;
5494 struct create_winstation_request create_winstation_request;
5495 struct open_winstation_request open_winstation_request;
5496 struct close_winstation_request close_winstation_request;
5497 struct get_process_winstation_request get_process_winstation_request;
5498 struct set_process_winstation_request set_process_winstation_request;
5499 struct enum_winstation_request enum_winstation_request;
5500 struct create_desktop_request create_desktop_request;
5501 struct open_desktop_request open_desktop_request;
5502 struct open_input_desktop_request open_input_desktop_request;
5503 struct close_desktop_request close_desktop_request;
5504 struct get_thread_desktop_request get_thread_desktop_request;
5505 struct set_thread_desktop_request set_thread_desktop_request;
5506 struct enum_desktop_request enum_desktop_request;
5507 struct set_user_object_info_request set_user_object_info_request;
5508 struct register_hotkey_request register_hotkey_request;
5509 struct unregister_hotkey_request unregister_hotkey_request;
5510 struct attach_thread_input_request attach_thread_input_request;
5511 struct get_thread_input_request get_thread_input_request;
5512 struct get_last_input_time_request get_last_input_time_request;
5513 struct get_key_state_request get_key_state_request;
5514 struct set_key_state_request set_key_state_request;
5515 struct set_foreground_window_request set_foreground_window_request;
5516 struct set_focus_window_request set_focus_window_request;
5517 struct set_active_window_request set_active_window_request;
5518 struct set_capture_window_request set_capture_window_request;
5519 struct set_caret_window_request set_caret_window_request;
5520 struct set_caret_info_request set_caret_info_request;
5521 struct set_hook_request set_hook_request;
5522 struct remove_hook_request remove_hook_request;
5523 struct start_hook_chain_request start_hook_chain_request;
5524 struct finish_hook_chain_request finish_hook_chain_request;
5525 struct get_hook_info_request get_hook_info_request;
5526 struct create_class_request create_class_request;
5527 struct destroy_class_request destroy_class_request;
5528 struct set_class_info_request set_class_info_request;
5529 struct set_clipboard_info_request set_clipboard_info_request;
5530 struct open_token_request open_token_request;
5531 struct set_global_windows_request set_global_windows_request;
5532 struct adjust_token_privileges_request adjust_token_privileges_request;
5533 struct get_token_privileges_request get_token_privileges_request;
5534 struct check_token_privileges_request check_token_privileges_request;
5535 struct duplicate_token_request duplicate_token_request;
5536 struct access_check_request access_check_request;
5537 struct get_token_sid_request get_token_sid_request;
5538 struct get_token_groups_request get_token_groups_request;
5539 struct get_token_default_dacl_request get_token_default_dacl_request;
5540 struct set_token_default_dacl_request set_token_default_dacl_request;
5541 struct set_security_object_request set_security_object_request;
5542 struct get_security_object_request get_security_object_request;
5543 struct create_mailslot_request create_mailslot_request;
5544 struct set_mailslot_info_request set_mailslot_info_request;
5545 struct create_directory_request create_directory_request;
5546 struct open_directory_request open_directory_request;
5547 struct get_directory_entry_request get_directory_entry_request;
5548 struct create_symlink_request create_symlink_request;
5549 struct open_symlink_request open_symlink_request;
5550 struct query_symlink_request query_symlink_request;
5551 struct get_object_info_request get_object_info_request;
5552 struct unlink_object_request unlink_object_request;
5553 struct get_token_impersonation_level_request get_token_impersonation_level_request;
5554 struct allocate_locally_unique_id_request allocate_locally_unique_id_request;
5555 struct create_device_manager_request create_device_manager_request;
5556 struct create_device_request create_device_request;
5557 struct delete_device_request delete_device_request;
5558 struct get_next_device_request_request get_next_device_request_request;
5559 struct make_process_system_request make_process_system_request;
5560 struct get_token_statistics_request get_token_statistics_request;
5561 struct create_completion_request create_completion_request;
5562 struct open_completion_request open_completion_request;
5563 struct add_completion_request add_completion_request;
5564 struct remove_completion_request remove_completion_request;
5565 struct query_completion_request query_completion_request;
5566 struct set_completion_info_request set_completion_info_request;
5567 struct add_fd_completion_request add_fd_completion_request;
5568 struct get_window_layered_info_request get_window_layered_info_request;
5569 struct set_window_layered_info_request set_window_layered_info_request;
5570 struct alloc_user_handle_request alloc_user_handle_request;
5571 struct free_user_handle_request free_user_handle_request;
5572 struct set_cursor_request set_cursor_request;
5573 struct update_rawinput_devices_request update_rawinput_devices_request;
5574 struct get_suspend_context_request get_suspend_context_request;
5575 struct set_suspend_context_request set_suspend_context_request;
5577 union generic_reply
5579 struct request_max_size max_size;
5580 struct reply_header reply_header;
5581 struct new_process_reply new_process_reply;
5582 struct get_new_process_info_reply get_new_process_info_reply;
5583 struct new_thread_reply new_thread_reply;
5584 struct get_startup_info_reply get_startup_info_reply;
5585 struct init_process_done_reply init_process_done_reply;
5586 struct init_thread_reply init_thread_reply;
5587 struct terminate_process_reply terminate_process_reply;
5588 struct terminate_thread_reply terminate_thread_reply;
5589 struct get_process_info_reply get_process_info_reply;
5590 struct set_process_info_reply set_process_info_reply;
5591 struct get_thread_info_reply get_thread_info_reply;
5592 struct set_thread_info_reply set_thread_info_reply;
5593 struct get_dll_info_reply get_dll_info_reply;
5594 struct suspend_thread_reply suspend_thread_reply;
5595 struct resume_thread_reply resume_thread_reply;
5596 struct load_dll_reply load_dll_reply;
5597 struct unload_dll_reply unload_dll_reply;
5598 struct queue_apc_reply queue_apc_reply;
5599 struct get_apc_result_reply get_apc_result_reply;
5600 struct close_handle_reply close_handle_reply;
5601 struct set_handle_info_reply set_handle_info_reply;
5602 struct dup_handle_reply dup_handle_reply;
5603 struct open_process_reply open_process_reply;
5604 struct open_thread_reply open_thread_reply;
5605 struct select_reply select_reply;
5606 struct create_event_reply create_event_reply;
5607 struct event_op_reply event_op_reply;
5608 struct query_event_reply query_event_reply;
5609 struct open_event_reply open_event_reply;
5610 struct create_keyed_event_reply create_keyed_event_reply;
5611 struct open_keyed_event_reply open_keyed_event_reply;
5612 struct create_mutex_reply create_mutex_reply;
5613 struct release_mutex_reply release_mutex_reply;
5614 struct open_mutex_reply open_mutex_reply;
5615 struct create_semaphore_reply create_semaphore_reply;
5616 struct release_semaphore_reply release_semaphore_reply;
5617 struct query_semaphore_reply query_semaphore_reply;
5618 struct open_semaphore_reply open_semaphore_reply;
5619 struct create_file_reply create_file_reply;
5620 struct open_file_object_reply open_file_object_reply;
5621 struct alloc_file_handle_reply alloc_file_handle_reply;
5622 struct get_handle_unix_name_reply get_handle_unix_name_reply;
5623 struct get_handle_fd_reply get_handle_fd_reply;
5624 struct flush_file_reply flush_file_reply;
5625 struct lock_file_reply lock_file_reply;
5626 struct unlock_file_reply unlock_file_reply;
5627 struct create_socket_reply create_socket_reply;
5628 struct accept_socket_reply accept_socket_reply;
5629 struct accept_into_socket_reply accept_into_socket_reply;
5630 struct set_socket_event_reply set_socket_event_reply;
5631 struct get_socket_event_reply get_socket_event_reply;
5632 struct get_socket_info_reply get_socket_info_reply;
5633 struct enable_socket_event_reply enable_socket_event_reply;
5634 struct set_socket_deferred_reply set_socket_deferred_reply;
5635 struct alloc_console_reply alloc_console_reply;
5636 struct free_console_reply free_console_reply;
5637 struct get_console_renderer_events_reply get_console_renderer_events_reply;
5638 struct open_console_reply open_console_reply;
5639 struct get_console_wait_event_reply get_console_wait_event_reply;
5640 struct get_console_mode_reply get_console_mode_reply;
5641 struct set_console_mode_reply set_console_mode_reply;
5642 struct set_console_input_info_reply set_console_input_info_reply;
5643 struct get_console_input_info_reply get_console_input_info_reply;
5644 struct append_console_input_history_reply append_console_input_history_reply;
5645 struct get_console_input_history_reply get_console_input_history_reply;
5646 struct create_console_output_reply create_console_output_reply;
5647 struct set_console_output_info_reply set_console_output_info_reply;
5648 struct get_console_output_info_reply get_console_output_info_reply;
5649 struct write_console_input_reply write_console_input_reply;
5650 struct read_console_input_reply read_console_input_reply;
5651 struct write_console_output_reply write_console_output_reply;
5652 struct fill_console_output_reply fill_console_output_reply;
5653 struct read_console_output_reply read_console_output_reply;
5654 struct move_console_output_reply move_console_output_reply;
5655 struct send_console_signal_reply send_console_signal_reply;
5656 struct read_directory_changes_reply read_directory_changes_reply;
5657 struct read_change_reply read_change_reply;
5658 struct create_mapping_reply create_mapping_reply;
5659 struct open_mapping_reply open_mapping_reply;
5660 struct get_mapping_info_reply get_mapping_info_reply;
5661 struct get_mapping_committed_range_reply get_mapping_committed_range_reply;
5662 struct add_mapping_committed_range_reply add_mapping_committed_range_reply;
5663 struct create_snapshot_reply create_snapshot_reply;
5664 struct next_process_reply next_process_reply;
5665 struct next_thread_reply next_thread_reply;
5666 struct wait_debug_event_reply wait_debug_event_reply;
5667 struct queue_exception_event_reply queue_exception_event_reply;
5668 struct get_exception_status_reply get_exception_status_reply;
5669 struct continue_debug_event_reply continue_debug_event_reply;
5670 struct debug_process_reply debug_process_reply;
5671 struct debug_break_reply debug_break_reply;
5672 struct set_debugger_kill_on_exit_reply set_debugger_kill_on_exit_reply;
5673 struct read_process_memory_reply read_process_memory_reply;
5674 struct write_process_memory_reply write_process_memory_reply;
5675 struct create_key_reply create_key_reply;
5676 struct open_key_reply open_key_reply;
5677 struct delete_key_reply delete_key_reply;
5678 struct flush_key_reply flush_key_reply;
5679 struct enum_key_reply enum_key_reply;
5680 struct set_key_value_reply set_key_value_reply;
5681 struct get_key_value_reply get_key_value_reply;
5682 struct enum_key_value_reply enum_key_value_reply;
5683 struct delete_key_value_reply delete_key_value_reply;
5684 struct load_registry_reply load_registry_reply;
5685 struct unload_registry_reply unload_registry_reply;
5686 struct save_registry_reply save_registry_reply;
5687 struct set_registry_notification_reply set_registry_notification_reply;
5688 struct create_timer_reply create_timer_reply;
5689 struct open_timer_reply open_timer_reply;
5690 struct set_timer_reply set_timer_reply;
5691 struct cancel_timer_reply cancel_timer_reply;
5692 struct get_timer_info_reply get_timer_info_reply;
5693 struct get_thread_context_reply get_thread_context_reply;
5694 struct set_thread_context_reply set_thread_context_reply;
5695 struct get_selector_entry_reply get_selector_entry_reply;
5696 struct add_atom_reply add_atom_reply;
5697 struct delete_atom_reply delete_atom_reply;
5698 struct find_atom_reply find_atom_reply;
5699 struct get_atom_information_reply get_atom_information_reply;
5700 struct set_atom_information_reply set_atom_information_reply;
5701 struct empty_atom_table_reply empty_atom_table_reply;
5702 struct init_atom_table_reply init_atom_table_reply;
5703 struct get_msg_queue_reply get_msg_queue_reply;
5704 struct set_queue_fd_reply set_queue_fd_reply;
5705 struct set_queue_mask_reply set_queue_mask_reply;
5706 struct get_queue_status_reply get_queue_status_reply;
5707 struct get_process_idle_event_reply get_process_idle_event_reply;
5708 struct send_message_reply send_message_reply;
5709 struct post_quit_message_reply post_quit_message_reply;
5710 struct send_hardware_message_reply send_hardware_message_reply;
5711 struct get_message_reply get_message_reply;
5712 struct reply_message_reply reply_message_reply;
5713 struct accept_hardware_message_reply accept_hardware_message_reply;
5714 struct get_message_reply_reply get_message_reply_reply;
5715 struct set_win_timer_reply set_win_timer_reply;
5716 struct kill_win_timer_reply kill_win_timer_reply;
5717 struct is_window_hung_reply is_window_hung_reply;
5718 struct get_serial_info_reply get_serial_info_reply;
5719 struct set_serial_info_reply set_serial_info_reply;
5720 struct register_async_reply register_async_reply;
5721 struct cancel_async_reply cancel_async_reply;
5722 struct ioctl_reply ioctl_reply;
5723 struct get_ioctl_result_reply get_ioctl_result_reply;
5724 struct create_named_pipe_reply create_named_pipe_reply;
5725 struct get_named_pipe_info_reply get_named_pipe_info_reply;
5726 struct create_window_reply create_window_reply;
5727 struct destroy_window_reply destroy_window_reply;
5728 struct get_desktop_window_reply get_desktop_window_reply;
5729 struct set_window_owner_reply set_window_owner_reply;
5730 struct get_window_info_reply get_window_info_reply;
5731 struct set_window_info_reply set_window_info_reply;
5732 struct set_parent_reply set_parent_reply;
5733 struct get_window_parents_reply get_window_parents_reply;
5734 struct get_window_children_reply get_window_children_reply;
5735 struct get_window_children_from_point_reply get_window_children_from_point_reply;
5736 struct get_window_tree_reply get_window_tree_reply;
5737 struct set_window_pos_reply set_window_pos_reply;
5738 struct get_window_rectangles_reply get_window_rectangles_reply;
5739 struct get_window_text_reply get_window_text_reply;
5740 struct set_window_text_reply set_window_text_reply;
5741 struct get_windows_offset_reply get_windows_offset_reply;
5742 struct get_visible_region_reply get_visible_region_reply;
5743 struct get_surface_region_reply get_surface_region_reply;
5744 struct get_window_region_reply get_window_region_reply;
5745 struct set_window_region_reply set_window_region_reply;
5746 struct get_update_region_reply get_update_region_reply;
5747 struct update_window_zorder_reply update_window_zorder_reply;
5748 struct redraw_window_reply redraw_window_reply;
5749 struct set_window_property_reply set_window_property_reply;
5750 struct remove_window_property_reply remove_window_property_reply;
5751 struct get_window_property_reply get_window_property_reply;
5752 struct get_window_properties_reply get_window_properties_reply;
5753 struct create_winstation_reply create_winstation_reply;
5754 struct open_winstation_reply open_winstation_reply;
5755 struct close_winstation_reply close_winstation_reply;
5756 struct get_process_winstation_reply get_process_winstation_reply;
5757 struct set_process_winstation_reply set_process_winstation_reply;
5758 struct enum_winstation_reply enum_winstation_reply;
5759 struct create_desktop_reply create_desktop_reply;
5760 struct open_desktop_reply open_desktop_reply;
5761 struct open_input_desktop_reply open_input_desktop_reply;
5762 struct close_desktop_reply close_desktop_reply;
5763 struct get_thread_desktop_reply get_thread_desktop_reply;
5764 struct set_thread_desktop_reply set_thread_desktop_reply;
5765 struct enum_desktop_reply enum_desktop_reply;
5766 struct set_user_object_info_reply set_user_object_info_reply;
5767 struct register_hotkey_reply register_hotkey_reply;
5768 struct unregister_hotkey_reply unregister_hotkey_reply;
5769 struct attach_thread_input_reply attach_thread_input_reply;
5770 struct get_thread_input_reply get_thread_input_reply;
5771 struct get_last_input_time_reply get_last_input_time_reply;
5772 struct get_key_state_reply get_key_state_reply;
5773 struct set_key_state_reply set_key_state_reply;
5774 struct set_foreground_window_reply set_foreground_window_reply;
5775 struct set_focus_window_reply set_focus_window_reply;
5776 struct set_active_window_reply set_active_window_reply;
5777 struct set_capture_window_reply set_capture_window_reply;
5778 struct set_caret_window_reply set_caret_window_reply;
5779 struct set_caret_info_reply set_caret_info_reply;
5780 struct set_hook_reply set_hook_reply;
5781 struct remove_hook_reply remove_hook_reply;
5782 struct start_hook_chain_reply start_hook_chain_reply;
5783 struct finish_hook_chain_reply finish_hook_chain_reply;
5784 struct get_hook_info_reply get_hook_info_reply;
5785 struct create_class_reply create_class_reply;
5786 struct destroy_class_reply destroy_class_reply;
5787 struct set_class_info_reply set_class_info_reply;
5788 struct set_clipboard_info_reply set_clipboard_info_reply;
5789 struct open_token_reply open_token_reply;
5790 struct set_global_windows_reply set_global_windows_reply;
5791 struct adjust_token_privileges_reply adjust_token_privileges_reply;
5792 struct get_token_privileges_reply get_token_privileges_reply;
5793 struct check_token_privileges_reply check_token_privileges_reply;
5794 struct duplicate_token_reply duplicate_token_reply;
5795 struct access_check_reply access_check_reply;
5796 struct get_token_sid_reply get_token_sid_reply;
5797 struct get_token_groups_reply get_token_groups_reply;
5798 struct get_token_default_dacl_reply get_token_default_dacl_reply;
5799 struct set_token_default_dacl_reply set_token_default_dacl_reply;
5800 struct set_security_object_reply set_security_object_reply;
5801 struct get_security_object_reply get_security_object_reply;
5802 struct create_mailslot_reply create_mailslot_reply;
5803 struct set_mailslot_info_reply set_mailslot_info_reply;
5804 struct create_directory_reply create_directory_reply;
5805 struct open_directory_reply open_directory_reply;
5806 struct get_directory_entry_reply get_directory_entry_reply;
5807 struct create_symlink_reply create_symlink_reply;
5808 struct open_symlink_reply open_symlink_reply;
5809 struct query_symlink_reply query_symlink_reply;
5810 struct get_object_info_reply get_object_info_reply;
5811 struct unlink_object_reply unlink_object_reply;
5812 struct get_token_impersonation_level_reply get_token_impersonation_level_reply;
5813 struct allocate_locally_unique_id_reply allocate_locally_unique_id_reply;
5814 struct create_device_manager_reply create_device_manager_reply;
5815 struct create_device_reply create_device_reply;
5816 struct delete_device_reply delete_device_reply;
5817 struct get_next_device_request_reply get_next_device_request_reply;
5818 struct make_process_system_reply make_process_system_reply;
5819 struct get_token_statistics_reply get_token_statistics_reply;
5820 struct create_completion_reply create_completion_reply;
5821 struct open_completion_reply open_completion_reply;
5822 struct add_completion_reply add_completion_reply;
5823 struct remove_completion_reply remove_completion_reply;
5824 struct query_completion_reply query_completion_reply;
5825 struct set_completion_info_reply set_completion_info_reply;
5826 struct add_fd_completion_reply add_fd_completion_reply;
5827 struct get_window_layered_info_reply get_window_layered_info_reply;
5828 struct set_window_layered_info_reply set_window_layered_info_reply;
5829 struct alloc_user_handle_reply alloc_user_handle_reply;
5830 struct free_user_handle_reply free_user_handle_reply;
5831 struct set_cursor_reply set_cursor_reply;
5832 struct update_rawinput_devices_reply update_rawinput_devices_reply;
5833 struct get_suspend_context_reply get_suspend_context_reply;
5834 struct set_suspend_context_reply set_suspend_context_reply;
5837 #define SERVER_PROTOCOL_VERSION 456
5839 #endif /* __WINE_WINE_SERVER_PROTOCOL_H */