wined3d: Add Nvidia GeForce 845M.
[wine.git] / include / wine / server_protocol.h
bloba60fd25acf98b98960ef78803ae460ca607b059b
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 unsigned int hw_id;
267 unsigned int flags;
268 union
270 int type;
271 struct
273 int type;
274 unsigned int message;
275 unsigned short vkey;
276 unsigned short scan;
277 } kbd;
278 struct
280 int type;
281 int x;
282 int y;
283 unsigned int data;
284 } mouse;
285 } rawinput;
288 struct callback_msg_data
290 client_ptr_t callback;
291 lparam_t data;
292 lparam_t result;
295 struct winevent_msg_data
297 user_handle_t hook;
298 thread_id_t tid;
299 client_ptr_t hook_proc;
303 typedef union
305 int type;
306 struct
308 int type;
309 unsigned short vkey;
310 unsigned short scan;
311 unsigned int flags;
312 unsigned int time;
313 lparam_t info;
314 } kbd;
315 struct
317 int type;
318 int x;
319 int y;
320 unsigned int data;
321 unsigned int flags;
322 unsigned int time;
323 lparam_t info;
324 } mouse;
325 struct
327 int type;
328 unsigned int msg;
329 lparam_t lparam;
330 } hw;
331 } hw_input_t;
333 typedef union
335 unsigned char bytes[1];
336 struct hardware_msg_data hardware;
337 struct callback_msg_data callback;
338 struct winevent_msg_data winevent;
339 } message_data_t;
342 typedef struct
344 WCHAR ch;
345 unsigned short attr;
346 } char_info_t;
349 struct filesystem_event
351 int action;
352 data_size_t len;
353 char name[1];
356 typedef struct
358 unsigned int low_part;
359 int high_part;
360 } luid_t;
362 #define MAX_ACL_LEN 65535
364 struct security_descriptor
366 unsigned int control;
367 data_size_t owner_len;
368 data_size_t group_len;
369 data_size_t sacl_len;
370 data_size_t dacl_len;
377 struct object_attributes
379 obj_handle_t rootdir;
380 unsigned int attributes;
381 data_size_t sd_len;
382 data_size_t name_len;
387 struct token_groups
389 unsigned int count;
394 enum select_op
396 SELECT_NONE,
397 SELECT_WAIT,
398 SELECT_WAIT_ALL,
399 SELECT_SIGNAL_AND_WAIT,
400 SELECT_KEYED_EVENT_WAIT,
401 SELECT_KEYED_EVENT_RELEASE
404 typedef union
406 enum select_op op;
407 struct
409 enum select_op op;
410 obj_handle_t handles[MAXIMUM_WAIT_OBJECTS];
411 } wait;
412 struct
414 enum select_op op;
415 obj_handle_t wait;
416 obj_handle_t signal;
417 } signal_and_wait;
418 struct
420 enum select_op op;
421 obj_handle_t handle;
422 client_ptr_t key;
423 } keyed_event;
424 } select_op_t;
426 enum apc_type
428 APC_NONE,
429 APC_USER,
430 APC_TIMER,
431 APC_ASYNC_IO,
432 APC_VIRTUAL_ALLOC,
433 APC_VIRTUAL_FREE,
434 APC_VIRTUAL_QUERY,
435 APC_VIRTUAL_PROTECT,
436 APC_VIRTUAL_FLUSH,
437 APC_VIRTUAL_LOCK,
438 APC_VIRTUAL_UNLOCK,
439 APC_MAP_VIEW,
440 APC_UNMAP_VIEW,
441 APC_CREATE_THREAD
444 typedef union
446 enum apc_type type;
447 struct
449 enum apc_type type;
450 int __pad;
451 client_ptr_t func;
452 apc_param_t args[3];
453 } user;
454 struct
456 enum apc_type type;
457 int __pad;
458 client_ptr_t func;
459 timeout_t time;
460 client_ptr_t arg;
461 } timer;
462 struct
464 enum apc_type type;
465 unsigned int status;
466 client_ptr_t func;
467 client_ptr_t user;
468 client_ptr_t sb;
469 } async_io;
470 struct
472 enum apc_type type;
473 unsigned int op_type;
474 client_ptr_t addr;
475 mem_size_t size;
476 unsigned int zero_bits;
477 unsigned int prot;
478 } virtual_alloc;
479 struct
481 enum apc_type type;
482 unsigned int op_type;
483 client_ptr_t addr;
484 mem_size_t size;
485 } virtual_free;
486 struct
488 enum apc_type type;
489 int __pad;
490 client_ptr_t addr;
491 } virtual_query;
492 struct
494 enum apc_type type;
495 unsigned int prot;
496 client_ptr_t addr;
497 mem_size_t size;
498 } virtual_protect;
499 struct
501 enum apc_type type;
502 int __pad;
503 client_ptr_t addr;
504 mem_size_t size;
505 } virtual_flush;
506 struct
508 enum apc_type type;
509 int __pad;
510 client_ptr_t addr;
511 mem_size_t size;
512 } virtual_lock;
513 struct
515 enum apc_type type;
516 int __pad;
517 client_ptr_t addr;
518 mem_size_t size;
519 } virtual_unlock;
520 struct
522 enum apc_type type;
523 obj_handle_t handle;
524 client_ptr_t addr;
525 mem_size_t size;
526 file_pos_t offset;
527 unsigned int alloc_type;
528 unsigned short zero_bits;
529 unsigned short prot;
530 } map_view;
531 struct
533 enum apc_type type;
534 int __pad;
535 client_ptr_t addr;
536 } unmap_view;
537 struct
539 enum apc_type type;
540 int suspend;
541 client_ptr_t func;
542 client_ptr_t arg;
543 mem_size_t reserve;
544 mem_size_t commit;
545 } create_thread;
546 } apc_call_t;
548 typedef union
550 enum apc_type type;
551 struct
553 enum apc_type type;
554 unsigned int status;
555 client_ptr_t apc;
556 client_ptr_t arg;
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 typedef union
637 unsigned int major;
638 struct
640 unsigned int major;
641 unsigned int access;
642 unsigned int sharing;
643 unsigned int options;
644 client_ptr_t device;
645 } create;
646 struct
648 unsigned int major;
649 int __pad;
650 client_ptr_t file;
651 } close;
652 struct
654 unsigned int major;
655 unsigned int key;
656 client_ptr_t file;
657 file_pos_t pos;
658 } read;
659 struct
661 unsigned int major;
662 unsigned int key;
663 client_ptr_t file;
664 file_pos_t pos;
665 } write;
666 struct
668 unsigned int major;
669 int __pad;
670 client_ptr_t file;
671 } flush;
672 struct
674 unsigned int major;
675 ioctl_code_t code;
676 client_ptr_t file;
677 } ioctl;
678 } irp_params_t;
680 struct rawinput_device
682 unsigned short usage_page;
683 unsigned short usage;
684 unsigned int flags;
685 user_handle_t target;
692 struct new_process_request
694 struct request_header __header;
695 int inherit_all;
696 unsigned int create_flags;
697 int socket_fd;
698 obj_handle_t exe_file;
699 unsigned int process_access;
700 unsigned int process_attr;
701 unsigned int thread_access;
702 unsigned int thread_attr;
703 cpu_type_t cpu;
704 data_size_t info_size;
705 /* VARARG(info,startup_info,info_size); */
706 /* VARARG(env,unicode_str); */
707 char __pad_52[4];
709 struct new_process_reply
711 struct reply_header __header;
712 obj_handle_t info;
713 process_id_t pid;
714 obj_handle_t phandle;
715 thread_id_t tid;
716 obj_handle_t thandle;
717 char __pad_28[4];
722 struct get_new_process_info_request
724 struct request_header __header;
725 obj_handle_t info;
727 struct get_new_process_info_reply
729 struct reply_header __header;
730 int success;
731 int exit_code;
736 struct new_thread_request
738 struct request_header __header;
739 unsigned int access;
740 unsigned int attributes;
741 int suspend;
742 int request_fd;
743 char __pad_28[4];
745 struct new_thread_reply
747 struct reply_header __header;
748 thread_id_t tid;
749 obj_handle_t handle;
754 struct get_startup_info_request
756 struct request_header __header;
757 char __pad_12[4];
759 struct get_startup_info_reply
761 struct reply_header __header;
762 obj_handle_t exe_file;
763 data_size_t info_size;
764 /* VARARG(info,startup_info,info_size); */
765 /* VARARG(env,unicode_str); */
770 struct init_process_done_request
772 struct request_header __header;
773 int gui;
774 mod_handle_t module;
775 client_ptr_t ldt_copy;
776 client_ptr_t entry;
778 struct init_process_done_reply
780 struct reply_header __header;
785 struct init_thread_request
787 struct request_header __header;
788 int unix_pid;
789 int unix_tid;
790 int debug_level;
791 client_ptr_t teb;
792 client_ptr_t entry;
793 int reply_fd;
794 int wait_fd;
795 cpu_type_t cpu;
796 char __pad_52[4];
798 struct init_thread_reply
800 struct reply_header __header;
801 process_id_t pid;
802 thread_id_t tid;
803 timeout_t server_start;
804 data_size_t info_size;
805 int version;
806 unsigned int all_cpus;
807 char __pad_36[4];
812 struct terminate_process_request
814 struct request_header __header;
815 obj_handle_t handle;
816 int exit_code;
817 char __pad_20[4];
819 struct terminate_process_reply
821 struct reply_header __header;
822 int self;
823 char __pad_12[4];
828 struct terminate_thread_request
830 struct request_header __header;
831 obj_handle_t handle;
832 int exit_code;
833 char __pad_20[4];
835 struct terminate_thread_reply
837 struct reply_header __header;
838 int self;
839 int last;
844 struct get_process_info_request
846 struct request_header __header;
847 obj_handle_t handle;
849 struct get_process_info_reply
851 struct reply_header __header;
852 process_id_t pid;
853 process_id_t ppid;
854 affinity_t affinity;
855 client_ptr_t peb;
856 timeout_t start_time;
857 timeout_t end_time;
858 int exit_code;
859 int priority;
860 cpu_type_t cpu;
861 short int debugger_present;
862 short int debug_children;
867 struct set_process_info_request
869 struct request_header __header;
870 obj_handle_t handle;
871 int mask;
872 int priority;
873 affinity_t affinity;
875 struct set_process_info_reply
877 struct reply_header __header;
879 #define SET_PROCESS_INFO_PRIORITY 0x01
880 #define SET_PROCESS_INFO_AFFINITY 0x02
884 struct get_thread_info_request
886 struct request_header __header;
887 obj_handle_t handle;
888 thread_id_t tid_in;
889 char __pad_20[4];
891 struct get_thread_info_reply
893 struct reply_header __header;
894 process_id_t pid;
895 thread_id_t tid;
896 client_ptr_t teb;
897 client_ptr_t entry_point;
898 affinity_t affinity;
899 int exit_code;
900 int priority;
901 int last;
902 char __pad_52[4];
907 struct get_thread_times_request
909 struct request_header __header;
910 obj_handle_t handle;
912 struct get_thread_times_reply
914 struct reply_header __header;
915 timeout_t creation_time;
916 timeout_t exit_time;
921 struct set_thread_info_request
923 struct request_header __header;
924 obj_handle_t handle;
925 int mask;
926 int priority;
927 affinity_t affinity;
928 client_ptr_t entry_point;
929 obj_handle_t token;
930 char __pad_44[4];
932 struct set_thread_info_reply
934 struct reply_header __header;
936 #define SET_THREAD_INFO_PRIORITY 0x01
937 #define SET_THREAD_INFO_AFFINITY 0x02
938 #define SET_THREAD_INFO_TOKEN 0x04
939 #define SET_THREAD_INFO_ENTRYPOINT 0x08
943 struct get_dll_info_request
945 struct request_header __header;
946 obj_handle_t handle;
947 mod_handle_t base_address;
949 struct get_dll_info_reply
951 struct reply_header __header;
952 client_ptr_t entry_point;
953 data_size_t size;
954 data_size_t filename_len;
955 /* VARARG(filename,unicode_str); */
960 struct suspend_thread_request
962 struct request_header __header;
963 obj_handle_t handle;
965 struct suspend_thread_reply
967 struct reply_header __header;
968 int count;
969 char __pad_12[4];
974 struct resume_thread_request
976 struct request_header __header;
977 obj_handle_t handle;
979 struct resume_thread_reply
981 struct reply_header __header;
982 int count;
983 char __pad_12[4];
988 struct load_dll_request
990 struct request_header __header;
991 obj_handle_t mapping;
992 mod_handle_t base;
993 client_ptr_t name;
994 data_size_t size;
995 int dbg_offset;
996 int dbg_size;
997 /* VARARG(filename,unicode_str); */
998 char __pad_44[4];
1000 struct load_dll_reply
1002 struct reply_header __header;
1007 struct unload_dll_request
1009 struct request_header __header;
1010 char __pad_12[4];
1011 mod_handle_t base;
1013 struct unload_dll_reply
1015 struct reply_header __header;
1020 struct queue_apc_request
1022 struct request_header __header;
1023 obj_handle_t handle;
1024 apc_call_t call;
1026 struct queue_apc_reply
1028 struct reply_header __header;
1029 obj_handle_t handle;
1030 int self;
1035 struct get_apc_result_request
1037 struct request_header __header;
1038 obj_handle_t handle;
1040 struct get_apc_result_reply
1042 struct reply_header __header;
1043 apc_result_t result;
1048 struct close_handle_request
1050 struct request_header __header;
1051 obj_handle_t handle;
1053 struct close_handle_reply
1055 struct reply_header __header;
1060 struct set_handle_info_request
1062 struct request_header __header;
1063 obj_handle_t handle;
1064 int flags;
1065 int mask;
1067 struct set_handle_info_reply
1069 struct reply_header __header;
1070 int old_flags;
1071 char __pad_12[4];
1076 struct dup_handle_request
1078 struct request_header __header;
1079 obj_handle_t src_process;
1080 obj_handle_t src_handle;
1081 obj_handle_t dst_process;
1082 unsigned int access;
1083 unsigned int attributes;
1084 unsigned int options;
1085 char __pad_36[4];
1087 struct dup_handle_reply
1089 struct reply_header __header;
1090 obj_handle_t handle;
1091 int self;
1092 int closed;
1093 char __pad_20[4];
1095 #define DUP_HANDLE_CLOSE_SOURCE DUPLICATE_CLOSE_SOURCE
1096 #define DUP_HANDLE_SAME_ACCESS DUPLICATE_SAME_ACCESS
1097 #define DUP_HANDLE_MAKE_GLOBAL 0x80000000
1101 struct open_process_request
1103 struct request_header __header;
1104 process_id_t pid;
1105 unsigned int access;
1106 unsigned int attributes;
1108 struct open_process_reply
1110 struct reply_header __header;
1111 obj_handle_t handle;
1112 char __pad_12[4];
1117 struct open_thread_request
1119 struct request_header __header;
1120 thread_id_t tid;
1121 unsigned int access;
1122 unsigned int attributes;
1124 struct open_thread_reply
1126 struct reply_header __header;
1127 obj_handle_t handle;
1128 char __pad_12[4];
1133 struct select_request
1135 struct request_header __header;
1136 int flags;
1137 client_ptr_t cookie;
1138 timeout_t timeout;
1139 obj_handle_t prev_apc;
1140 /* VARARG(result,apc_result); */
1141 /* VARARG(data,select_op); */
1142 char __pad_36[4];
1144 struct select_reply
1146 struct reply_header __header;
1147 timeout_t timeout;
1148 apc_call_t call;
1149 obj_handle_t apc_handle;
1150 char __pad_60[4];
1152 #define SELECT_ALERTABLE 1
1153 #define SELECT_INTERRUPTIBLE 2
1157 struct create_event_request
1159 struct request_header __header;
1160 unsigned int access;
1161 int manual_reset;
1162 int initial_state;
1163 /* VARARG(objattr,object_attributes); */
1165 struct create_event_reply
1167 struct reply_header __header;
1168 obj_handle_t handle;
1169 char __pad_12[4];
1173 struct event_op_request
1175 struct request_header __header;
1176 obj_handle_t handle;
1177 int op;
1178 char __pad_20[4];
1180 struct event_op_reply
1182 struct reply_header __header;
1184 enum event_op { PULSE_EVENT, SET_EVENT, RESET_EVENT };
1186 struct query_event_request
1188 struct request_header __header;
1189 obj_handle_t handle;
1191 struct query_event_reply
1193 struct reply_header __header;
1194 int manual_reset;
1195 int state;
1199 struct open_event_request
1201 struct request_header __header;
1202 unsigned int access;
1203 unsigned int attributes;
1204 obj_handle_t rootdir;
1205 /* VARARG(name,unicode_str); */
1207 struct open_event_reply
1209 struct reply_header __header;
1210 obj_handle_t handle;
1211 char __pad_12[4];
1216 struct create_keyed_event_request
1218 struct request_header __header;
1219 unsigned int access;
1220 /* VARARG(objattr,object_attributes); */
1222 struct create_keyed_event_reply
1224 struct reply_header __header;
1225 obj_handle_t handle;
1226 char __pad_12[4];
1230 struct open_keyed_event_request
1232 struct request_header __header;
1233 unsigned int access;
1234 unsigned int attributes;
1235 obj_handle_t rootdir;
1236 /* VARARG(name,unicode_str); */
1238 struct open_keyed_event_reply
1240 struct reply_header __header;
1241 obj_handle_t handle;
1242 char __pad_12[4];
1247 struct create_mutex_request
1249 struct request_header __header;
1250 unsigned int access;
1251 int owned;
1252 /* VARARG(objattr,object_attributes); */
1253 char __pad_20[4];
1255 struct create_mutex_reply
1257 struct reply_header __header;
1258 obj_handle_t handle;
1259 char __pad_12[4];
1264 struct release_mutex_request
1266 struct request_header __header;
1267 obj_handle_t handle;
1269 struct release_mutex_reply
1271 struct reply_header __header;
1272 unsigned int prev_count;
1273 char __pad_12[4];
1278 struct open_mutex_request
1280 struct request_header __header;
1281 unsigned int access;
1282 unsigned int attributes;
1283 obj_handle_t rootdir;
1284 /* VARARG(name,unicode_str); */
1286 struct open_mutex_reply
1288 struct reply_header __header;
1289 obj_handle_t handle;
1290 char __pad_12[4];
1295 struct create_semaphore_request
1297 struct request_header __header;
1298 unsigned int access;
1299 unsigned int initial;
1300 unsigned int max;
1301 /* VARARG(objattr,object_attributes); */
1303 struct create_semaphore_reply
1305 struct reply_header __header;
1306 obj_handle_t handle;
1307 char __pad_12[4];
1312 struct release_semaphore_request
1314 struct request_header __header;
1315 obj_handle_t handle;
1316 unsigned int count;
1317 char __pad_20[4];
1319 struct release_semaphore_reply
1321 struct reply_header __header;
1322 unsigned int prev_count;
1323 char __pad_12[4];
1326 struct query_semaphore_request
1328 struct request_header __header;
1329 obj_handle_t handle;
1331 struct query_semaphore_reply
1333 struct reply_header __header;
1334 unsigned int current;
1335 unsigned int max;
1339 struct open_semaphore_request
1341 struct request_header __header;
1342 unsigned int access;
1343 unsigned int attributes;
1344 obj_handle_t rootdir;
1345 /* VARARG(name,unicode_str); */
1347 struct open_semaphore_reply
1349 struct reply_header __header;
1350 obj_handle_t handle;
1351 char __pad_12[4];
1356 struct create_file_request
1358 struct request_header __header;
1359 unsigned int access;
1360 unsigned int sharing;
1361 int create;
1362 unsigned int options;
1363 unsigned int attrs;
1364 /* VARARG(objattr,object_attributes); */
1365 /* VARARG(filename,string); */
1367 struct create_file_reply
1369 struct reply_header __header;
1370 obj_handle_t handle;
1371 char __pad_12[4];
1376 struct open_file_object_request
1378 struct request_header __header;
1379 unsigned int access;
1380 unsigned int attributes;
1381 obj_handle_t rootdir;
1382 unsigned int sharing;
1383 unsigned int options;
1384 /* VARARG(filename,unicode_str); */
1386 struct open_file_object_reply
1388 struct reply_header __header;
1389 obj_handle_t handle;
1390 char __pad_12[4];
1395 struct alloc_file_handle_request
1397 struct request_header __header;
1398 unsigned int access;
1399 unsigned int attributes;
1400 int fd;
1402 struct alloc_file_handle_reply
1404 struct reply_header __header;
1405 obj_handle_t handle;
1406 char __pad_12[4];
1411 struct get_handle_unix_name_request
1413 struct request_header __header;
1414 obj_handle_t handle;
1416 struct get_handle_unix_name_reply
1418 struct reply_header __header;
1419 data_size_t name_len;
1420 /* VARARG(name,string); */
1421 char __pad_12[4];
1426 struct get_handle_fd_request
1428 struct request_header __header;
1429 obj_handle_t handle;
1431 struct get_handle_fd_reply
1433 struct reply_header __header;
1434 int type;
1435 int cacheable;
1436 unsigned int access;
1437 unsigned int options;
1439 enum server_fd_type
1441 FD_TYPE_INVALID,
1442 FD_TYPE_FILE,
1443 FD_TYPE_DIR,
1444 FD_TYPE_SOCKET,
1445 FD_TYPE_SERIAL,
1446 FD_TYPE_PIPE,
1447 FD_TYPE_MAILSLOT,
1448 FD_TYPE_CHAR,
1449 FD_TYPE_DEVICE,
1450 FD_TYPE_NB_TYPES
1455 struct flush_request
1457 struct request_header __header;
1458 int blocking;
1459 async_data_t async;
1461 struct flush_reply
1463 struct reply_header __header;
1464 obj_handle_t event;
1465 char __pad_12[4];
1470 struct lock_file_request
1472 struct request_header __header;
1473 obj_handle_t handle;
1474 file_pos_t offset;
1475 file_pos_t count;
1476 int shared;
1477 int wait;
1479 struct lock_file_reply
1481 struct reply_header __header;
1482 obj_handle_t handle;
1483 int overlapped;
1488 struct unlock_file_request
1490 struct request_header __header;
1491 obj_handle_t handle;
1492 file_pos_t offset;
1493 file_pos_t count;
1495 struct unlock_file_reply
1497 struct reply_header __header;
1502 struct create_socket_request
1504 struct request_header __header;
1505 unsigned int access;
1506 unsigned int attributes;
1507 int family;
1508 int type;
1509 int protocol;
1510 unsigned int flags;
1511 char __pad_36[4];
1513 struct create_socket_reply
1515 struct reply_header __header;
1516 obj_handle_t handle;
1517 char __pad_12[4];
1522 struct accept_socket_request
1524 struct request_header __header;
1525 obj_handle_t lhandle;
1526 unsigned int access;
1527 unsigned int attributes;
1529 struct accept_socket_reply
1531 struct reply_header __header;
1532 obj_handle_t handle;
1533 char __pad_12[4];
1538 struct accept_into_socket_request
1540 struct request_header __header;
1541 obj_handle_t lhandle;
1542 obj_handle_t ahandle;
1543 char __pad_20[4];
1545 struct accept_into_socket_reply
1547 struct reply_header __header;
1552 struct set_socket_event_request
1554 struct request_header __header;
1555 obj_handle_t handle;
1556 unsigned int mask;
1557 obj_handle_t event;
1558 user_handle_t window;
1559 unsigned int msg;
1561 struct set_socket_event_reply
1563 struct reply_header __header;
1568 struct get_socket_event_request
1570 struct request_header __header;
1571 obj_handle_t handle;
1572 int service;
1573 obj_handle_t c_event;
1575 struct get_socket_event_reply
1577 struct reply_header __header;
1578 unsigned int mask;
1579 unsigned int pmask;
1580 unsigned int state;
1581 /* VARARG(errors,ints); */
1582 char __pad_20[4];
1587 struct get_socket_info_request
1589 struct request_header __header;
1590 obj_handle_t handle;
1592 struct get_socket_info_reply
1594 struct reply_header __header;
1595 int family;
1596 int type;
1597 int protocol;
1598 char __pad_20[4];
1603 struct enable_socket_event_request
1605 struct request_header __header;
1606 obj_handle_t handle;
1607 unsigned int mask;
1608 unsigned int sstate;
1609 unsigned int cstate;
1610 char __pad_28[4];
1612 struct enable_socket_event_reply
1614 struct reply_header __header;
1617 struct set_socket_deferred_request
1619 struct request_header __header;
1620 obj_handle_t handle;
1621 obj_handle_t deferred;
1622 char __pad_20[4];
1624 struct set_socket_deferred_reply
1626 struct reply_header __header;
1630 struct alloc_console_request
1632 struct request_header __header;
1633 unsigned int access;
1634 unsigned int attributes;
1635 process_id_t pid;
1636 int input_fd;
1637 char __pad_28[4];
1639 struct alloc_console_reply
1641 struct reply_header __header;
1642 obj_handle_t handle_in;
1643 obj_handle_t event;
1648 struct free_console_request
1650 struct request_header __header;
1651 char __pad_12[4];
1653 struct free_console_reply
1655 struct reply_header __header;
1659 #define CONSOLE_RENDERER_NONE_EVENT 0x00
1660 #define CONSOLE_RENDERER_TITLE_EVENT 0x01
1661 #define CONSOLE_RENDERER_ACTIVE_SB_EVENT 0x02
1662 #define CONSOLE_RENDERER_SB_RESIZE_EVENT 0x03
1663 #define CONSOLE_RENDERER_UPDATE_EVENT 0x04
1664 #define CONSOLE_RENDERER_CURSOR_POS_EVENT 0x05
1665 #define CONSOLE_RENDERER_CURSOR_GEOM_EVENT 0x06
1666 #define CONSOLE_RENDERER_DISPLAY_EVENT 0x07
1667 #define CONSOLE_RENDERER_EXIT_EVENT 0x08
1668 struct console_renderer_event
1670 short event;
1671 union
1673 struct update
1675 short top;
1676 short bottom;
1677 } update;
1678 struct resize
1680 short width;
1681 short height;
1682 } resize;
1683 struct cursor_pos
1685 short x;
1686 short y;
1687 } cursor_pos;
1688 struct cursor_geom
1690 short visible;
1691 short size;
1692 } cursor_geom;
1693 struct display
1695 short left;
1696 short top;
1697 short width;
1698 short height;
1699 } display;
1700 } u;
1704 struct get_console_renderer_events_request
1706 struct request_header __header;
1707 obj_handle_t handle;
1709 struct get_console_renderer_events_reply
1711 struct reply_header __header;
1712 /* VARARG(data,bytes); */
1717 struct open_console_request
1719 struct request_header __header;
1720 obj_handle_t from;
1722 unsigned int access;
1723 unsigned int attributes;
1724 int share;
1725 char __pad_28[4];
1727 struct open_console_reply
1729 struct reply_header __header;
1730 obj_handle_t handle;
1731 char __pad_12[4];
1736 struct get_console_wait_event_request
1738 struct request_header __header;
1739 char __pad_12[4];
1741 struct get_console_wait_event_reply
1743 struct reply_header __header;
1744 obj_handle_t handle;
1745 char __pad_12[4];
1749 struct get_console_mode_request
1751 struct request_header __header;
1752 obj_handle_t handle;
1754 struct get_console_mode_reply
1756 struct reply_header __header;
1757 int mode;
1758 char __pad_12[4];
1763 struct set_console_mode_request
1765 struct request_header __header;
1766 obj_handle_t handle;
1767 int mode;
1768 char __pad_20[4];
1770 struct set_console_mode_reply
1772 struct reply_header __header;
1777 struct set_console_input_info_request
1779 struct request_header __header;
1780 obj_handle_t handle;
1781 int mask;
1782 obj_handle_t active_sb;
1783 int history_mode;
1784 int history_size;
1785 int edition_mode;
1786 int input_cp;
1787 int output_cp;
1788 user_handle_t win;
1789 /* VARARG(title,unicode_str); */
1791 struct set_console_input_info_reply
1793 struct reply_header __header;
1795 #define SET_CONSOLE_INPUT_INFO_ACTIVE_SB 0x01
1796 #define SET_CONSOLE_INPUT_INFO_TITLE 0x02
1797 #define SET_CONSOLE_INPUT_INFO_HISTORY_MODE 0x04
1798 #define SET_CONSOLE_INPUT_INFO_HISTORY_SIZE 0x08
1799 #define SET_CONSOLE_INPUT_INFO_EDITION_MODE 0x10
1800 #define SET_CONSOLE_INPUT_INFO_INPUT_CODEPAGE 0x20
1801 #define SET_CONSOLE_INPUT_INFO_OUTPUT_CODEPAGE 0x40
1802 #define SET_CONSOLE_INPUT_INFO_WIN 0x80
1806 struct get_console_input_info_request
1808 struct request_header __header;
1809 obj_handle_t handle;
1811 struct get_console_input_info_reply
1813 struct reply_header __header;
1814 int history_mode;
1815 int history_size;
1816 int history_index;
1817 int edition_mode;
1818 int input_cp;
1819 int output_cp;
1820 user_handle_t win;
1821 /* VARARG(title,unicode_str); */
1822 char __pad_36[4];
1827 struct append_console_input_history_request
1829 struct request_header __header;
1830 obj_handle_t handle;
1831 /* VARARG(line,unicode_str); */
1833 struct append_console_input_history_reply
1835 struct reply_header __header;
1840 struct get_console_input_history_request
1842 struct request_header __header;
1843 obj_handle_t handle;
1844 int index;
1845 char __pad_20[4];
1847 struct get_console_input_history_reply
1849 struct reply_header __header;
1850 int total;
1851 /* VARARG(line,unicode_str); */
1852 char __pad_12[4];
1857 struct create_console_output_request
1859 struct request_header __header;
1860 obj_handle_t handle_in;
1861 unsigned int access;
1862 unsigned int attributes;
1863 unsigned int share;
1864 int fd;
1866 struct create_console_output_reply
1868 struct reply_header __header;
1869 obj_handle_t handle_out;
1870 char __pad_12[4];
1875 struct set_console_output_info_request
1877 struct request_header __header;
1878 obj_handle_t handle;
1879 int mask;
1880 short int cursor_size;
1881 short int cursor_visible;
1882 short int cursor_x;
1883 short int cursor_y;
1884 short int width;
1885 short int height;
1886 short int attr;
1887 short int win_left;
1888 short int win_top;
1889 short int win_right;
1890 short int win_bottom;
1891 short int max_width;
1892 short int max_height;
1893 short int font_width;
1894 short int font_height;
1895 char __pad_50[6];
1897 struct set_console_output_info_reply
1899 struct reply_header __header;
1901 #define SET_CONSOLE_OUTPUT_INFO_CURSOR_GEOM 0x01
1902 #define SET_CONSOLE_OUTPUT_INFO_CURSOR_POS 0x02
1903 #define SET_CONSOLE_OUTPUT_INFO_SIZE 0x04
1904 #define SET_CONSOLE_OUTPUT_INFO_ATTR 0x08
1905 #define SET_CONSOLE_OUTPUT_INFO_DISPLAY_WINDOW 0x10
1906 #define SET_CONSOLE_OUTPUT_INFO_MAX_SIZE 0x20
1907 #define SET_CONSOLE_OUTPUT_INFO_FONT 0x40
1911 struct get_console_output_info_request
1913 struct request_header __header;
1914 obj_handle_t handle;
1916 struct get_console_output_info_reply
1918 struct reply_header __header;
1919 short int cursor_size;
1920 short int cursor_visible;
1921 short int cursor_x;
1922 short int cursor_y;
1923 short int width;
1924 short int height;
1925 short int attr;
1926 short int win_left;
1927 short int win_top;
1928 short int win_right;
1929 short int win_bottom;
1930 short int max_width;
1931 short int max_height;
1932 short int font_width;
1933 short int font_height;
1934 char __pad_38[2];
1938 struct write_console_input_request
1940 struct request_header __header;
1941 obj_handle_t handle;
1942 /* VARARG(rec,input_records); */
1944 struct write_console_input_reply
1946 struct reply_header __header;
1947 int written;
1948 char __pad_12[4];
1953 struct read_console_input_request
1955 struct request_header __header;
1956 obj_handle_t handle;
1957 int flush;
1958 char __pad_20[4];
1960 struct read_console_input_reply
1962 struct reply_header __header;
1963 int read;
1964 /* VARARG(rec,input_records); */
1965 char __pad_12[4];
1970 struct write_console_output_request
1972 struct request_header __header;
1973 obj_handle_t handle;
1974 int x;
1975 int y;
1976 int mode;
1977 int wrap;
1978 /* VARARG(data,bytes); */
1980 struct write_console_output_reply
1982 struct reply_header __header;
1983 int written;
1984 int width;
1985 int height;
1986 char __pad_20[4];
1988 enum char_info_mode
1990 CHAR_INFO_MODE_TEXT,
1991 CHAR_INFO_MODE_ATTR,
1992 CHAR_INFO_MODE_TEXTATTR,
1993 CHAR_INFO_MODE_TEXTSTDATTR
1998 struct fill_console_output_request
2000 struct request_header __header;
2001 obj_handle_t handle;
2002 int x;
2003 int y;
2004 int mode;
2005 int count;
2006 int wrap;
2007 char_info_t data;
2009 struct fill_console_output_reply
2011 struct reply_header __header;
2012 int written;
2013 char __pad_12[4];
2018 struct read_console_output_request
2020 struct request_header __header;
2021 obj_handle_t handle;
2022 int x;
2023 int y;
2024 int mode;
2025 int wrap;
2027 struct read_console_output_reply
2029 struct reply_header __header;
2030 int width;
2031 int height;
2032 /* VARARG(data,bytes); */
2037 struct move_console_output_request
2039 struct request_header __header;
2040 obj_handle_t handle;
2041 short int x_src;
2042 short int y_src;
2043 short int x_dst;
2044 short int y_dst;
2045 short int w;
2046 short int h;
2047 char __pad_28[4];
2049 struct move_console_output_reply
2051 struct reply_header __header;
2056 struct send_console_signal_request
2058 struct request_header __header;
2059 int signal;
2060 process_id_t group_id;
2061 char __pad_20[4];
2063 struct send_console_signal_reply
2065 struct reply_header __header;
2070 struct read_directory_changes_request
2072 struct request_header __header;
2073 unsigned int filter;
2074 int subtree;
2075 int want_data;
2076 async_data_t async;
2078 struct read_directory_changes_reply
2080 struct reply_header __header;
2084 struct read_change_request
2086 struct request_header __header;
2087 obj_handle_t handle;
2089 struct read_change_reply
2091 struct reply_header __header;
2092 /* VARARG(events,filesystem_event); */
2097 struct create_mapping_request
2099 struct request_header __header;
2100 unsigned int access;
2101 unsigned int protect;
2102 char __pad_20[4];
2103 mem_size_t size;
2104 obj_handle_t file_handle;
2105 /* VARARG(objattr,object_attributes); */
2106 char __pad_36[4];
2108 struct create_mapping_reply
2110 struct reply_header __header;
2111 obj_handle_t handle;
2112 char __pad_12[4];
2115 #define VPROT_READ 0x01
2116 #define VPROT_WRITE 0x02
2117 #define VPROT_EXEC 0x04
2118 #define VPROT_WRITECOPY 0x08
2119 #define VPROT_GUARD 0x10
2120 #define VPROT_NOCACHE 0x20
2121 #define VPROT_COMMITTED 0x40
2122 #define VPROT_WRITEWATCH 0x80
2124 #define VPROT_IMAGE 0x0100
2125 #define VPROT_SYSTEM 0x0200
2126 #define VPROT_VALLOC 0x0400
2127 #define VPROT_NOEXEC 0x0800
2131 struct open_mapping_request
2133 struct request_header __header;
2134 unsigned int access;
2135 unsigned int attributes;
2136 obj_handle_t rootdir;
2137 /* VARARG(name,unicode_str); */
2139 struct open_mapping_reply
2141 struct reply_header __header;
2142 obj_handle_t handle;
2143 char __pad_12[4];
2148 struct get_mapping_info_request
2150 struct request_header __header;
2151 obj_handle_t handle;
2152 unsigned int access;
2153 char __pad_20[4];
2155 struct get_mapping_info_reply
2157 struct reply_header __header;
2158 mem_size_t size;
2159 int protect;
2160 int header_size;
2161 client_ptr_t base;
2162 obj_handle_t mapping;
2163 obj_handle_t shared_file;
2168 struct get_mapping_committed_range_request
2170 struct request_header __header;
2171 obj_handle_t handle;
2172 file_pos_t offset;
2174 struct get_mapping_committed_range_reply
2176 struct reply_header __header;
2177 mem_size_t size;
2178 int committed;
2179 char __pad_20[4];
2184 struct add_mapping_committed_range_request
2186 struct request_header __header;
2187 obj_handle_t handle;
2188 file_pos_t offset;
2189 mem_size_t size;
2191 struct add_mapping_committed_range_reply
2193 struct reply_header __header;
2197 #define SNAP_PROCESS 0x00000001
2198 #define SNAP_THREAD 0x00000002
2200 struct create_snapshot_request
2202 struct request_header __header;
2203 unsigned int attributes;
2204 unsigned int flags;
2205 char __pad_20[4];
2207 struct create_snapshot_reply
2209 struct reply_header __header;
2210 obj_handle_t handle;
2211 char __pad_12[4];
2216 struct next_process_request
2218 struct request_header __header;
2219 obj_handle_t handle;
2220 int reset;
2221 char __pad_20[4];
2223 struct next_process_reply
2225 struct reply_header __header;
2226 int count;
2227 process_id_t pid;
2228 process_id_t ppid;
2229 int threads;
2230 int priority;
2231 int handles;
2232 int unix_pid;
2233 /* VARARG(filename,unicode_str); */
2234 char __pad_36[4];
2239 struct next_thread_request
2241 struct request_header __header;
2242 obj_handle_t handle;
2243 int reset;
2244 char __pad_20[4];
2246 struct next_thread_reply
2248 struct reply_header __header;
2249 int count;
2250 process_id_t pid;
2251 thread_id_t tid;
2252 int base_pri;
2253 int delta_pri;
2254 char __pad_28[4];
2259 struct wait_debug_event_request
2261 struct request_header __header;
2262 int get_handle;
2264 struct wait_debug_event_reply
2266 struct reply_header __header;
2267 process_id_t pid;
2268 thread_id_t tid;
2269 obj_handle_t wait;
2270 /* VARARG(event,debug_event); */
2271 char __pad_20[4];
2276 struct queue_exception_event_request
2278 struct request_header __header;
2279 int first;
2280 unsigned int code;
2281 unsigned int flags;
2282 client_ptr_t record;
2283 client_ptr_t address;
2284 data_size_t len;
2285 /* VARARG(params,uints64,len); */
2286 /* VARARG(context,context); */
2287 char __pad_44[4];
2289 struct queue_exception_event_reply
2291 struct reply_header __header;
2292 obj_handle_t handle;
2293 char __pad_12[4];
2298 struct get_exception_status_request
2300 struct request_header __header;
2301 obj_handle_t handle;
2303 struct get_exception_status_reply
2305 struct reply_header __header;
2306 /* VARARG(context,context); */
2311 struct continue_debug_event_request
2313 struct request_header __header;
2314 process_id_t pid;
2315 thread_id_t tid;
2316 int status;
2318 struct continue_debug_event_reply
2320 struct reply_header __header;
2325 struct debug_process_request
2327 struct request_header __header;
2328 process_id_t pid;
2329 int attach;
2330 char __pad_20[4];
2332 struct debug_process_reply
2334 struct reply_header __header;
2339 struct debug_break_request
2341 struct request_header __header;
2342 obj_handle_t handle;
2344 struct debug_break_reply
2346 struct reply_header __header;
2347 int self;
2348 char __pad_12[4];
2353 struct set_debugger_kill_on_exit_request
2355 struct request_header __header;
2356 int kill_on_exit;
2358 struct set_debugger_kill_on_exit_reply
2360 struct reply_header __header;
2365 struct read_process_memory_request
2367 struct request_header __header;
2368 obj_handle_t handle;
2369 client_ptr_t addr;
2371 struct read_process_memory_reply
2373 struct reply_header __header;
2374 /* VARARG(data,bytes); */
2379 struct write_process_memory_request
2381 struct request_header __header;
2382 obj_handle_t handle;
2383 client_ptr_t addr;
2384 /* VARARG(data,bytes); */
2386 struct write_process_memory_reply
2388 struct reply_header __header;
2393 struct create_key_request
2395 struct request_header __header;
2396 unsigned int access;
2397 unsigned int options;
2398 /* VARARG(objattr,object_attributes); */
2399 /* VARARG(class,unicode_str); */
2400 char __pad_20[4];
2402 struct create_key_reply
2404 struct reply_header __header;
2405 obj_handle_t hkey;
2406 int created;
2410 struct open_key_request
2412 struct request_header __header;
2413 obj_handle_t parent;
2414 unsigned int access;
2415 unsigned int attributes;
2416 /* VARARG(name,unicode_str); */
2418 struct open_key_reply
2420 struct reply_header __header;
2421 obj_handle_t hkey;
2422 char __pad_12[4];
2427 struct delete_key_request
2429 struct request_header __header;
2430 obj_handle_t hkey;
2432 struct delete_key_reply
2434 struct reply_header __header;
2439 struct flush_key_request
2441 struct request_header __header;
2442 obj_handle_t hkey;
2444 struct flush_key_reply
2446 struct reply_header __header;
2451 struct enum_key_request
2453 struct request_header __header;
2454 obj_handle_t hkey;
2455 int index;
2456 int info_class;
2458 struct enum_key_reply
2460 struct reply_header __header;
2461 int subkeys;
2462 int max_subkey;
2463 int max_class;
2464 int values;
2465 int max_value;
2466 int max_data;
2467 timeout_t modif;
2468 data_size_t total;
2469 data_size_t namelen;
2470 /* VARARG(name,unicode_str,namelen); */
2471 /* VARARG(class,unicode_str); */
2476 struct set_key_value_request
2478 struct request_header __header;
2479 obj_handle_t hkey;
2480 int type;
2481 data_size_t namelen;
2482 /* VARARG(name,unicode_str,namelen); */
2483 /* VARARG(data,bytes); */
2485 struct set_key_value_reply
2487 struct reply_header __header;
2492 struct get_key_value_request
2494 struct request_header __header;
2495 obj_handle_t hkey;
2496 /* VARARG(name,unicode_str); */
2498 struct get_key_value_reply
2500 struct reply_header __header;
2501 int type;
2502 data_size_t total;
2503 /* VARARG(data,bytes); */
2508 struct enum_key_value_request
2510 struct request_header __header;
2511 obj_handle_t hkey;
2512 int index;
2513 int info_class;
2515 struct enum_key_value_reply
2517 struct reply_header __header;
2518 int type;
2519 data_size_t total;
2520 data_size_t namelen;
2521 /* VARARG(name,unicode_str,namelen); */
2522 /* VARARG(data,bytes); */
2523 char __pad_20[4];
2528 struct delete_key_value_request
2530 struct request_header __header;
2531 obj_handle_t hkey;
2532 /* VARARG(name,unicode_str); */
2534 struct delete_key_value_reply
2536 struct reply_header __header;
2541 struct load_registry_request
2543 struct request_header __header;
2544 obj_handle_t file;
2545 /* VARARG(objattr,object_attributes); */
2547 struct load_registry_reply
2549 struct reply_header __header;
2554 struct unload_registry_request
2556 struct request_header __header;
2557 obj_handle_t hkey;
2559 struct unload_registry_reply
2561 struct reply_header __header;
2566 struct save_registry_request
2568 struct request_header __header;
2569 obj_handle_t hkey;
2570 obj_handle_t file;
2571 char __pad_20[4];
2573 struct save_registry_reply
2575 struct reply_header __header;
2580 struct set_registry_notification_request
2582 struct request_header __header;
2583 obj_handle_t hkey;
2584 obj_handle_t event;
2585 int subtree;
2586 unsigned int filter;
2587 char __pad_28[4];
2589 struct set_registry_notification_reply
2591 struct reply_header __header;
2596 struct create_timer_request
2598 struct request_header __header;
2599 unsigned int access;
2600 int manual;
2601 /* VARARG(objattr,object_attributes); */
2602 char __pad_20[4];
2604 struct create_timer_reply
2606 struct reply_header __header;
2607 obj_handle_t handle;
2608 char __pad_12[4];
2613 struct open_timer_request
2615 struct request_header __header;
2616 unsigned int access;
2617 unsigned int attributes;
2618 obj_handle_t rootdir;
2619 /* VARARG(name,unicode_str); */
2621 struct open_timer_reply
2623 struct reply_header __header;
2624 obj_handle_t handle;
2625 char __pad_12[4];
2629 struct set_timer_request
2631 struct request_header __header;
2632 obj_handle_t handle;
2633 timeout_t expire;
2634 client_ptr_t callback;
2635 client_ptr_t arg;
2636 int period;
2637 char __pad_44[4];
2639 struct set_timer_reply
2641 struct reply_header __header;
2642 int signaled;
2643 char __pad_12[4];
2647 struct cancel_timer_request
2649 struct request_header __header;
2650 obj_handle_t handle;
2652 struct cancel_timer_reply
2654 struct reply_header __header;
2655 int signaled;
2656 char __pad_12[4];
2660 struct get_timer_info_request
2662 struct request_header __header;
2663 obj_handle_t handle;
2665 struct get_timer_info_reply
2667 struct reply_header __header;
2668 timeout_t when;
2669 int signaled;
2670 char __pad_20[4];
2675 struct get_thread_context_request
2677 struct request_header __header;
2678 obj_handle_t handle;
2679 unsigned int flags;
2680 int suspend;
2682 struct get_thread_context_reply
2684 struct reply_header __header;
2685 int self;
2686 /* VARARG(context,context); */
2687 char __pad_12[4];
2692 struct set_thread_context_request
2694 struct request_header __header;
2695 obj_handle_t handle;
2696 int suspend;
2697 /* VARARG(context,context); */
2698 char __pad_20[4];
2700 struct set_thread_context_reply
2702 struct reply_header __header;
2703 int self;
2704 char __pad_12[4];
2709 struct get_selector_entry_request
2711 struct request_header __header;
2712 obj_handle_t handle;
2713 int entry;
2714 char __pad_20[4];
2716 struct get_selector_entry_reply
2718 struct reply_header __header;
2719 unsigned int base;
2720 unsigned int limit;
2721 unsigned char flags;
2722 char __pad_17[7];
2727 struct add_atom_request
2729 struct request_header __header;
2730 obj_handle_t table;
2731 /* VARARG(name,unicode_str); */
2733 struct add_atom_reply
2735 struct reply_header __header;
2736 atom_t atom;
2737 char __pad_12[4];
2742 struct delete_atom_request
2744 struct request_header __header;
2745 obj_handle_t table;
2746 atom_t atom;
2747 char __pad_20[4];
2749 struct delete_atom_reply
2751 struct reply_header __header;
2756 struct find_atom_request
2758 struct request_header __header;
2759 obj_handle_t table;
2760 /* VARARG(name,unicode_str); */
2762 struct find_atom_reply
2764 struct reply_header __header;
2765 atom_t atom;
2766 char __pad_12[4];
2771 struct get_atom_information_request
2773 struct request_header __header;
2774 obj_handle_t table;
2775 atom_t atom;
2776 char __pad_20[4];
2778 struct get_atom_information_reply
2780 struct reply_header __header;
2781 int count;
2782 int pinned;
2783 data_size_t total;
2784 /* VARARG(name,unicode_str); */
2785 char __pad_20[4];
2790 struct set_atom_information_request
2792 struct request_header __header;
2793 obj_handle_t table;
2794 atom_t atom;
2795 int pinned;
2797 struct set_atom_information_reply
2799 struct reply_header __header;
2804 struct empty_atom_table_request
2806 struct request_header __header;
2807 obj_handle_t table;
2808 int if_pinned;
2809 char __pad_20[4];
2811 struct empty_atom_table_reply
2813 struct reply_header __header;
2818 struct init_atom_table_request
2820 struct request_header __header;
2821 int entries;
2823 struct init_atom_table_reply
2825 struct reply_header __header;
2826 obj_handle_t table;
2827 char __pad_12[4];
2832 struct get_msg_queue_request
2834 struct request_header __header;
2835 char __pad_12[4];
2837 struct get_msg_queue_reply
2839 struct reply_header __header;
2840 obj_handle_t handle;
2841 char __pad_12[4];
2846 struct set_queue_fd_request
2848 struct request_header __header;
2849 obj_handle_t handle;
2851 struct set_queue_fd_reply
2853 struct reply_header __header;
2858 struct set_queue_mask_request
2860 struct request_header __header;
2861 unsigned int wake_mask;
2862 unsigned int changed_mask;
2863 int skip_wait;
2865 struct set_queue_mask_reply
2867 struct reply_header __header;
2868 unsigned int wake_bits;
2869 unsigned int changed_bits;
2874 struct get_queue_status_request
2876 struct request_header __header;
2877 unsigned int clear_bits;
2879 struct get_queue_status_reply
2881 struct reply_header __header;
2882 unsigned int wake_bits;
2883 unsigned int changed_bits;
2888 struct get_process_idle_event_request
2890 struct request_header __header;
2891 obj_handle_t handle;
2893 struct get_process_idle_event_reply
2895 struct reply_header __header;
2896 obj_handle_t event;
2897 char __pad_12[4];
2902 struct send_message_request
2904 struct request_header __header;
2905 thread_id_t id;
2906 int type;
2907 int flags;
2908 user_handle_t win;
2909 unsigned int msg;
2910 lparam_t wparam;
2911 lparam_t lparam;
2912 timeout_t timeout;
2913 /* VARARG(data,message_data); */
2915 struct send_message_reply
2917 struct reply_header __header;
2920 struct post_quit_message_request
2922 struct request_header __header;
2923 int exit_code;
2925 struct post_quit_message_reply
2927 struct reply_header __header;
2930 enum message_type
2932 MSG_ASCII,
2933 MSG_UNICODE,
2934 MSG_NOTIFY,
2935 MSG_CALLBACK,
2936 MSG_CALLBACK_RESULT,
2937 MSG_OTHER_PROCESS,
2938 MSG_POSTED,
2939 MSG_HARDWARE,
2940 MSG_WINEVENT,
2941 MSG_HOOK_LL
2943 #define SEND_MSG_ABORT_IF_HUNG 0x01
2947 struct send_hardware_message_request
2949 struct request_header __header;
2950 user_handle_t win;
2951 hw_input_t input;
2952 unsigned int flags;
2953 char __pad_52[4];
2955 struct send_hardware_message_reply
2957 struct reply_header __header;
2958 int wait;
2959 int prev_x;
2960 int prev_y;
2961 int new_x;
2962 int new_y;
2963 /* VARARG(keystate,bytes); */
2964 char __pad_28[4];
2966 #define SEND_HWMSG_INJECTED 0x01
2970 struct get_message_request
2972 struct request_header __header;
2973 unsigned int flags;
2974 user_handle_t get_win;
2975 unsigned int get_first;
2976 unsigned int get_last;
2977 unsigned int hw_id;
2978 unsigned int wake_mask;
2979 unsigned int changed_mask;
2981 struct get_message_reply
2983 struct reply_header __header;
2984 user_handle_t win;
2985 unsigned int msg;
2986 lparam_t wparam;
2987 lparam_t lparam;
2988 int type;
2989 int x;
2990 int y;
2991 unsigned int time;
2992 unsigned int active_hooks;
2993 data_size_t total;
2994 /* VARARG(data,message_data); */
2999 struct reply_message_request
3001 struct request_header __header;
3002 int remove;
3003 lparam_t result;
3004 /* VARARG(data,bytes); */
3006 struct reply_message_reply
3008 struct reply_header __header;
3013 struct accept_hardware_message_request
3015 struct request_header __header;
3016 unsigned int hw_id;
3017 int remove;
3018 char __pad_20[4];
3020 struct accept_hardware_message_reply
3022 struct reply_header __header;
3027 struct get_message_reply_request
3029 struct request_header __header;
3030 int cancel;
3032 struct get_message_reply_reply
3034 struct reply_header __header;
3035 lparam_t result;
3036 /* VARARG(data,bytes); */
3041 struct set_win_timer_request
3043 struct request_header __header;
3044 user_handle_t win;
3045 unsigned int msg;
3046 unsigned int rate;
3047 lparam_t id;
3048 lparam_t lparam;
3050 struct set_win_timer_reply
3052 struct reply_header __header;
3053 lparam_t id;
3058 struct kill_win_timer_request
3060 struct request_header __header;
3061 user_handle_t win;
3062 lparam_t id;
3063 unsigned int msg;
3064 char __pad_28[4];
3066 struct kill_win_timer_reply
3068 struct reply_header __header;
3073 struct is_window_hung_request
3075 struct request_header __header;
3076 user_handle_t win;
3078 struct is_window_hung_reply
3080 struct reply_header __header;
3081 int is_hung;
3082 char __pad_12[4];
3087 struct get_serial_info_request
3089 struct request_header __header;
3090 obj_handle_t handle;
3091 int flags;
3092 char __pad_20[4];
3094 struct get_serial_info_reply
3096 struct reply_header __header;
3097 unsigned int readinterval;
3098 unsigned int readconst;
3099 unsigned int readmult;
3100 unsigned int writeconst;
3101 unsigned int writemult;
3102 unsigned int eventmask;
3103 unsigned int cookie;
3104 unsigned int pending_write;
3109 struct set_serial_info_request
3111 struct request_header __header;
3112 obj_handle_t handle;
3113 int flags;
3114 unsigned int readinterval;
3115 unsigned int readconst;
3116 unsigned int readmult;
3117 unsigned int writeconst;
3118 unsigned int writemult;
3119 unsigned int eventmask;
3120 char __pad_44[4];
3122 struct set_serial_info_reply
3124 struct reply_header __header;
3126 #define SERIALINFO_SET_TIMEOUTS 0x01
3127 #define SERIALINFO_SET_MASK 0x02
3128 #define SERIALINFO_PENDING_WRITE 0x04
3129 #define SERIALINFO_PENDING_WAIT 0x08
3133 struct register_async_request
3135 struct request_header __header;
3136 int type;
3137 async_data_t async;
3138 int count;
3139 char __pad_60[4];
3141 struct register_async_reply
3143 struct reply_header __header;
3145 #define ASYNC_TYPE_READ 0x01
3146 #define ASYNC_TYPE_WRITE 0x02
3147 #define ASYNC_TYPE_WAIT 0x03
3151 struct cancel_async_request
3153 struct request_header __header;
3154 obj_handle_t handle;
3155 client_ptr_t iosb;
3156 int only_thread;
3157 char __pad_28[4];
3159 struct cancel_async_reply
3161 struct reply_header __header;
3166 struct read_request
3168 struct request_header __header;
3169 int blocking;
3170 async_data_t async;
3171 file_pos_t pos;
3173 struct read_reply
3175 struct reply_header __header;
3176 obj_handle_t wait;
3177 unsigned int options;
3178 /* VARARG(data,bytes); */
3183 struct write_request
3185 struct request_header __header;
3186 int blocking;
3187 async_data_t async;
3188 file_pos_t pos;
3189 /* VARARG(data,bytes); */
3191 struct write_reply
3193 struct reply_header __header;
3194 obj_handle_t wait;
3195 unsigned int options;
3196 data_size_t size;
3197 char __pad_20[4];
3202 struct ioctl_request
3204 struct request_header __header;
3205 ioctl_code_t code;
3206 async_data_t async;
3207 int blocking;
3208 /* VARARG(in_data,bytes); */
3209 char __pad_60[4];
3211 struct ioctl_reply
3213 struct reply_header __header;
3214 obj_handle_t wait;
3215 unsigned int options;
3216 /* VARARG(out_data,bytes); */
3221 struct set_irp_result_request
3223 struct request_header __header;
3224 obj_handle_t handle;
3225 unsigned int status;
3226 data_size_t size;
3227 client_ptr_t file_ptr;
3228 /* VARARG(data,bytes); */
3230 struct set_irp_result_reply
3232 struct reply_header __header;
3237 struct get_irp_result_request
3239 struct request_header __header;
3240 obj_handle_t handle;
3241 client_ptr_t user_arg;
3243 struct get_irp_result_reply
3245 struct reply_header __header;
3246 data_size_t size;
3247 /* VARARG(out_data,bytes); */
3248 char __pad_12[4];
3253 struct create_named_pipe_request
3255 struct request_header __header;
3256 unsigned int access;
3257 unsigned int options;
3258 unsigned int sharing;
3259 unsigned int maxinstances;
3260 unsigned int outsize;
3261 unsigned int insize;
3262 char __pad_36[4];
3263 timeout_t timeout;
3264 unsigned int flags;
3265 /* VARARG(objattr,object_attributes); */
3266 char __pad_52[4];
3268 struct create_named_pipe_reply
3270 struct reply_header __header;
3271 obj_handle_t handle;
3272 char __pad_12[4];
3276 #define NAMED_PIPE_MESSAGE_STREAM_WRITE 0x0001
3277 #define NAMED_PIPE_MESSAGE_STREAM_READ 0x0002
3278 #define NAMED_PIPE_NONBLOCKING_MODE 0x0004
3279 #define NAMED_PIPE_SERVER_END 0x8000
3282 struct get_named_pipe_info_request
3284 struct request_header __header;
3285 obj_handle_t handle;
3287 struct get_named_pipe_info_reply
3289 struct reply_header __header;
3290 unsigned int flags;
3291 unsigned int sharing;
3292 unsigned int maxinstances;
3293 unsigned int instances;
3294 unsigned int outsize;
3295 unsigned int insize;
3299 struct set_named_pipe_info_request
3301 struct request_header __header;
3302 obj_handle_t handle;
3303 unsigned int flags;
3304 char __pad_20[4];
3306 struct set_named_pipe_info_reply
3308 struct reply_header __header;
3312 struct create_window_request
3314 struct request_header __header;
3315 user_handle_t parent;
3316 user_handle_t owner;
3317 atom_t atom;
3318 mod_handle_t instance;
3319 /* VARARG(class,unicode_str); */
3321 struct create_window_reply
3323 struct reply_header __header;
3324 user_handle_t handle;
3325 user_handle_t parent;
3326 user_handle_t owner;
3327 int extra;
3328 client_ptr_t class_ptr;
3333 struct destroy_window_request
3335 struct request_header __header;
3336 user_handle_t handle;
3338 struct destroy_window_reply
3340 struct reply_header __header;
3345 struct get_desktop_window_request
3347 struct request_header __header;
3348 int force;
3350 struct get_desktop_window_reply
3352 struct reply_header __header;
3353 user_handle_t top_window;
3354 user_handle_t msg_window;
3359 struct set_window_owner_request
3361 struct request_header __header;
3362 user_handle_t handle;
3363 user_handle_t owner;
3364 char __pad_20[4];
3366 struct set_window_owner_reply
3368 struct reply_header __header;
3369 user_handle_t full_owner;
3370 user_handle_t prev_owner;
3375 struct get_window_info_request
3377 struct request_header __header;
3378 user_handle_t handle;
3380 struct get_window_info_reply
3382 struct reply_header __header;
3383 user_handle_t full_handle;
3384 user_handle_t last_active;
3385 process_id_t pid;
3386 thread_id_t tid;
3387 atom_t atom;
3388 int is_unicode;
3393 struct set_window_info_request
3395 struct request_header __header;
3396 unsigned short flags;
3397 short int is_unicode;
3398 user_handle_t handle;
3399 unsigned int style;
3400 unsigned int ex_style;
3401 unsigned int id;
3402 mod_handle_t instance;
3403 lparam_t user_data;
3404 int extra_offset;
3405 data_size_t extra_size;
3406 lparam_t extra_value;
3408 struct set_window_info_reply
3410 struct reply_header __header;
3411 unsigned int old_style;
3412 unsigned int old_ex_style;
3413 mod_handle_t old_instance;
3414 lparam_t old_user_data;
3415 lparam_t old_extra_value;
3416 unsigned int old_id;
3417 char __pad_44[4];
3419 #define SET_WIN_STYLE 0x01
3420 #define SET_WIN_EXSTYLE 0x02
3421 #define SET_WIN_ID 0x04
3422 #define SET_WIN_INSTANCE 0x08
3423 #define SET_WIN_USERDATA 0x10
3424 #define SET_WIN_EXTRA 0x20
3425 #define SET_WIN_UNICODE 0x40
3429 struct set_parent_request
3431 struct request_header __header;
3432 user_handle_t handle;
3433 user_handle_t parent;
3434 char __pad_20[4];
3436 struct set_parent_reply
3438 struct reply_header __header;
3439 user_handle_t old_parent;
3440 user_handle_t full_parent;
3445 struct get_window_parents_request
3447 struct request_header __header;
3448 user_handle_t handle;
3450 struct get_window_parents_reply
3452 struct reply_header __header;
3453 int count;
3454 /* VARARG(parents,user_handles); */
3455 char __pad_12[4];
3460 struct get_window_children_request
3462 struct request_header __header;
3463 obj_handle_t desktop;
3464 user_handle_t parent;
3465 atom_t atom;
3466 thread_id_t tid;
3467 /* VARARG(class,unicode_str); */
3468 char __pad_28[4];
3470 struct get_window_children_reply
3472 struct reply_header __header;
3473 int count;
3474 /* VARARG(children,user_handles); */
3475 char __pad_12[4];
3480 struct get_window_children_from_point_request
3482 struct request_header __header;
3483 user_handle_t parent;
3484 int x;
3485 int y;
3487 struct get_window_children_from_point_reply
3489 struct reply_header __header;
3490 int count;
3491 /* VARARG(children,user_handles); */
3492 char __pad_12[4];
3497 struct get_window_tree_request
3499 struct request_header __header;
3500 user_handle_t handle;
3502 struct get_window_tree_reply
3504 struct reply_header __header;
3505 user_handle_t parent;
3506 user_handle_t owner;
3507 user_handle_t next_sibling;
3508 user_handle_t prev_sibling;
3509 user_handle_t first_sibling;
3510 user_handle_t last_sibling;
3511 user_handle_t first_child;
3512 user_handle_t last_child;
3516 struct set_window_pos_request
3518 struct request_header __header;
3519 unsigned short swp_flags;
3520 unsigned short paint_flags;
3521 user_handle_t handle;
3522 user_handle_t previous;
3523 rectangle_t window;
3524 rectangle_t client;
3525 /* VARARG(valid,rectangles); */
3527 struct set_window_pos_reply
3529 struct reply_header __header;
3530 unsigned int new_style;
3531 unsigned int new_ex_style;
3532 user_handle_t surface_win;
3533 char __pad_20[4];
3535 #define SET_WINPOS_PAINT_SURFACE 0x01
3536 #define SET_WINPOS_PIXEL_FORMAT 0x02
3539 struct get_window_rectangles_request
3541 struct request_header __header;
3542 user_handle_t handle;
3543 int relative;
3544 char __pad_20[4];
3546 struct get_window_rectangles_reply
3548 struct reply_header __header;
3549 rectangle_t window;
3550 rectangle_t visible;
3551 rectangle_t client;
3553 enum coords_relative
3555 COORDS_CLIENT,
3556 COORDS_WINDOW,
3557 COORDS_PARENT,
3558 COORDS_SCREEN
3563 struct get_window_text_request
3565 struct request_header __header;
3566 user_handle_t handle;
3568 struct get_window_text_reply
3570 struct reply_header __header;
3571 /* VARARG(text,unicode_str); */
3576 struct set_window_text_request
3578 struct request_header __header;
3579 user_handle_t handle;
3580 /* VARARG(text,unicode_str); */
3582 struct set_window_text_reply
3584 struct reply_header __header;
3589 struct get_windows_offset_request
3591 struct request_header __header;
3592 user_handle_t from;
3593 user_handle_t to;
3594 char __pad_20[4];
3596 struct get_windows_offset_reply
3598 struct reply_header __header;
3599 int x;
3600 int y;
3601 int mirror;
3602 char __pad_20[4];
3607 struct get_visible_region_request
3609 struct request_header __header;
3610 user_handle_t window;
3611 unsigned int flags;
3612 char __pad_20[4];
3614 struct get_visible_region_reply
3616 struct reply_header __header;
3617 user_handle_t top_win;
3618 rectangle_t top_rect;
3619 rectangle_t win_rect;
3620 unsigned int paint_flags;
3621 data_size_t total_size;
3622 /* VARARG(region,rectangles); */
3623 char __pad_52[4];
3628 struct get_surface_region_request
3630 struct request_header __header;
3631 user_handle_t window;
3633 struct get_surface_region_reply
3635 struct reply_header __header;
3636 rectangle_t visible_rect;
3637 data_size_t total_size;
3638 /* VARARG(region,rectangles); */
3639 char __pad_28[4];
3644 struct get_window_region_request
3646 struct request_header __header;
3647 user_handle_t window;
3649 struct get_window_region_reply
3651 struct reply_header __header;
3652 data_size_t total_size;
3653 /* VARARG(region,rectangles); */
3654 char __pad_12[4];
3659 struct set_window_region_request
3661 struct request_header __header;
3662 user_handle_t window;
3663 int redraw;
3664 /* VARARG(region,rectangles); */
3665 char __pad_20[4];
3667 struct set_window_region_reply
3669 struct reply_header __header;
3674 struct get_update_region_request
3676 struct request_header __header;
3677 user_handle_t window;
3678 user_handle_t from_child;
3679 unsigned int flags;
3681 struct get_update_region_reply
3683 struct reply_header __header;
3684 user_handle_t child;
3685 unsigned int flags;
3686 data_size_t total_size;
3687 /* VARARG(region,rectangles); */
3688 char __pad_20[4];
3690 #define UPDATE_NONCLIENT 0x01
3691 #define UPDATE_ERASE 0x02
3692 #define UPDATE_PAINT 0x04
3693 #define UPDATE_INTERNALPAINT 0x08
3694 #define UPDATE_ALLCHILDREN 0x10
3695 #define UPDATE_NOCHILDREN 0x20
3696 #define UPDATE_NOREGION 0x40
3697 #define UPDATE_DELAYED_ERASE 0x80
3701 struct update_window_zorder_request
3703 struct request_header __header;
3704 user_handle_t window;
3705 rectangle_t rect;
3707 struct update_window_zorder_reply
3709 struct reply_header __header;
3714 struct redraw_window_request
3716 struct request_header __header;
3717 user_handle_t window;
3718 unsigned int flags;
3719 /* VARARG(region,rectangles); */
3720 char __pad_20[4];
3722 struct redraw_window_reply
3724 struct reply_header __header;
3729 struct set_window_property_request
3731 struct request_header __header;
3732 user_handle_t window;
3733 lparam_t data;
3734 atom_t atom;
3735 /* VARARG(name,unicode_str); */
3736 char __pad_28[4];
3738 struct set_window_property_reply
3740 struct reply_header __header;
3745 struct remove_window_property_request
3747 struct request_header __header;
3748 user_handle_t window;
3749 atom_t atom;
3750 /* VARARG(name,unicode_str); */
3751 char __pad_20[4];
3753 struct remove_window_property_reply
3755 struct reply_header __header;
3756 lparam_t data;
3761 struct get_window_property_request
3763 struct request_header __header;
3764 user_handle_t window;
3765 atom_t atom;
3766 /* VARARG(name,unicode_str); */
3767 char __pad_20[4];
3769 struct get_window_property_reply
3771 struct reply_header __header;
3772 lparam_t data;
3777 struct get_window_properties_request
3779 struct request_header __header;
3780 user_handle_t window;
3782 struct get_window_properties_reply
3784 struct reply_header __header;
3785 int total;
3786 /* VARARG(props,properties); */
3787 char __pad_12[4];
3792 struct create_winstation_request
3794 struct request_header __header;
3795 unsigned int flags;
3796 unsigned int access;
3797 unsigned int attributes;
3798 obj_handle_t rootdir;
3799 /* VARARG(name,unicode_str); */
3800 char __pad_28[4];
3802 struct create_winstation_reply
3804 struct reply_header __header;
3805 obj_handle_t handle;
3806 char __pad_12[4];
3811 struct open_winstation_request
3813 struct request_header __header;
3814 unsigned int access;
3815 unsigned int attributes;
3816 obj_handle_t rootdir;
3817 /* VARARG(name,unicode_str); */
3819 struct open_winstation_reply
3821 struct reply_header __header;
3822 obj_handle_t handle;
3823 char __pad_12[4];
3828 struct close_winstation_request
3830 struct request_header __header;
3831 obj_handle_t handle;
3833 struct close_winstation_reply
3835 struct reply_header __header;
3840 struct get_process_winstation_request
3842 struct request_header __header;
3843 char __pad_12[4];
3845 struct get_process_winstation_reply
3847 struct reply_header __header;
3848 obj_handle_t handle;
3849 char __pad_12[4];
3854 struct set_process_winstation_request
3856 struct request_header __header;
3857 obj_handle_t handle;
3859 struct set_process_winstation_reply
3861 struct reply_header __header;
3866 struct enum_winstation_request
3868 struct request_header __header;
3869 unsigned int index;
3871 struct enum_winstation_reply
3873 struct reply_header __header;
3874 unsigned int next;
3875 /* VARARG(name,unicode_str); */
3876 char __pad_12[4];
3881 struct create_desktop_request
3883 struct request_header __header;
3884 unsigned int flags;
3885 unsigned int access;
3886 unsigned int attributes;
3887 /* VARARG(name,unicode_str); */
3889 struct create_desktop_reply
3891 struct reply_header __header;
3892 obj_handle_t handle;
3893 char __pad_12[4];
3898 struct open_desktop_request
3900 struct request_header __header;
3901 obj_handle_t winsta;
3902 unsigned int flags;
3903 unsigned int access;
3904 unsigned int attributes;
3905 /* VARARG(name,unicode_str); */
3906 char __pad_28[4];
3908 struct open_desktop_reply
3910 struct reply_header __header;
3911 obj_handle_t handle;
3912 char __pad_12[4];
3917 struct open_input_desktop_request
3919 struct request_header __header;
3920 unsigned int flags;
3921 unsigned int access;
3922 unsigned int attributes;
3924 struct open_input_desktop_reply
3926 struct reply_header __header;
3927 obj_handle_t handle;
3928 char __pad_12[4];
3933 struct close_desktop_request
3935 struct request_header __header;
3936 obj_handle_t handle;
3938 struct close_desktop_reply
3940 struct reply_header __header;
3945 struct get_thread_desktop_request
3947 struct request_header __header;
3948 thread_id_t tid;
3950 struct get_thread_desktop_reply
3952 struct reply_header __header;
3953 obj_handle_t handle;
3954 char __pad_12[4];
3959 struct set_thread_desktop_request
3961 struct request_header __header;
3962 obj_handle_t handle;
3964 struct set_thread_desktop_reply
3966 struct reply_header __header;
3971 struct enum_desktop_request
3973 struct request_header __header;
3974 obj_handle_t winstation;
3975 unsigned int index;
3976 char __pad_20[4];
3978 struct enum_desktop_reply
3980 struct reply_header __header;
3981 unsigned int next;
3982 /* VARARG(name,unicode_str); */
3983 char __pad_12[4];
3988 struct set_user_object_info_request
3990 struct request_header __header;
3991 obj_handle_t handle;
3992 unsigned int flags;
3993 unsigned int obj_flags;
3995 struct set_user_object_info_reply
3997 struct reply_header __header;
3998 int is_desktop;
3999 unsigned int old_obj_flags;
4000 /* VARARG(name,unicode_str); */
4002 #define SET_USER_OBJECT_SET_FLAGS 1
4003 #define SET_USER_OBJECT_GET_FULL_NAME 2
4007 struct register_hotkey_request
4009 struct request_header __header;
4010 user_handle_t window;
4011 int id;
4012 unsigned int flags;
4013 unsigned int vkey;
4014 char __pad_28[4];
4016 struct register_hotkey_reply
4018 struct reply_header __header;
4019 int replaced;
4020 unsigned int flags;
4021 unsigned int vkey;
4022 char __pad_20[4];
4027 struct unregister_hotkey_request
4029 struct request_header __header;
4030 user_handle_t window;
4031 int id;
4032 char __pad_20[4];
4034 struct unregister_hotkey_reply
4036 struct reply_header __header;
4037 unsigned int flags;
4038 unsigned int vkey;
4043 struct attach_thread_input_request
4045 struct request_header __header;
4046 thread_id_t tid_from;
4047 thread_id_t tid_to;
4048 int attach;
4050 struct attach_thread_input_reply
4052 struct reply_header __header;
4057 struct get_thread_input_request
4059 struct request_header __header;
4060 thread_id_t tid;
4062 struct get_thread_input_reply
4064 struct reply_header __header;
4065 user_handle_t focus;
4066 user_handle_t capture;
4067 user_handle_t active;
4068 user_handle_t foreground;
4069 user_handle_t menu_owner;
4070 user_handle_t move_size;
4071 user_handle_t caret;
4072 user_handle_t cursor;
4073 int show_count;
4074 rectangle_t rect;
4075 char __pad_60[4];
4080 struct get_last_input_time_request
4082 struct request_header __header;
4083 char __pad_12[4];
4085 struct get_last_input_time_reply
4087 struct reply_header __header;
4088 unsigned int time;
4089 char __pad_12[4];
4094 struct get_key_state_request
4096 struct request_header __header;
4097 thread_id_t tid;
4098 int key;
4099 char __pad_20[4];
4101 struct get_key_state_reply
4103 struct reply_header __header;
4104 unsigned char state;
4105 /* VARARG(keystate,bytes); */
4106 char __pad_9[7];
4110 struct set_key_state_request
4112 struct request_header __header;
4113 thread_id_t tid;
4114 int async;
4115 /* VARARG(keystate,bytes); */
4116 char __pad_20[4];
4118 struct set_key_state_reply
4120 struct reply_header __header;
4124 struct set_foreground_window_request
4126 struct request_header __header;
4127 user_handle_t handle;
4129 struct set_foreground_window_reply
4131 struct reply_header __header;
4132 user_handle_t previous;
4133 int send_msg_old;
4134 int send_msg_new;
4135 char __pad_20[4];
4139 struct set_focus_window_request
4141 struct request_header __header;
4142 user_handle_t handle;
4144 struct set_focus_window_reply
4146 struct reply_header __header;
4147 user_handle_t previous;
4148 char __pad_12[4];
4152 struct set_active_window_request
4154 struct request_header __header;
4155 user_handle_t handle;
4157 struct set_active_window_reply
4159 struct reply_header __header;
4160 user_handle_t previous;
4161 char __pad_12[4];
4165 struct set_capture_window_request
4167 struct request_header __header;
4168 user_handle_t handle;
4169 unsigned int flags;
4170 char __pad_20[4];
4172 struct set_capture_window_reply
4174 struct reply_header __header;
4175 user_handle_t previous;
4176 user_handle_t full_handle;
4178 #define CAPTURE_MENU 0x01
4179 #define CAPTURE_MOVESIZE 0x02
4183 struct set_caret_window_request
4185 struct request_header __header;
4186 user_handle_t handle;
4187 int width;
4188 int height;
4190 struct set_caret_window_reply
4192 struct reply_header __header;
4193 user_handle_t previous;
4194 rectangle_t old_rect;
4195 int old_hide;
4196 int old_state;
4197 char __pad_36[4];
4202 struct set_caret_info_request
4204 struct request_header __header;
4205 unsigned int flags;
4206 user_handle_t handle;
4207 int x;
4208 int y;
4209 int hide;
4210 int state;
4211 char __pad_36[4];
4213 struct set_caret_info_reply
4215 struct reply_header __header;
4216 user_handle_t full_handle;
4217 rectangle_t old_rect;
4218 int old_hide;
4219 int old_state;
4220 char __pad_36[4];
4222 #define SET_CARET_POS 0x01
4223 #define SET_CARET_HIDE 0x02
4224 #define SET_CARET_STATE 0x04
4225 enum caret_state
4227 CARET_STATE_OFF,
4228 CARET_STATE_ON,
4229 CARET_STATE_TOGGLE,
4230 CARET_STATE_ON_IF_MOVED
4235 struct set_hook_request
4237 struct request_header __header;
4238 int id;
4239 process_id_t pid;
4240 thread_id_t tid;
4241 int event_min;
4242 int event_max;
4243 client_ptr_t proc;
4244 int flags;
4245 int unicode;
4246 /* VARARG(module,unicode_str); */
4248 struct set_hook_reply
4250 struct reply_header __header;
4251 user_handle_t handle;
4252 unsigned int active_hooks;
4257 struct remove_hook_request
4259 struct request_header __header;
4260 user_handle_t handle;
4261 client_ptr_t proc;
4262 int id;
4263 char __pad_28[4];
4265 struct remove_hook_reply
4267 struct reply_header __header;
4268 unsigned int active_hooks;
4269 char __pad_12[4];
4274 struct start_hook_chain_request
4276 struct request_header __header;
4277 int id;
4278 int event;
4279 user_handle_t window;
4280 int object_id;
4281 int child_id;
4283 struct start_hook_chain_reply
4285 struct reply_header __header;
4286 user_handle_t handle;
4287 process_id_t pid;
4288 thread_id_t tid;
4289 int unicode;
4290 client_ptr_t proc;
4291 unsigned int active_hooks;
4292 /* VARARG(module,unicode_str); */
4293 char __pad_36[4];
4298 struct finish_hook_chain_request
4300 struct request_header __header;
4301 int id;
4303 struct finish_hook_chain_reply
4305 struct reply_header __header;
4310 struct get_hook_info_request
4312 struct request_header __header;
4313 user_handle_t handle;
4314 int get_next;
4315 int event;
4316 user_handle_t window;
4317 int object_id;
4318 int child_id;
4319 char __pad_36[4];
4321 struct get_hook_info_reply
4323 struct reply_header __header;
4324 user_handle_t handle;
4325 int id;
4326 process_id_t pid;
4327 thread_id_t tid;
4328 client_ptr_t proc;
4329 int unicode;
4330 /* VARARG(module,unicode_str); */
4331 char __pad_36[4];
4336 struct create_class_request
4338 struct request_header __header;
4339 int local;
4340 atom_t atom;
4341 unsigned int style;
4342 mod_handle_t instance;
4343 int extra;
4344 int win_extra;
4345 client_ptr_t client_ptr;
4346 /* VARARG(name,unicode_str); */
4348 struct create_class_reply
4350 struct reply_header __header;
4351 atom_t atom;
4352 char __pad_12[4];
4357 struct destroy_class_request
4359 struct request_header __header;
4360 atom_t atom;
4361 mod_handle_t instance;
4362 /* VARARG(name,unicode_str); */
4364 struct destroy_class_reply
4366 struct reply_header __header;
4367 client_ptr_t client_ptr;
4372 struct set_class_info_request
4374 struct request_header __header;
4375 user_handle_t window;
4376 unsigned int flags;
4377 atom_t atom;
4378 unsigned int style;
4379 int win_extra;
4380 mod_handle_t instance;
4381 int extra_offset;
4382 data_size_t extra_size;
4383 lparam_t extra_value;
4385 struct set_class_info_reply
4387 struct reply_header __header;
4388 atom_t old_atom;
4389 unsigned int old_style;
4390 int old_extra;
4391 int old_win_extra;
4392 mod_handle_t old_instance;
4393 lparam_t old_extra_value;
4395 #define SET_CLASS_ATOM 0x0001
4396 #define SET_CLASS_STYLE 0x0002
4397 #define SET_CLASS_WINEXTRA 0x0004
4398 #define SET_CLASS_INSTANCE 0x0008
4399 #define SET_CLASS_EXTRA 0x0010
4403 struct set_clipboard_info_request
4405 struct request_header __header;
4406 unsigned int flags;
4407 user_handle_t clipboard;
4408 user_handle_t owner;
4409 user_handle_t viewer;
4410 unsigned int seqno;
4412 struct set_clipboard_info_reply
4414 struct reply_header __header;
4415 unsigned int flags;
4416 user_handle_t old_clipboard;
4417 user_handle_t old_owner;
4418 user_handle_t old_viewer;
4419 unsigned int seqno;
4420 char __pad_28[4];
4423 #define SET_CB_OPEN 0x001
4424 #define SET_CB_VIEWER 0x004
4425 #define SET_CB_SEQNO 0x008
4426 #define SET_CB_RELOWNER 0x010
4427 #define SET_CB_CLOSE 0x020
4428 #define CB_OPEN 0x040
4429 #define CB_OWNER 0x080
4430 #define CB_PROCESS 0x100
4434 struct empty_clipboard_request
4436 struct request_header __header;
4437 char __pad_12[4];
4439 struct empty_clipboard_reply
4441 struct reply_header __header;
4446 struct open_token_request
4448 struct request_header __header;
4449 obj_handle_t handle;
4450 unsigned int access;
4451 unsigned int attributes;
4452 unsigned int flags;
4453 char __pad_28[4];
4455 struct open_token_reply
4457 struct reply_header __header;
4458 obj_handle_t token;
4459 char __pad_12[4];
4461 #define OPEN_TOKEN_THREAD 1
4462 #define OPEN_TOKEN_AS_SELF 2
4466 struct set_global_windows_request
4468 struct request_header __header;
4469 unsigned int flags;
4470 user_handle_t shell_window;
4471 user_handle_t shell_listview;
4472 user_handle_t progman_window;
4473 user_handle_t taskman_window;
4475 struct set_global_windows_reply
4477 struct reply_header __header;
4478 user_handle_t old_shell_window;
4479 user_handle_t old_shell_listview;
4480 user_handle_t old_progman_window;
4481 user_handle_t old_taskman_window;
4483 #define SET_GLOBAL_SHELL_WINDOWS 0x01
4484 #define SET_GLOBAL_PROGMAN_WINDOW 0x02
4485 #define SET_GLOBAL_TASKMAN_WINDOW 0x04
4488 struct adjust_token_privileges_request
4490 struct request_header __header;
4491 obj_handle_t handle;
4492 int disable_all;
4493 int get_modified_state;
4494 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4496 struct adjust_token_privileges_reply
4498 struct reply_header __header;
4499 unsigned int len;
4500 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4501 char __pad_12[4];
4505 struct get_token_privileges_request
4507 struct request_header __header;
4508 obj_handle_t handle;
4510 struct get_token_privileges_reply
4512 struct reply_header __header;
4513 unsigned int len;
4514 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4515 char __pad_12[4];
4519 struct check_token_privileges_request
4521 struct request_header __header;
4522 obj_handle_t handle;
4523 int all_required;
4524 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4525 char __pad_20[4];
4527 struct check_token_privileges_reply
4529 struct reply_header __header;
4530 int has_privileges;
4531 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4532 char __pad_12[4];
4535 struct duplicate_token_request
4537 struct request_header __header;
4538 obj_handle_t handle;
4539 unsigned int access;
4540 unsigned int attributes;
4541 int primary;
4542 int impersonation_level;
4544 struct duplicate_token_reply
4546 struct reply_header __header;
4547 obj_handle_t new_handle;
4548 char __pad_12[4];
4551 struct access_check_request
4553 struct request_header __header;
4554 obj_handle_t handle;
4555 unsigned int desired_access;
4556 unsigned int mapping_read;
4557 unsigned int mapping_write;
4558 unsigned int mapping_execute;
4559 unsigned int mapping_all;
4560 /* VARARG(sd,security_descriptor); */
4561 char __pad_36[4];
4563 struct access_check_reply
4565 struct reply_header __header;
4566 unsigned int access_granted;
4567 unsigned int access_status;
4568 unsigned int privileges_len;
4569 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4570 char __pad_20[4];
4573 struct get_token_sid_request
4575 struct request_header __header;
4576 obj_handle_t handle;
4577 unsigned int which_sid;
4578 char __pad_20[4];
4580 struct get_token_sid_reply
4582 struct reply_header __header;
4583 data_size_t sid_len;
4584 /* VARARG(sid,SID); */
4585 char __pad_12[4];
4588 struct get_token_groups_request
4590 struct request_header __header;
4591 obj_handle_t handle;
4593 struct get_token_groups_reply
4595 struct reply_header __header;
4596 data_size_t user_len;
4597 /* VARARG(user,token_groups); */
4598 char __pad_12[4];
4601 struct get_token_default_dacl_request
4603 struct request_header __header;
4604 obj_handle_t handle;
4606 struct get_token_default_dacl_reply
4608 struct reply_header __header;
4609 data_size_t acl_len;
4610 /* VARARG(acl,ACL); */
4611 char __pad_12[4];
4614 struct set_token_default_dacl_request
4616 struct request_header __header;
4617 obj_handle_t handle;
4618 /* VARARG(acl,ACL); */
4620 struct set_token_default_dacl_reply
4622 struct reply_header __header;
4625 struct set_security_object_request
4627 struct request_header __header;
4628 obj_handle_t handle;
4629 unsigned int security_info;
4630 /* VARARG(sd,security_descriptor); */
4631 char __pad_20[4];
4633 struct set_security_object_reply
4635 struct reply_header __header;
4638 struct get_security_object_request
4640 struct request_header __header;
4641 obj_handle_t handle;
4642 unsigned int security_info;
4643 char __pad_20[4];
4645 struct get_security_object_reply
4647 struct reply_header __header;
4648 unsigned int sd_len;
4649 /* VARARG(sd,security_descriptor); */
4650 char __pad_12[4];
4654 struct handle_info
4656 process_id_t owner;
4657 obj_handle_t handle;
4658 unsigned int access;
4662 struct get_system_handles_request
4664 struct request_header __header;
4665 char __pad_12[4];
4667 struct get_system_handles_reply
4669 struct reply_header __header;
4670 unsigned int count;
4671 /* VARARG(data,handle_infos); */
4672 char __pad_12[4];
4677 struct create_mailslot_request
4679 struct request_header __header;
4680 unsigned int access;
4681 timeout_t read_timeout;
4682 unsigned int max_msgsize;
4683 /* VARARG(objattr,object_attributes); */
4684 char __pad_28[4];
4686 struct create_mailslot_reply
4688 struct reply_header __header;
4689 obj_handle_t handle;
4690 char __pad_12[4];
4695 struct set_mailslot_info_request
4697 struct request_header __header;
4698 obj_handle_t handle;
4699 timeout_t read_timeout;
4700 unsigned int flags;
4701 char __pad_28[4];
4703 struct set_mailslot_info_reply
4705 struct reply_header __header;
4706 timeout_t read_timeout;
4707 unsigned int max_msgsize;
4708 char __pad_20[4];
4710 #define MAILSLOT_SET_READ_TIMEOUT 1
4714 struct create_directory_request
4716 struct request_header __header;
4717 unsigned int access;
4718 /* VARARG(objattr,object_attributes); */
4720 struct create_directory_reply
4722 struct reply_header __header;
4723 obj_handle_t handle;
4724 char __pad_12[4];
4729 struct open_directory_request
4731 struct request_header __header;
4732 unsigned int access;
4733 unsigned int attributes;
4734 obj_handle_t rootdir;
4735 /* VARARG(directory_name,unicode_str); */
4737 struct open_directory_reply
4739 struct reply_header __header;
4740 obj_handle_t handle;
4741 char __pad_12[4];
4746 struct get_directory_entry_request
4748 struct request_header __header;
4749 obj_handle_t handle;
4750 unsigned int index;
4751 char __pad_20[4];
4753 struct get_directory_entry_reply
4755 struct reply_header __header;
4756 data_size_t name_len;
4757 /* VARARG(name,unicode_str,name_len); */
4758 /* VARARG(type,unicode_str); */
4759 char __pad_12[4];
4764 struct create_symlink_request
4766 struct request_header __header;
4767 unsigned int access;
4768 /* VARARG(objattr,object_attributes); */
4769 /* VARARG(target_name,unicode_str); */
4771 struct create_symlink_reply
4773 struct reply_header __header;
4774 obj_handle_t handle;
4775 char __pad_12[4];
4780 struct open_symlink_request
4782 struct request_header __header;
4783 unsigned int access;
4784 unsigned int attributes;
4785 obj_handle_t rootdir;
4786 /* VARARG(name,unicode_str); */
4788 struct open_symlink_reply
4790 struct reply_header __header;
4791 obj_handle_t handle;
4792 char __pad_12[4];
4797 struct query_symlink_request
4799 struct request_header __header;
4800 obj_handle_t handle;
4802 struct query_symlink_reply
4804 struct reply_header __header;
4805 data_size_t total;
4806 /* VARARG(target_name,unicode_str); */
4807 char __pad_12[4];
4812 struct get_object_info_request
4814 struct request_header __header;
4815 obj_handle_t handle;
4817 struct get_object_info_reply
4819 struct reply_header __header;
4820 unsigned int access;
4821 unsigned int ref_count;
4822 unsigned int handle_count;
4823 data_size_t total;
4824 /* VARARG(name,unicode_str); */
4829 struct get_object_type_request
4831 struct request_header __header;
4832 obj_handle_t handle;
4834 struct get_object_type_reply
4836 struct reply_header __header;
4837 data_size_t total;
4838 /* VARARG(type,unicode_str); */
4839 char __pad_12[4];
4844 struct unlink_object_request
4846 struct request_header __header;
4847 obj_handle_t handle;
4849 struct unlink_object_reply
4851 struct reply_header __header;
4856 struct get_token_impersonation_level_request
4858 struct request_header __header;
4859 obj_handle_t handle;
4861 struct get_token_impersonation_level_reply
4863 struct reply_header __header;
4864 int impersonation_level;
4865 char __pad_12[4];
4869 struct allocate_locally_unique_id_request
4871 struct request_header __header;
4872 char __pad_12[4];
4874 struct allocate_locally_unique_id_reply
4876 struct reply_header __header;
4877 luid_t luid;
4882 struct create_device_manager_request
4884 struct request_header __header;
4885 unsigned int access;
4886 unsigned int attributes;
4887 char __pad_20[4];
4889 struct create_device_manager_reply
4891 struct reply_header __header;
4892 obj_handle_t handle;
4893 char __pad_12[4];
4898 struct create_device_request
4900 struct request_header __header;
4901 unsigned int access;
4902 unsigned int attributes;
4903 obj_handle_t rootdir;
4904 client_ptr_t user_ptr;
4905 obj_handle_t manager;
4906 /* VARARG(name,unicode_str); */
4907 char __pad_36[4];
4909 struct create_device_reply
4911 struct reply_header __header;
4912 obj_handle_t handle;
4913 char __pad_12[4];
4918 struct delete_device_request
4920 struct request_header __header;
4921 obj_handle_t handle;
4923 struct delete_device_reply
4925 struct reply_header __header;
4930 struct get_next_device_request_request
4932 struct request_header __header;
4933 obj_handle_t manager;
4934 obj_handle_t prev;
4935 unsigned int status;
4937 struct get_next_device_request_reply
4939 struct reply_header __header;
4940 irp_params_t params;
4941 obj_handle_t next;
4942 process_id_t client_pid;
4943 thread_id_t client_tid;
4944 data_size_t in_size;
4945 data_size_t out_size;
4946 /* VARARG(next_data,bytes); */
4947 char __pad_52[4];
4952 struct make_process_system_request
4954 struct request_header __header;
4955 char __pad_12[4];
4957 struct make_process_system_reply
4959 struct reply_header __header;
4960 obj_handle_t event;
4961 char __pad_12[4];
4966 struct get_token_statistics_request
4968 struct request_header __header;
4969 obj_handle_t handle;
4971 struct get_token_statistics_reply
4973 struct reply_header __header;
4974 luid_t token_id;
4975 luid_t modified_id;
4976 int primary;
4977 int impersonation_level;
4978 int group_count;
4979 int privilege_count;
4984 struct create_completion_request
4986 struct request_header __header;
4987 unsigned int access;
4988 unsigned int concurrent;
4989 /* VARARG(objattr,object_attributes); */
4990 char __pad_20[4];
4992 struct create_completion_reply
4994 struct reply_header __header;
4995 obj_handle_t handle;
4996 char __pad_12[4];
5001 struct open_completion_request
5003 struct request_header __header;
5004 unsigned int access;
5005 unsigned int attributes;
5006 obj_handle_t rootdir;
5007 /* VARARG(filename,unicode_str); */
5009 struct open_completion_reply
5011 struct reply_header __header;
5012 obj_handle_t handle;
5013 char __pad_12[4];
5018 struct add_completion_request
5020 struct request_header __header;
5021 obj_handle_t handle;
5022 apc_param_t ckey;
5023 apc_param_t cvalue;
5024 apc_param_t information;
5025 unsigned int status;
5026 char __pad_44[4];
5028 struct add_completion_reply
5030 struct reply_header __header;
5035 struct remove_completion_request
5037 struct request_header __header;
5038 obj_handle_t handle;
5040 struct remove_completion_reply
5042 struct reply_header __header;
5043 apc_param_t ckey;
5044 apc_param_t cvalue;
5045 apc_param_t information;
5046 unsigned int status;
5047 char __pad_36[4];
5052 struct query_completion_request
5054 struct request_header __header;
5055 obj_handle_t handle;
5057 struct query_completion_reply
5059 struct reply_header __header;
5060 unsigned int depth;
5061 char __pad_12[4];
5066 struct set_completion_info_request
5068 struct request_header __header;
5069 obj_handle_t handle;
5070 apc_param_t ckey;
5071 obj_handle_t chandle;
5072 char __pad_28[4];
5074 struct set_completion_info_reply
5076 struct reply_header __header;
5081 struct add_fd_completion_request
5083 struct request_header __header;
5084 obj_handle_t handle;
5085 apc_param_t cvalue;
5086 apc_param_t information;
5087 unsigned int status;
5088 char __pad_36[4];
5090 struct add_fd_completion_reply
5092 struct reply_header __header;
5097 struct set_fd_disp_info_request
5099 struct request_header __header;
5100 obj_handle_t handle;
5101 int unlink;
5102 char __pad_20[4];
5104 struct set_fd_disp_info_reply
5106 struct reply_header __header;
5111 struct set_fd_name_info_request
5113 struct request_header __header;
5114 obj_handle_t handle;
5115 obj_handle_t rootdir;
5116 int link;
5117 /* VARARG(filename,string); */
5119 struct set_fd_name_info_reply
5121 struct reply_header __header;
5126 struct get_window_layered_info_request
5128 struct request_header __header;
5129 user_handle_t handle;
5131 struct get_window_layered_info_reply
5133 struct reply_header __header;
5134 unsigned int color_key;
5135 unsigned int alpha;
5136 unsigned int flags;
5137 char __pad_20[4];
5142 struct set_window_layered_info_request
5144 struct request_header __header;
5145 user_handle_t handle;
5146 unsigned int color_key;
5147 unsigned int alpha;
5148 unsigned int flags;
5149 char __pad_28[4];
5151 struct set_window_layered_info_reply
5153 struct reply_header __header;
5158 struct alloc_user_handle_request
5160 struct request_header __header;
5161 char __pad_12[4];
5163 struct alloc_user_handle_reply
5165 struct reply_header __header;
5166 user_handle_t handle;
5167 char __pad_12[4];
5172 struct free_user_handle_request
5174 struct request_header __header;
5175 user_handle_t handle;
5177 struct free_user_handle_reply
5179 struct reply_header __header;
5184 struct set_cursor_request
5186 struct request_header __header;
5187 unsigned int flags;
5188 user_handle_t handle;
5189 int show_count;
5190 int x;
5191 int y;
5192 rectangle_t clip;
5193 unsigned int clip_msg;
5194 char __pad_52[4];
5196 struct set_cursor_reply
5198 struct reply_header __header;
5199 user_handle_t prev_handle;
5200 int prev_count;
5201 int prev_x;
5202 int prev_y;
5203 int new_x;
5204 int new_y;
5205 rectangle_t new_clip;
5206 unsigned int last_change;
5207 char __pad_52[4];
5209 #define SET_CURSOR_HANDLE 0x01
5210 #define SET_CURSOR_COUNT 0x02
5211 #define SET_CURSOR_POS 0x04
5212 #define SET_CURSOR_CLIP 0x08
5213 #define SET_CURSOR_NOCLIP 0x10
5217 struct update_rawinput_devices_request
5219 struct request_header __header;
5220 /* VARARG(devices,rawinput_devices); */
5221 char __pad_12[4];
5223 struct update_rawinput_devices_reply
5225 struct reply_header __header;
5230 struct get_suspend_context_request
5232 struct request_header __header;
5233 char __pad_12[4];
5235 struct get_suspend_context_reply
5237 struct reply_header __header;
5238 /* VARARG(context,context); */
5243 struct set_suspend_context_request
5245 struct request_header __header;
5246 /* VARARG(context,context); */
5247 char __pad_12[4];
5249 struct set_suspend_context_reply
5251 struct reply_header __header;
5256 struct create_job_request
5258 struct request_header __header;
5259 unsigned int access;
5260 /* VARARG(objattr,object_attributes); */
5262 struct create_job_reply
5264 struct reply_header __header;
5265 obj_handle_t handle;
5266 char __pad_12[4];
5271 struct open_job_request
5273 struct request_header __header;
5274 unsigned int access;
5275 unsigned int attributes;
5276 obj_handle_t rootdir;
5277 /* VARARG(name,unicode_str); */
5279 struct open_job_reply
5281 struct reply_header __header;
5282 obj_handle_t handle;
5283 char __pad_12[4];
5288 struct assign_job_request
5290 struct request_header __header;
5291 obj_handle_t job;
5292 obj_handle_t process;
5293 char __pad_20[4];
5295 struct assign_job_reply
5297 struct reply_header __header;
5302 struct process_in_job_request
5304 struct request_header __header;
5305 obj_handle_t job;
5306 obj_handle_t process;
5307 char __pad_20[4];
5309 struct process_in_job_reply
5311 struct reply_header __header;
5316 struct set_job_limits_request
5318 struct request_header __header;
5319 obj_handle_t handle;
5320 unsigned int limit_flags;
5321 char __pad_20[4];
5323 struct set_job_limits_reply
5325 struct reply_header __header;
5330 struct set_job_completion_port_request
5332 struct request_header __header;
5333 obj_handle_t job;
5334 obj_handle_t port;
5335 char __pad_20[4];
5336 client_ptr_t key;
5338 struct set_job_completion_port_reply
5340 struct reply_header __header;
5345 struct terminate_job_request
5347 struct request_header __header;
5348 obj_handle_t handle;
5349 int status;
5350 char __pad_20[4];
5352 struct terminate_job_reply
5354 struct reply_header __header;
5358 enum request
5360 REQ_new_process,
5361 REQ_get_new_process_info,
5362 REQ_new_thread,
5363 REQ_get_startup_info,
5364 REQ_init_process_done,
5365 REQ_init_thread,
5366 REQ_terminate_process,
5367 REQ_terminate_thread,
5368 REQ_get_process_info,
5369 REQ_set_process_info,
5370 REQ_get_thread_info,
5371 REQ_get_thread_times,
5372 REQ_set_thread_info,
5373 REQ_get_dll_info,
5374 REQ_suspend_thread,
5375 REQ_resume_thread,
5376 REQ_load_dll,
5377 REQ_unload_dll,
5378 REQ_queue_apc,
5379 REQ_get_apc_result,
5380 REQ_close_handle,
5381 REQ_set_handle_info,
5382 REQ_dup_handle,
5383 REQ_open_process,
5384 REQ_open_thread,
5385 REQ_select,
5386 REQ_create_event,
5387 REQ_event_op,
5388 REQ_query_event,
5389 REQ_open_event,
5390 REQ_create_keyed_event,
5391 REQ_open_keyed_event,
5392 REQ_create_mutex,
5393 REQ_release_mutex,
5394 REQ_open_mutex,
5395 REQ_create_semaphore,
5396 REQ_release_semaphore,
5397 REQ_query_semaphore,
5398 REQ_open_semaphore,
5399 REQ_create_file,
5400 REQ_open_file_object,
5401 REQ_alloc_file_handle,
5402 REQ_get_handle_unix_name,
5403 REQ_get_handle_fd,
5404 REQ_flush,
5405 REQ_lock_file,
5406 REQ_unlock_file,
5407 REQ_create_socket,
5408 REQ_accept_socket,
5409 REQ_accept_into_socket,
5410 REQ_set_socket_event,
5411 REQ_get_socket_event,
5412 REQ_get_socket_info,
5413 REQ_enable_socket_event,
5414 REQ_set_socket_deferred,
5415 REQ_alloc_console,
5416 REQ_free_console,
5417 REQ_get_console_renderer_events,
5418 REQ_open_console,
5419 REQ_get_console_wait_event,
5420 REQ_get_console_mode,
5421 REQ_set_console_mode,
5422 REQ_set_console_input_info,
5423 REQ_get_console_input_info,
5424 REQ_append_console_input_history,
5425 REQ_get_console_input_history,
5426 REQ_create_console_output,
5427 REQ_set_console_output_info,
5428 REQ_get_console_output_info,
5429 REQ_write_console_input,
5430 REQ_read_console_input,
5431 REQ_write_console_output,
5432 REQ_fill_console_output,
5433 REQ_read_console_output,
5434 REQ_move_console_output,
5435 REQ_send_console_signal,
5436 REQ_read_directory_changes,
5437 REQ_read_change,
5438 REQ_create_mapping,
5439 REQ_open_mapping,
5440 REQ_get_mapping_info,
5441 REQ_get_mapping_committed_range,
5442 REQ_add_mapping_committed_range,
5443 REQ_create_snapshot,
5444 REQ_next_process,
5445 REQ_next_thread,
5446 REQ_wait_debug_event,
5447 REQ_queue_exception_event,
5448 REQ_get_exception_status,
5449 REQ_continue_debug_event,
5450 REQ_debug_process,
5451 REQ_debug_break,
5452 REQ_set_debugger_kill_on_exit,
5453 REQ_read_process_memory,
5454 REQ_write_process_memory,
5455 REQ_create_key,
5456 REQ_open_key,
5457 REQ_delete_key,
5458 REQ_flush_key,
5459 REQ_enum_key,
5460 REQ_set_key_value,
5461 REQ_get_key_value,
5462 REQ_enum_key_value,
5463 REQ_delete_key_value,
5464 REQ_load_registry,
5465 REQ_unload_registry,
5466 REQ_save_registry,
5467 REQ_set_registry_notification,
5468 REQ_create_timer,
5469 REQ_open_timer,
5470 REQ_set_timer,
5471 REQ_cancel_timer,
5472 REQ_get_timer_info,
5473 REQ_get_thread_context,
5474 REQ_set_thread_context,
5475 REQ_get_selector_entry,
5476 REQ_add_atom,
5477 REQ_delete_atom,
5478 REQ_find_atom,
5479 REQ_get_atom_information,
5480 REQ_set_atom_information,
5481 REQ_empty_atom_table,
5482 REQ_init_atom_table,
5483 REQ_get_msg_queue,
5484 REQ_set_queue_fd,
5485 REQ_set_queue_mask,
5486 REQ_get_queue_status,
5487 REQ_get_process_idle_event,
5488 REQ_send_message,
5489 REQ_post_quit_message,
5490 REQ_send_hardware_message,
5491 REQ_get_message,
5492 REQ_reply_message,
5493 REQ_accept_hardware_message,
5494 REQ_get_message_reply,
5495 REQ_set_win_timer,
5496 REQ_kill_win_timer,
5497 REQ_is_window_hung,
5498 REQ_get_serial_info,
5499 REQ_set_serial_info,
5500 REQ_register_async,
5501 REQ_cancel_async,
5502 REQ_read,
5503 REQ_write,
5504 REQ_ioctl,
5505 REQ_set_irp_result,
5506 REQ_get_irp_result,
5507 REQ_create_named_pipe,
5508 REQ_get_named_pipe_info,
5509 REQ_set_named_pipe_info,
5510 REQ_create_window,
5511 REQ_destroy_window,
5512 REQ_get_desktop_window,
5513 REQ_set_window_owner,
5514 REQ_get_window_info,
5515 REQ_set_window_info,
5516 REQ_set_parent,
5517 REQ_get_window_parents,
5518 REQ_get_window_children,
5519 REQ_get_window_children_from_point,
5520 REQ_get_window_tree,
5521 REQ_set_window_pos,
5522 REQ_get_window_rectangles,
5523 REQ_get_window_text,
5524 REQ_set_window_text,
5525 REQ_get_windows_offset,
5526 REQ_get_visible_region,
5527 REQ_get_surface_region,
5528 REQ_get_window_region,
5529 REQ_set_window_region,
5530 REQ_get_update_region,
5531 REQ_update_window_zorder,
5532 REQ_redraw_window,
5533 REQ_set_window_property,
5534 REQ_remove_window_property,
5535 REQ_get_window_property,
5536 REQ_get_window_properties,
5537 REQ_create_winstation,
5538 REQ_open_winstation,
5539 REQ_close_winstation,
5540 REQ_get_process_winstation,
5541 REQ_set_process_winstation,
5542 REQ_enum_winstation,
5543 REQ_create_desktop,
5544 REQ_open_desktop,
5545 REQ_open_input_desktop,
5546 REQ_close_desktop,
5547 REQ_get_thread_desktop,
5548 REQ_set_thread_desktop,
5549 REQ_enum_desktop,
5550 REQ_set_user_object_info,
5551 REQ_register_hotkey,
5552 REQ_unregister_hotkey,
5553 REQ_attach_thread_input,
5554 REQ_get_thread_input,
5555 REQ_get_last_input_time,
5556 REQ_get_key_state,
5557 REQ_set_key_state,
5558 REQ_set_foreground_window,
5559 REQ_set_focus_window,
5560 REQ_set_active_window,
5561 REQ_set_capture_window,
5562 REQ_set_caret_window,
5563 REQ_set_caret_info,
5564 REQ_set_hook,
5565 REQ_remove_hook,
5566 REQ_start_hook_chain,
5567 REQ_finish_hook_chain,
5568 REQ_get_hook_info,
5569 REQ_create_class,
5570 REQ_destroy_class,
5571 REQ_set_class_info,
5572 REQ_set_clipboard_info,
5573 REQ_empty_clipboard,
5574 REQ_open_token,
5575 REQ_set_global_windows,
5576 REQ_adjust_token_privileges,
5577 REQ_get_token_privileges,
5578 REQ_check_token_privileges,
5579 REQ_duplicate_token,
5580 REQ_access_check,
5581 REQ_get_token_sid,
5582 REQ_get_token_groups,
5583 REQ_get_token_default_dacl,
5584 REQ_set_token_default_dacl,
5585 REQ_set_security_object,
5586 REQ_get_security_object,
5587 REQ_get_system_handles,
5588 REQ_create_mailslot,
5589 REQ_set_mailslot_info,
5590 REQ_create_directory,
5591 REQ_open_directory,
5592 REQ_get_directory_entry,
5593 REQ_create_symlink,
5594 REQ_open_symlink,
5595 REQ_query_symlink,
5596 REQ_get_object_info,
5597 REQ_get_object_type,
5598 REQ_unlink_object,
5599 REQ_get_token_impersonation_level,
5600 REQ_allocate_locally_unique_id,
5601 REQ_create_device_manager,
5602 REQ_create_device,
5603 REQ_delete_device,
5604 REQ_get_next_device_request,
5605 REQ_make_process_system,
5606 REQ_get_token_statistics,
5607 REQ_create_completion,
5608 REQ_open_completion,
5609 REQ_add_completion,
5610 REQ_remove_completion,
5611 REQ_query_completion,
5612 REQ_set_completion_info,
5613 REQ_add_fd_completion,
5614 REQ_set_fd_disp_info,
5615 REQ_set_fd_name_info,
5616 REQ_get_window_layered_info,
5617 REQ_set_window_layered_info,
5618 REQ_alloc_user_handle,
5619 REQ_free_user_handle,
5620 REQ_set_cursor,
5621 REQ_update_rawinput_devices,
5622 REQ_get_suspend_context,
5623 REQ_set_suspend_context,
5624 REQ_create_job,
5625 REQ_open_job,
5626 REQ_assign_job,
5627 REQ_process_in_job,
5628 REQ_set_job_limits,
5629 REQ_set_job_completion_port,
5630 REQ_terminate_job,
5631 REQ_NB_REQUESTS
5634 union generic_request
5636 struct request_max_size max_size;
5637 struct request_header request_header;
5638 struct new_process_request new_process_request;
5639 struct get_new_process_info_request get_new_process_info_request;
5640 struct new_thread_request new_thread_request;
5641 struct get_startup_info_request get_startup_info_request;
5642 struct init_process_done_request init_process_done_request;
5643 struct init_thread_request init_thread_request;
5644 struct terminate_process_request terminate_process_request;
5645 struct terminate_thread_request terminate_thread_request;
5646 struct get_process_info_request get_process_info_request;
5647 struct set_process_info_request set_process_info_request;
5648 struct get_thread_info_request get_thread_info_request;
5649 struct get_thread_times_request get_thread_times_request;
5650 struct set_thread_info_request set_thread_info_request;
5651 struct get_dll_info_request get_dll_info_request;
5652 struct suspend_thread_request suspend_thread_request;
5653 struct resume_thread_request resume_thread_request;
5654 struct load_dll_request load_dll_request;
5655 struct unload_dll_request unload_dll_request;
5656 struct queue_apc_request queue_apc_request;
5657 struct get_apc_result_request get_apc_result_request;
5658 struct close_handle_request close_handle_request;
5659 struct set_handle_info_request set_handle_info_request;
5660 struct dup_handle_request dup_handle_request;
5661 struct open_process_request open_process_request;
5662 struct open_thread_request open_thread_request;
5663 struct select_request select_request;
5664 struct create_event_request create_event_request;
5665 struct event_op_request event_op_request;
5666 struct query_event_request query_event_request;
5667 struct open_event_request open_event_request;
5668 struct create_keyed_event_request create_keyed_event_request;
5669 struct open_keyed_event_request open_keyed_event_request;
5670 struct create_mutex_request create_mutex_request;
5671 struct release_mutex_request release_mutex_request;
5672 struct open_mutex_request open_mutex_request;
5673 struct create_semaphore_request create_semaphore_request;
5674 struct release_semaphore_request release_semaphore_request;
5675 struct query_semaphore_request query_semaphore_request;
5676 struct open_semaphore_request open_semaphore_request;
5677 struct create_file_request create_file_request;
5678 struct open_file_object_request open_file_object_request;
5679 struct alloc_file_handle_request alloc_file_handle_request;
5680 struct get_handle_unix_name_request get_handle_unix_name_request;
5681 struct get_handle_fd_request get_handle_fd_request;
5682 struct flush_request flush_request;
5683 struct lock_file_request lock_file_request;
5684 struct unlock_file_request unlock_file_request;
5685 struct create_socket_request create_socket_request;
5686 struct accept_socket_request accept_socket_request;
5687 struct accept_into_socket_request accept_into_socket_request;
5688 struct set_socket_event_request set_socket_event_request;
5689 struct get_socket_event_request get_socket_event_request;
5690 struct get_socket_info_request get_socket_info_request;
5691 struct enable_socket_event_request enable_socket_event_request;
5692 struct set_socket_deferred_request set_socket_deferred_request;
5693 struct alloc_console_request alloc_console_request;
5694 struct free_console_request free_console_request;
5695 struct get_console_renderer_events_request get_console_renderer_events_request;
5696 struct open_console_request open_console_request;
5697 struct get_console_wait_event_request get_console_wait_event_request;
5698 struct get_console_mode_request get_console_mode_request;
5699 struct set_console_mode_request set_console_mode_request;
5700 struct set_console_input_info_request set_console_input_info_request;
5701 struct get_console_input_info_request get_console_input_info_request;
5702 struct append_console_input_history_request append_console_input_history_request;
5703 struct get_console_input_history_request get_console_input_history_request;
5704 struct create_console_output_request create_console_output_request;
5705 struct set_console_output_info_request set_console_output_info_request;
5706 struct get_console_output_info_request get_console_output_info_request;
5707 struct write_console_input_request write_console_input_request;
5708 struct read_console_input_request read_console_input_request;
5709 struct write_console_output_request write_console_output_request;
5710 struct fill_console_output_request fill_console_output_request;
5711 struct read_console_output_request read_console_output_request;
5712 struct move_console_output_request move_console_output_request;
5713 struct send_console_signal_request send_console_signal_request;
5714 struct read_directory_changes_request read_directory_changes_request;
5715 struct read_change_request read_change_request;
5716 struct create_mapping_request create_mapping_request;
5717 struct open_mapping_request open_mapping_request;
5718 struct get_mapping_info_request get_mapping_info_request;
5719 struct get_mapping_committed_range_request get_mapping_committed_range_request;
5720 struct add_mapping_committed_range_request add_mapping_committed_range_request;
5721 struct create_snapshot_request create_snapshot_request;
5722 struct next_process_request next_process_request;
5723 struct next_thread_request next_thread_request;
5724 struct wait_debug_event_request wait_debug_event_request;
5725 struct queue_exception_event_request queue_exception_event_request;
5726 struct get_exception_status_request get_exception_status_request;
5727 struct continue_debug_event_request continue_debug_event_request;
5728 struct debug_process_request debug_process_request;
5729 struct debug_break_request debug_break_request;
5730 struct set_debugger_kill_on_exit_request set_debugger_kill_on_exit_request;
5731 struct read_process_memory_request read_process_memory_request;
5732 struct write_process_memory_request write_process_memory_request;
5733 struct create_key_request create_key_request;
5734 struct open_key_request open_key_request;
5735 struct delete_key_request delete_key_request;
5736 struct flush_key_request flush_key_request;
5737 struct enum_key_request enum_key_request;
5738 struct set_key_value_request set_key_value_request;
5739 struct get_key_value_request get_key_value_request;
5740 struct enum_key_value_request enum_key_value_request;
5741 struct delete_key_value_request delete_key_value_request;
5742 struct load_registry_request load_registry_request;
5743 struct unload_registry_request unload_registry_request;
5744 struct save_registry_request save_registry_request;
5745 struct set_registry_notification_request set_registry_notification_request;
5746 struct create_timer_request create_timer_request;
5747 struct open_timer_request open_timer_request;
5748 struct set_timer_request set_timer_request;
5749 struct cancel_timer_request cancel_timer_request;
5750 struct get_timer_info_request get_timer_info_request;
5751 struct get_thread_context_request get_thread_context_request;
5752 struct set_thread_context_request set_thread_context_request;
5753 struct get_selector_entry_request get_selector_entry_request;
5754 struct add_atom_request add_atom_request;
5755 struct delete_atom_request delete_atom_request;
5756 struct find_atom_request find_atom_request;
5757 struct get_atom_information_request get_atom_information_request;
5758 struct set_atom_information_request set_atom_information_request;
5759 struct empty_atom_table_request empty_atom_table_request;
5760 struct init_atom_table_request init_atom_table_request;
5761 struct get_msg_queue_request get_msg_queue_request;
5762 struct set_queue_fd_request set_queue_fd_request;
5763 struct set_queue_mask_request set_queue_mask_request;
5764 struct get_queue_status_request get_queue_status_request;
5765 struct get_process_idle_event_request get_process_idle_event_request;
5766 struct send_message_request send_message_request;
5767 struct post_quit_message_request post_quit_message_request;
5768 struct send_hardware_message_request send_hardware_message_request;
5769 struct get_message_request get_message_request;
5770 struct reply_message_request reply_message_request;
5771 struct accept_hardware_message_request accept_hardware_message_request;
5772 struct get_message_reply_request get_message_reply_request;
5773 struct set_win_timer_request set_win_timer_request;
5774 struct kill_win_timer_request kill_win_timer_request;
5775 struct is_window_hung_request is_window_hung_request;
5776 struct get_serial_info_request get_serial_info_request;
5777 struct set_serial_info_request set_serial_info_request;
5778 struct register_async_request register_async_request;
5779 struct cancel_async_request cancel_async_request;
5780 struct read_request read_request;
5781 struct write_request write_request;
5782 struct ioctl_request ioctl_request;
5783 struct set_irp_result_request set_irp_result_request;
5784 struct get_irp_result_request get_irp_result_request;
5785 struct create_named_pipe_request create_named_pipe_request;
5786 struct get_named_pipe_info_request get_named_pipe_info_request;
5787 struct set_named_pipe_info_request set_named_pipe_info_request;
5788 struct create_window_request create_window_request;
5789 struct destroy_window_request destroy_window_request;
5790 struct get_desktop_window_request get_desktop_window_request;
5791 struct set_window_owner_request set_window_owner_request;
5792 struct get_window_info_request get_window_info_request;
5793 struct set_window_info_request set_window_info_request;
5794 struct set_parent_request set_parent_request;
5795 struct get_window_parents_request get_window_parents_request;
5796 struct get_window_children_request get_window_children_request;
5797 struct get_window_children_from_point_request get_window_children_from_point_request;
5798 struct get_window_tree_request get_window_tree_request;
5799 struct set_window_pos_request set_window_pos_request;
5800 struct get_window_rectangles_request get_window_rectangles_request;
5801 struct get_window_text_request get_window_text_request;
5802 struct set_window_text_request set_window_text_request;
5803 struct get_windows_offset_request get_windows_offset_request;
5804 struct get_visible_region_request get_visible_region_request;
5805 struct get_surface_region_request get_surface_region_request;
5806 struct get_window_region_request get_window_region_request;
5807 struct set_window_region_request set_window_region_request;
5808 struct get_update_region_request get_update_region_request;
5809 struct update_window_zorder_request update_window_zorder_request;
5810 struct redraw_window_request redraw_window_request;
5811 struct set_window_property_request set_window_property_request;
5812 struct remove_window_property_request remove_window_property_request;
5813 struct get_window_property_request get_window_property_request;
5814 struct get_window_properties_request get_window_properties_request;
5815 struct create_winstation_request create_winstation_request;
5816 struct open_winstation_request open_winstation_request;
5817 struct close_winstation_request close_winstation_request;
5818 struct get_process_winstation_request get_process_winstation_request;
5819 struct set_process_winstation_request set_process_winstation_request;
5820 struct enum_winstation_request enum_winstation_request;
5821 struct create_desktop_request create_desktop_request;
5822 struct open_desktop_request open_desktop_request;
5823 struct open_input_desktop_request open_input_desktop_request;
5824 struct close_desktop_request close_desktop_request;
5825 struct get_thread_desktop_request get_thread_desktop_request;
5826 struct set_thread_desktop_request set_thread_desktop_request;
5827 struct enum_desktop_request enum_desktop_request;
5828 struct set_user_object_info_request set_user_object_info_request;
5829 struct register_hotkey_request register_hotkey_request;
5830 struct unregister_hotkey_request unregister_hotkey_request;
5831 struct attach_thread_input_request attach_thread_input_request;
5832 struct get_thread_input_request get_thread_input_request;
5833 struct get_last_input_time_request get_last_input_time_request;
5834 struct get_key_state_request get_key_state_request;
5835 struct set_key_state_request set_key_state_request;
5836 struct set_foreground_window_request set_foreground_window_request;
5837 struct set_focus_window_request set_focus_window_request;
5838 struct set_active_window_request set_active_window_request;
5839 struct set_capture_window_request set_capture_window_request;
5840 struct set_caret_window_request set_caret_window_request;
5841 struct set_caret_info_request set_caret_info_request;
5842 struct set_hook_request set_hook_request;
5843 struct remove_hook_request remove_hook_request;
5844 struct start_hook_chain_request start_hook_chain_request;
5845 struct finish_hook_chain_request finish_hook_chain_request;
5846 struct get_hook_info_request get_hook_info_request;
5847 struct create_class_request create_class_request;
5848 struct destroy_class_request destroy_class_request;
5849 struct set_class_info_request set_class_info_request;
5850 struct set_clipboard_info_request set_clipboard_info_request;
5851 struct empty_clipboard_request empty_clipboard_request;
5852 struct open_token_request open_token_request;
5853 struct set_global_windows_request set_global_windows_request;
5854 struct adjust_token_privileges_request adjust_token_privileges_request;
5855 struct get_token_privileges_request get_token_privileges_request;
5856 struct check_token_privileges_request check_token_privileges_request;
5857 struct duplicate_token_request duplicate_token_request;
5858 struct access_check_request access_check_request;
5859 struct get_token_sid_request get_token_sid_request;
5860 struct get_token_groups_request get_token_groups_request;
5861 struct get_token_default_dacl_request get_token_default_dacl_request;
5862 struct set_token_default_dacl_request set_token_default_dacl_request;
5863 struct set_security_object_request set_security_object_request;
5864 struct get_security_object_request get_security_object_request;
5865 struct get_system_handles_request get_system_handles_request;
5866 struct create_mailslot_request create_mailslot_request;
5867 struct set_mailslot_info_request set_mailslot_info_request;
5868 struct create_directory_request create_directory_request;
5869 struct open_directory_request open_directory_request;
5870 struct get_directory_entry_request get_directory_entry_request;
5871 struct create_symlink_request create_symlink_request;
5872 struct open_symlink_request open_symlink_request;
5873 struct query_symlink_request query_symlink_request;
5874 struct get_object_info_request get_object_info_request;
5875 struct get_object_type_request get_object_type_request;
5876 struct unlink_object_request unlink_object_request;
5877 struct get_token_impersonation_level_request get_token_impersonation_level_request;
5878 struct allocate_locally_unique_id_request allocate_locally_unique_id_request;
5879 struct create_device_manager_request create_device_manager_request;
5880 struct create_device_request create_device_request;
5881 struct delete_device_request delete_device_request;
5882 struct get_next_device_request_request get_next_device_request_request;
5883 struct make_process_system_request make_process_system_request;
5884 struct get_token_statistics_request get_token_statistics_request;
5885 struct create_completion_request create_completion_request;
5886 struct open_completion_request open_completion_request;
5887 struct add_completion_request add_completion_request;
5888 struct remove_completion_request remove_completion_request;
5889 struct query_completion_request query_completion_request;
5890 struct set_completion_info_request set_completion_info_request;
5891 struct add_fd_completion_request add_fd_completion_request;
5892 struct set_fd_disp_info_request set_fd_disp_info_request;
5893 struct set_fd_name_info_request set_fd_name_info_request;
5894 struct get_window_layered_info_request get_window_layered_info_request;
5895 struct set_window_layered_info_request set_window_layered_info_request;
5896 struct alloc_user_handle_request alloc_user_handle_request;
5897 struct free_user_handle_request free_user_handle_request;
5898 struct set_cursor_request set_cursor_request;
5899 struct update_rawinput_devices_request update_rawinput_devices_request;
5900 struct get_suspend_context_request get_suspend_context_request;
5901 struct set_suspend_context_request set_suspend_context_request;
5902 struct create_job_request create_job_request;
5903 struct open_job_request open_job_request;
5904 struct assign_job_request assign_job_request;
5905 struct process_in_job_request process_in_job_request;
5906 struct set_job_limits_request set_job_limits_request;
5907 struct set_job_completion_port_request set_job_completion_port_request;
5908 struct terminate_job_request terminate_job_request;
5910 union generic_reply
5912 struct request_max_size max_size;
5913 struct reply_header reply_header;
5914 struct new_process_reply new_process_reply;
5915 struct get_new_process_info_reply get_new_process_info_reply;
5916 struct new_thread_reply new_thread_reply;
5917 struct get_startup_info_reply get_startup_info_reply;
5918 struct init_process_done_reply init_process_done_reply;
5919 struct init_thread_reply init_thread_reply;
5920 struct terminate_process_reply terminate_process_reply;
5921 struct terminate_thread_reply terminate_thread_reply;
5922 struct get_process_info_reply get_process_info_reply;
5923 struct set_process_info_reply set_process_info_reply;
5924 struct get_thread_info_reply get_thread_info_reply;
5925 struct get_thread_times_reply get_thread_times_reply;
5926 struct set_thread_info_reply set_thread_info_reply;
5927 struct get_dll_info_reply get_dll_info_reply;
5928 struct suspend_thread_reply suspend_thread_reply;
5929 struct resume_thread_reply resume_thread_reply;
5930 struct load_dll_reply load_dll_reply;
5931 struct unload_dll_reply unload_dll_reply;
5932 struct queue_apc_reply queue_apc_reply;
5933 struct get_apc_result_reply get_apc_result_reply;
5934 struct close_handle_reply close_handle_reply;
5935 struct set_handle_info_reply set_handle_info_reply;
5936 struct dup_handle_reply dup_handle_reply;
5937 struct open_process_reply open_process_reply;
5938 struct open_thread_reply open_thread_reply;
5939 struct select_reply select_reply;
5940 struct create_event_reply create_event_reply;
5941 struct event_op_reply event_op_reply;
5942 struct query_event_reply query_event_reply;
5943 struct open_event_reply open_event_reply;
5944 struct create_keyed_event_reply create_keyed_event_reply;
5945 struct open_keyed_event_reply open_keyed_event_reply;
5946 struct create_mutex_reply create_mutex_reply;
5947 struct release_mutex_reply release_mutex_reply;
5948 struct open_mutex_reply open_mutex_reply;
5949 struct create_semaphore_reply create_semaphore_reply;
5950 struct release_semaphore_reply release_semaphore_reply;
5951 struct query_semaphore_reply query_semaphore_reply;
5952 struct open_semaphore_reply open_semaphore_reply;
5953 struct create_file_reply create_file_reply;
5954 struct open_file_object_reply open_file_object_reply;
5955 struct alloc_file_handle_reply alloc_file_handle_reply;
5956 struct get_handle_unix_name_reply get_handle_unix_name_reply;
5957 struct get_handle_fd_reply get_handle_fd_reply;
5958 struct flush_reply flush_reply;
5959 struct lock_file_reply lock_file_reply;
5960 struct unlock_file_reply unlock_file_reply;
5961 struct create_socket_reply create_socket_reply;
5962 struct accept_socket_reply accept_socket_reply;
5963 struct accept_into_socket_reply accept_into_socket_reply;
5964 struct set_socket_event_reply set_socket_event_reply;
5965 struct get_socket_event_reply get_socket_event_reply;
5966 struct get_socket_info_reply get_socket_info_reply;
5967 struct enable_socket_event_reply enable_socket_event_reply;
5968 struct set_socket_deferred_reply set_socket_deferred_reply;
5969 struct alloc_console_reply alloc_console_reply;
5970 struct free_console_reply free_console_reply;
5971 struct get_console_renderer_events_reply get_console_renderer_events_reply;
5972 struct open_console_reply open_console_reply;
5973 struct get_console_wait_event_reply get_console_wait_event_reply;
5974 struct get_console_mode_reply get_console_mode_reply;
5975 struct set_console_mode_reply set_console_mode_reply;
5976 struct set_console_input_info_reply set_console_input_info_reply;
5977 struct get_console_input_info_reply get_console_input_info_reply;
5978 struct append_console_input_history_reply append_console_input_history_reply;
5979 struct get_console_input_history_reply get_console_input_history_reply;
5980 struct create_console_output_reply create_console_output_reply;
5981 struct set_console_output_info_reply set_console_output_info_reply;
5982 struct get_console_output_info_reply get_console_output_info_reply;
5983 struct write_console_input_reply write_console_input_reply;
5984 struct read_console_input_reply read_console_input_reply;
5985 struct write_console_output_reply write_console_output_reply;
5986 struct fill_console_output_reply fill_console_output_reply;
5987 struct read_console_output_reply read_console_output_reply;
5988 struct move_console_output_reply move_console_output_reply;
5989 struct send_console_signal_reply send_console_signal_reply;
5990 struct read_directory_changes_reply read_directory_changes_reply;
5991 struct read_change_reply read_change_reply;
5992 struct create_mapping_reply create_mapping_reply;
5993 struct open_mapping_reply open_mapping_reply;
5994 struct get_mapping_info_reply get_mapping_info_reply;
5995 struct get_mapping_committed_range_reply get_mapping_committed_range_reply;
5996 struct add_mapping_committed_range_reply add_mapping_committed_range_reply;
5997 struct create_snapshot_reply create_snapshot_reply;
5998 struct next_process_reply next_process_reply;
5999 struct next_thread_reply next_thread_reply;
6000 struct wait_debug_event_reply wait_debug_event_reply;
6001 struct queue_exception_event_reply queue_exception_event_reply;
6002 struct get_exception_status_reply get_exception_status_reply;
6003 struct continue_debug_event_reply continue_debug_event_reply;
6004 struct debug_process_reply debug_process_reply;
6005 struct debug_break_reply debug_break_reply;
6006 struct set_debugger_kill_on_exit_reply set_debugger_kill_on_exit_reply;
6007 struct read_process_memory_reply read_process_memory_reply;
6008 struct write_process_memory_reply write_process_memory_reply;
6009 struct create_key_reply create_key_reply;
6010 struct open_key_reply open_key_reply;
6011 struct delete_key_reply delete_key_reply;
6012 struct flush_key_reply flush_key_reply;
6013 struct enum_key_reply enum_key_reply;
6014 struct set_key_value_reply set_key_value_reply;
6015 struct get_key_value_reply get_key_value_reply;
6016 struct enum_key_value_reply enum_key_value_reply;
6017 struct delete_key_value_reply delete_key_value_reply;
6018 struct load_registry_reply load_registry_reply;
6019 struct unload_registry_reply unload_registry_reply;
6020 struct save_registry_reply save_registry_reply;
6021 struct set_registry_notification_reply set_registry_notification_reply;
6022 struct create_timer_reply create_timer_reply;
6023 struct open_timer_reply open_timer_reply;
6024 struct set_timer_reply set_timer_reply;
6025 struct cancel_timer_reply cancel_timer_reply;
6026 struct get_timer_info_reply get_timer_info_reply;
6027 struct get_thread_context_reply get_thread_context_reply;
6028 struct set_thread_context_reply set_thread_context_reply;
6029 struct get_selector_entry_reply get_selector_entry_reply;
6030 struct add_atom_reply add_atom_reply;
6031 struct delete_atom_reply delete_atom_reply;
6032 struct find_atom_reply find_atom_reply;
6033 struct get_atom_information_reply get_atom_information_reply;
6034 struct set_atom_information_reply set_atom_information_reply;
6035 struct empty_atom_table_reply empty_atom_table_reply;
6036 struct init_atom_table_reply init_atom_table_reply;
6037 struct get_msg_queue_reply get_msg_queue_reply;
6038 struct set_queue_fd_reply set_queue_fd_reply;
6039 struct set_queue_mask_reply set_queue_mask_reply;
6040 struct get_queue_status_reply get_queue_status_reply;
6041 struct get_process_idle_event_reply get_process_idle_event_reply;
6042 struct send_message_reply send_message_reply;
6043 struct post_quit_message_reply post_quit_message_reply;
6044 struct send_hardware_message_reply send_hardware_message_reply;
6045 struct get_message_reply get_message_reply;
6046 struct reply_message_reply reply_message_reply;
6047 struct accept_hardware_message_reply accept_hardware_message_reply;
6048 struct get_message_reply_reply get_message_reply_reply;
6049 struct set_win_timer_reply set_win_timer_reply;
6050 struct kill_win_timer_reply kill_win_timer_reply;
6051 struct is_window_hung_reply is_window_hung_reply;
6052 struct get_serial_info_reply get_serial_info_reply;
6053 struct set_serial_info_reply set_serial_info_reply;
6054 struct register_async_reply register_async_reply;
6055 struct cancel_async_reply cancel_async_reply;
6056 struct read_reply read_reply;
6057 struct write_reply write_reply;
6058 struct ioctl_reply ioctl_reply;
6059 struct set_irp_result_reply set_irp_result_reply;
6060 struct get_irp_result_reply get_irp_result_reply;
6061 struct create_named_pipe_reply create_named_pipe_reply;
6062 struct get_named_pipe_info_reply get_named_pipe_info_reply;
6063 struct set_named_pipe_info_reply set_named_pipe_info_reply;
6064 struct create_window_reply create_window_reply;
6065 struct destroy_window_reply destroy_window_reply;
6066 struct get_desktop_window_reply get_desktop_window_reply;
6067 struct set_window_owner_reply set_window_owner_reply;
6068 struct get_window_info_reply get_window_info_reply;
6069 struct set_window_info_reply set_window_info_reply;
6070 struct set_parent_reply set_parent_reply;
6071 struct get_window_parents_reply get_window_parents_reply;
6072 struct get_window_children_reply get_window_children_reply;
6073 struct get_window_children_from_point_reply get_window_children_from_point_reply;
6074 struct get_window_tree_reply get_window_tree_reply;
6075 struct set_window_pos_reply set_window_pos_reply;
6076 struct get_window_rectangles_reply get_window_rectangles_reply;
6077 struct get_window_text_reply get_window_text_reply;
6078 struct set_window_text_reply set_window_text_reply;
6079 struct get_windows_offset_reply get_windows_offset_reply;
6080 struct get_visible_region_reply get_visible_region_reply;
6081 struct get_surface_region_reply get_surface_region_reply;
6082 struct get_window_region_reply get_window_region_reply;
6083 struct set_window_region_reply set_window_region_reply;
6084 struct get_update_region_reply get_update_region_reply;
6085 struct update_window_zorder_reply update_window_zorder_reply;
6086 struct redraw_window_reply redraw_window_reply;
6087 struct set_window_property_reply set_window_property_reply;
6088 struct remove_window_property_reply remove_window_property_reply;
6089 struct get_window_property_reply get_window_property_reply;
6090 struct get_window_properties_reply get_window_properties_reply;
6091 struct create_winstation_reply create_winstation_reply;
6092 struct open_winstation_reply open_winstation_reply;
6093 struct close_winstation_reply close_winstation_reply;
6094 struct get_process_winstation_reply get_process_winstation_reply;
6095 struct set_process_winstation_reply set_process_winstation_reply;
6096 struct enum_winstation_reply enum_winstation_reply;
6097 struct create_desktop_reply create_desktop_reply;
6098 struct open_desktop_reply open_desktop_reply;
6099 struct open_input_desktop_reply open_input_desktop_reply;
6100 struct close_desktop_reply close_desktop_reply;
6101 struct get_thread_desktop_reply get_thread_desktop_reply;
6102 struct set_thread_desktop_reply set_thread_desktop_reply;
6103 struct enum_desktop_reply enum_desktop_reply;
6104 struct set_user_object_info_reply set_user_object_info_reply;
6105 struct register_hotkey_reply register_hotkey_reply;
6106 struct unregister_hotkey_reply unregister_hotkey_reply;
6107 struct attach_thread_input_reply attach_thread_input_reply;
6108 struct get_thread_input_reply get_thread_input_reply;
6109 struct get_last_input_time_reply get_last_input_time_reply;
6110 struct get_key_state_reply get_key_state_reply;
6111 struct set_key_state_reply set_key_state_reply;
6112 struct set_foreground_window_reply set_foreground_window_reply;
6113 struct set_focus_window_reply set_focus_window_reply;
6114 struct set_active_window_reply set_active_window_reply;
6115 struct set_capture_window_reply set_capture_window_reply;
6116 struct set_caret_window_reply set_caret_window_reply;
6117 struct set_caret_info_reply set_caret_info_reply;
6118 struct set_hook_reply set_hook_reply;
6119 struct remove_hook_reply remove_hook_reply;
6120 struct start_hook_chain_reply start_hook_chain_reply;
6121 struct finish_hook_chain_reply finish_hook_chain_reply;
6122 struct get_hook_info_reply get_hook_info_reply;
6123 struct create_class_reply create_class_reply;
6124 struct destroy_class_reply destroy_class_reply;
6125 struct set_class_info_reply set_class_info_reply;
6126 struct set_clipboard_info_reply set_clipboard_info_reply;
6127 struct empty_clipboard_reply empty_clipboard_reply;
6128 struct open_token_reply open_token_reply;
6129 struct set_global_windows_reply set_global_windows_reply;
6130 struct adjust_token_privileges_reply adjust_token_privileges_reply;
6131 struct get_token_privileges_reply get_token_privileges_reply;
6132 struct check_token_privileges_reply check_token_privileges_reply;
6133 struct duplicate_token_reply duplicate_token_reply;
6134 struct access_check_reply access_check_reply;
6135 struct get_token_sid_reply get_token_sid_reply;
6136 struct get_token_groups_reply get_token_groups_reply;
6137 struct get_token_default_dacl_reply get_token_default_dacl_reply;
6138 struct set_token_default_dacl_reply set_token_default_dacl_reply;
6139 struct set_security_object_reply set_security_object_reply;
6140 struct get_security_object_reply get_security_object_reply;
6141 struct get_system_handles_reply get_system_handles_reply;
6142 struct create_mailslot_reply create_mailslot_reply;
6143 struct set_mailslot_info_reply set_mailslot_info_reply;
6144 struct create_directory_reply create_directory_reply;
6145 struct open_directory_reply open_directory_reply;
6146 struct get_directory_entry_reply get_directory_entry_reply;
6147 struct create_symlink_reply create_symlink_reply;
6148 struct open_symlink_reply open_symlink_reply;
6149 struct query_symlink_reply query_symlink_reply;
6150 struct get_object_info_reply get_object_info_reply;
6151 struct get_object_type_reply get_object_type_reply;
6152 struct unlink_object_reply unlink_object_reply;
6153 struct get_token_impersonation_level_reply get_token_impersonation_level_reply;
6154 struct allocate_locally_unique_id_reply allocate_locally_unique_id_reply;
6155 struct create_device_manager_reply create_device_manager_reply;
6156 struct create_device_reply create_device_reply;
6157 struct delete_device_reply delete_device_reply;
6158 struct get_next_device_request_reply get_next_device_request_reply;
6159 struct make_process_system_reply make_process_system_reply;
6160 struct get_token_statistics_reply get_token_statistics_reply;
6161 struct create_completion_reply create_completion_reply;
6162 struct open_completion_reply open_completion_reply;
6163 struct add_completion_reply add_completion_reply;
6164 struct remove_completion_reply remove_completion_reply;
6165 struct query_completion_reply query_completion_reply;
6166 struct set_completion_info_reply set_completion_info_reply;
6167 struct add_fd_completion_reply add_fd_completion_reply;
6168 struct set_fd_disp_info_reply set_fd_disp_info_reply;
6169 struct set_fd_name_info_reply set_fd_name_info_reply;
6170 struct get_window_layered_info_reply get_window_layered_info_reply;
6171 struct set_window_layered_info_reply set_window_layered_info_reply;
6172 struct alloc_user_handle_reply alloc_user_handle_reply;
6173 struct free_user_handle_reply free_user_handle_reply;
6174 struct set_cursor_reply set_cursor_reply;
6175 struct update_rawinput_devices_reply update_rawinput_devices_reply;
6176 struct get_suspend_context_reply get_suspend_context_reply;
6177 struct set_suspend_context_reply set_suspend_context_reply;
6178 struct create_job_reply create_job_reply;
6179 struct open_job_reply open_job_reply;
6180 struct assign_job_reply assign_job_reply;
6181 struct process_in_job_reply process_in_job_reply;
6182 struct set_job_limits_reply set_job_limits_reply;
6183 struct set_job_completion_port_reply set_job_completion_port_reply;
6184 struct terminate_job_reply terminate_job_reply;
6187 #define SERVER_PROTOCOL_VERSION 502
6189 #endif /* __WINE_WINE_SERVER_PROTOCOL_H */