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
8 #ifndef __WINE_WINE_SERVER_PROTOCOL_H
9 #define __WINE_WINE_SERVER_PROTOCOL_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;
36 data_size_t request_size;
37 data_size_t reply_size;
43 data_size_t reply_size;
48 struct request_max_size
53 #define FIRST_USER_HANDLE 0x0020
54 #define LAST_USER_HANDLE 0xffef
65 unsigned int exc_code;
71 client_ptr_t params[15];
132 CPU_x86, CPU_x86_64, CPU_ALPHA, CPU_POWERPC, CPU_SPARC
134 typedef int cpu_type_t;
143 struct { unsigned int eip, ebp, esp, eflags, cs, ss; } i386_regs;
144 struct { unsigned __int64 rip, rbp, rsp;
145 unsigned int cs, ss, flags; } x86_64_regs;
146 struct { unsigned __int64 fir;
147 unsigned int psr; } alpha_regs;
148 struct { unsigned int iar, msr, ctr, lr, dar, dsisr, trap; } powerpc_regs;
149 struct { unsigned int psr, pc, npc, y, wim, tbr; } sparc_regs;
153 struct { unsigned int eax, ebx, ecx, edx, esi, edi; } i386_regs;
154 struct { unsigned __int64 rax,rbx, rcx, rdx, rsi, rdi,
155 r8, r9, r10, r11, r12, r13, r14, r15; } x86_64_regs;
156 struct { unsigned __int64 v0, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12,
157 s0, s1, s2, s3, s4, s5, s6, a0, a1, a2, a3, a4, a5, at; } alpha_regs;
158 struct { unsigned int gpr[32], cr, xer; } powerpc_regs;
159 struct { unsigned int g[8], o[8], l[8], i[8]; } sparc_regs;
163 struct { unsigned int ds, es, fs, gs; } i386_regs;
164 struct { unsigned int ds, es, fs, gs; } x86_64_regs;
168 struct { unsigned int ctrl, status, tag, err_off, err_sel, data_off, data_sel, cr0npx;
169 unsigned char regs[80]; } i386_regs;
170 struct { struct { unsigned __int64 low, high; } fpregs[32]; } x86_64_regs;
171 struct { unsigned __int64 f[32], fpcr, softfpcr; } alpha_regs;
172 struct { double fpr[32], fpscr; } powerpc_regs;
176 struct { unsigned int dr0, dr1, dr2, dr3, dr6, dr7; } i386_regs;
177 struct { unsigned __int64 dr0, dr1, dr2, dr3, dr6, dr7; } x86_64_regs;
178 struct { unsigned int dr[8]; } powerpc_regs;
182 unsigned char i386_regs[512];
186 #define SERVER_CTX_CONTROL 0x01
187 #define SERVER_CTX_INTEGER 0x02
188 #define SERVER_CTX_SEGMENTS 0x04
189 #define SERVER_CTX_FLOATING_POINT 0x08
190 #define SERVER_CTX_DEBUG_REGISTERS 0x10
191 #define SERVER_CTX_EXTENDED_REGISTERS 0x20
209 typedef __int64 timeout_t;
210 #define TIMEOUT_INFINITE (((timeout_t)0x7fffffff) << 32 | 0xffffffff)
215 unsigned int debug_flags;
216 unsigned int console_flags;
217 obj_handle_t console;
219 obj_handle_t hstdout;
220 obj_handle_t hstderr;
227 unsigned int attribute;
230 data_size_t curdir_len;
231 data_size_t dllpath_len;
232 data_size_t imagepath_len;
233 data_size_t cmdline_len;
234 data_size_t title_len;
235 data_size_t desktop_len;
236 data_size_t shellinfo_len;
237 data_size_t runtime_len;
270 client_ptr_t callback;
278 struct hardware_msg_data
287 struct callback_msg_data
289 client_ptr_t callback;
294 struct winevent_msg_data
298 client_ptr_t hook_proc;
304 unsigned char bytes[1];
305 struct hardware_msg_data hardware;
306 struct callback_msg_data callback;
307 struct winevent_msg_data winevent;
319 unsigned int low_part;
323 #define MAX_ACL_LEN 65535
325 struct security_descriptor
327 unsigned int control;
328 data_size_t owner_len;
329 data_size_t group_len;
330 data_size_t sacl_len;
331 data_size_t dacl_len;
338 struct object_attributes
340 obj_handle_t rootdir;
342 data_size_t name_len;
401 unsigned int op_type;
404 unsigned int zero_bits;
410 unsigned int op_type;
455 unsigned int alloc_type;
456 unsigned short zero_bits;
505 client_ptr_t alloc_base;
507 unsigned short state;
509 unsigned short alloc_prot;
510 unsigned short alloc_type;
566 struct new_process_request
568 struct request_header __header;
570 unsigned int create_flags;
572 obj_handle_t exe_file;
573 unsigned int process_access;
574 unsigned int process_attr;
575 unsigned int thread_access;
576 unsigned int thread_attr;
577 data_size_t info_size;
578 /* VARARG(info,startup_info,info_size); */
579 /* VARARG(env,unicode_str); */
581 struct new_process_reply
583 struct reply_header __header;
586 obj_handle_t phandle;
588 obj_handle_t thandle;
594 struct get_new_process_info_request
596 struct request_header __header;
599 struct get_new_process_info_reply
601 struct reply_header __header;
608 struct new_thread_request
610 struct request_header __header;
612 unsigned int attributes;
616 struct new_thread_reply
618 struct reply_header __header;
625 struct get_startup_info_request
627 struct request_header __header;
629 struct get_startup_info_reply
631 struct reply_header __header;
632 obj_handle_t exe_file;
633 data_size_t info_size;
634 /* VARARG(info,startup_info,info_size); */
635 /* VARARG(env,unicode_str); */
640 struct init_process_done_request
642 struct request_header __header;
645 client_ptr_t ldt_copy;
648 struct init_process_done_reply
650 struct reply_header __header;
655 struct init_thread_request
657 struct request_header __header;
667 struct init_thread_reply
669 struct reply_header __header;
672 timeout_t server_start;
673 data_size_t info_size;
675 unsigned int all_cpus;
681 struct terminate_process_request
683 struct request_header __header;
687 struct terminate_process_reply
689 struct reply_header __header;
696 struct terminate_thread_request
698 struct request_header __header;
702 struct terminate_thread_reply
704 struct reply_header __header;
711 struct get_process_info_request
713 struct request_header __header;
716 struct get_process_info_reply
718 struct reply_header __header;
723 timeout_t start_time;
733 struct set_process_info_request
735 struct request_header __header;
741 struct set_process_info_reply
743 struct reply_header __header;
745 #define SET_PROCESS_INFO_PRIORITY 0x01
746 #define SET_PROCESS_INFO_AFFINITY 0x02
750 struct get_thread_info_request
752 struct request_header __header;
756 struct get_thread_info_reply
758 struct reply_header __header;
763 timeout_t creation_time;
773 struct set_thread_info_request
775 struct request_header __header;
783 struct set_thread_info_reply
785 struct reply_header __header;
787 #define SET_THREAD_INFO_PRIORITY 0x01
788 #define SET_THREAD_INFO_AFFINITY 0x02
789 #define SET_THREAD_INFO_TOKEN 0x04
793 struct get_dll_info_request
795 struct request_header __header;
797 mod_handle_t base_address;
799 struct get_dll_info_reply
801 struct reply_header __header;
802 client_ptr_t entry_point;
804 data_size_t filename_len;
805 /* VARARG(filename,unicode_str); */
810 struct suspend_thread_request
812 struct request_header __header;
815 struct suspend_thread_reply
817 struct reply_header __header;
824 struct resume_thread_request
826 struct request_header __header;
829 struct resume_thread_reply
831 struct reply_header __header;
838 struct load_dll_request
840 struct request_header __header;
847 /* VARARG(filename,unicode_str); */
850 struct load_dll_reply
852 struct reply_header __header;
857 struct unload_dll_request
859 struct request_header __header;
863 struct unload_dll_reply
865 struct reply_header __header;
870 struct queue_apc_request
872 struct request_header __header;
876 struct queue_apc_reply
878 struct reply_header __header;
885 struct get_apc_result_request
887 struct request_header __header;
890 struct get_apc_result_reply
892 struct reply_header __header;
898 struct close_handle_request
900 struct request_header __header;
903 struct close_handle_reply
905 struct reply_header __header;
910 struct set_handle_info_request
912 struct request_header __header;
917 struct set_handle_info_reply
919 struct reply_header __header;
926 struct dup_handle_request
928 struct request_header __header;
929 obj_handle_t src_process;
930 obj_handle_t src_handle;
931 obj_handle_t dst_process;
933 unsigned int attributes;
934 unsigned int options;
936 struct dup_handle_reply
938 struct reply_header __header;
944 #define DUP_HANDLE_CLOSE_SOURCE DUPLICATE_CLOSE_SOURCE
945 #define DUP_HANDLE_SAME_ACCESS DUPLICATE_SAME_ACCESS
946 #define DUP_HANDLE_MAKE_GLOBAL 0x80000000
950 struct open_process_request
952 struct request_header __header;
955 unsigned int attributes;
957 struct open_process_reply
959 struct reply_header __header;
966 struct open_thread_request
968 struct request_header __header;
971 unsigned int attributes;
973 struct open_thread_reply
975 struct reply_header __header;
982 struct select_request
984 struct request_header __header;
988 obj_handle_t prev_apc;
990 /* VARARG(result,apc_result); */
991 /* VARARG(handles,handles); */
995 struct reply_header __header;
998 obj_handle_t apc_handle;
1001 #define SELECT_ALL 1
1002 #define SELECT_ALERTABLE 2
1003 #define SELECT_INTERRUPTIBLE 4
1007 struct create_event_request
1009 struct request_header __header;
1010 unsigned int access;
1011 unsigned int attributes;
1014 /* VARARG(objattr,object_attributes); */
1016 struct create_event_reply
1018 struct reply_header __header;
1019 obj_handle_t handle;
1024 struct event_op_request
1026 struct request_header __header;
1027 obj_handle_t handle;
1031 struct event_op_reply
1033 struct reply_header __header;
1035 enum event_op { PULSE_EVENT, SET_EVENT, RESET_EVENT };
1039 struct open_event_request
1041 struct request_header __header;
1042 unsigned int access;
1043 unsigned int attributes;
1044 obj_handle_t rootdir;
1045 /* VARARG(name,unicode_str); */
1047 struct open_event_reply
1049 struct reply_header __header;
1050 obj_handle_t handle;
1056 struct create_mutex_request
1058 struct request_header __header;
1059 unsigned int access;
1060 unsigned int attributes;
1062 /* VARARG(objattr,object_attributes); */
1064 struct create_mutex_reply
1066 struct reply_header __header;
1067 obj_handle_t handle;
1073 struct release_mutex_request
1075 struct request_header __header;
1076 obj_handle_t handle;
1078 struct release_mutex_reply
1080 struct reply_header __header;
1081 unsigned int prev_count;
1087 struct open_mutex_request
1089 struct request_header __header;
1090 unsigned int access;
1091 unsigned int attributes;
1092 obj_handle_t rootdir;
1093 /* VARARG(name,unicode_str); */
1095 struct open_mutex_reply
1097 struct reply_header __header;
1098 obj_handle_t handle;
1104 struct create_semaphore_request
1106 struct request_header __header;
1107 unsigned int access;
1108 unsigned int attributes;
1109 unsigned int initial;
1111 /* VARARG(objattr,object_attributes); */
1113 struct create_semaphore_reply
1115 struct reply_header __header;
1116 obj_handle_t handle;
1122 struct release_semaphore_request
1124 struct request_header __header;
1125 obj_handle_t handle;
1128 struct release_semaphore_reply
1130 struct reply_header __header;
1131 unsigned int prev_count;
1137 struct open_semaphore_request
1139 struct request_header __header;
1140 unsigned int access;
1141 unsigned int attributes;
1142 obj_handle_t rootdir;
1143 /* VARARG(name,unicode_str); */
1145 struct open_semaphore_reply
1147 struct reply_header __header;
1148 obj_handle_t handle;
1154 struct create_file_request
1156 struct request_header __header;
1157 unsigned int access;
1158 unsigned int attributes;
1159 unsigned int sharing;
1161 unsigned int options;
1163 /* VARARG(objattr,object_attributes); */
1164 /* VARARG(filename,string); */
1166 struct create_file_reply
1168 struct reply_header __header;
1169 obj_handle_t handle;
1175 struct open_file_object_request
1177 struct request_header __header;
1178 unsigned int access;
1179 unsigned int attributes;
1180 obj_handle_t rootdir;
1181 unsigned int sharing;
1182 unsigned int options;
1183 /* VARARG(filename,unicode_str); */
1185 struct open_file_object_reply
1187 struct reply_header __header;
1188 obj_handle_t handle;
1194 struct alloc_file_handle_request
1196 struct request_header __header;
1197 unsigned int access;
1198 unsigned int attributes;
1201 struct alloc_file_handle_reply
1203 struct reply_header __header;
1204 obj_handle_t handle;
1210 struct get_handle_fd_request
1212 struct request_header __header;
1213 obj_handle_t handle;
1215 struct get_handle_fd_reply
1217 struct reply_header __header;
1220 unsigned int access;
1221 unsigned int options;
1239 struct flush_file_request
1241 struct request_header __header;
1242 obj_handle_t handle;
1244 struct flush_file_reply
1246 struct reply_header __header;
1253 struct lock_file_request
1255 struct request_header __header;
1256 obj_handle_t handle;
1262 struct lock_file_reply
1264 struct reply_header __header;
1265 obj_handle_t handle;
1271 struct unlock_file_request
1273 struct request_header __header;
1274 obj_handle_t handle;
1278 struct unlock_file_reply
1280 struct reply_header __header;
1285 struct create_socket_request
1287 struct request_header __header;
1288 unsigned int access;
1289 unsigned int attributes;
1295 struct create_socket_reply
1297 struct reply_header __header;
1298 obj_handle_t handle;
1304 struct accept_socket_request
1306 struct request_header __header;
1307 obj_handle_t lhandle;
1308 unsigned int access;
1309 unsigned int attributes;
1311 struct accept_socket_reply
1313 struct reply_header __header;
1314 obj_handle_t handle;
1320 struct set_socket_event_request
1322 struct request_header __header;
1323 obj_handle_t handle;
1326 user_handle_t window;
1329 struct set_socket_event_reply
1331 struct reply_header __header;
1336 struct get_socket_event_request
1338 struct request_header __header;
1339 obj_handle_t handle;
1341 obj_handle_t c_event;
1343 struct get_socket_event_reply
1345 struct reply_header __header;
1349 /* VARARG(errors,ints); */
1355 struct enable_socket_event_request
1357 struct request_header __header;
1358 obj_handle_t handle;
1360 unsigned int sstate;
1361 unsigned int cstate;
1364 struct enable_socket_event_reply
1366 struct reply_header __header;
1369 struct set_socket_deferred_request
1371 struct request_header __header;
1372 obj_handle_t handle;
1373 obj_handle_t deferred;
1376 struct set_socket_deferred_reply
1378 struct reply_header __header;
1382 struct alloc_console_request
1384 struct request_header __header;
1385 unsigned int access;
1386 unsigned int attributes;
1389 struct alloc_console_reply
1391 struct reply_header __header;
1392 obj_handle_t handle_in;
1398 struct free_console_request
1400 struct request_header __header;
1403 struct free_console_reply
1405 struct reply_header __header;
1409 #define CONSOLE_RENDERER_NONE_EVENT 0x00
1410 #define CONSOLE_RENDERER_TITLE_EVENT 0x01
1411 #define CONSOLE_RENDERER_ACTIVE_SB_EVENT 0x02
1412 #define CONSOLE_RENDERER_SB_RESIZE_EVENT 0x03
1413 #define CONSOLE_RENDERER_UPDATE_EVENT 0x04
1414 #define CONSOLE_RENDERER_CURSOR_POS_EVENT 0x05
1415 #define CONSOLE_RENDERER_CURSOR_GEOM_EVENT 0x06
1416 #define CONSOLE_RENDERER_DISPLAY_EVENT 0x07
1417 #define CONSOLE_RENDERER_EXIT_EVENT 0x08
1418 struct console_renderer_event
1454 struct get_console_renderer_events_request
1456 struct request_header __header;
1457 obj_handle_t handle;
1459 struct get_console_renderer_events_reply
1461 struct reply_header __header;
1462 /* VARARG(data,bytes); */
1467 struct open_console_request
1469 struct request_header __header;
1472 unsigned int access;
1473 unsigned int attributes;
1476 struct open_console_reply
1478 struct reply_header __header;
1479 obj_handle_t handle;
1485 struct get_console_wait_event_request
1487 struct request_header __header;
1489 struct get_console_wait_event_reply
1491 struct reply_header __header;
1492 obj_handle_t handle;
1497 struct get_console_mode_request
1499 struct request_header __header;
1500 obj_handle_t handle;
1502 struct get_console_mode_reply
1504 struct reply_header __header;
1511 struct set_console_mode_request
1513 struct request_header __header;
1514 obj_handle_t handle;
1518 struct set_console_mode_reply
1520 struct reply_header __header;
1525 struct set_console_input_info_request
1527 struct request_header __header;
1528 obj_handle_t handle;
1530 obj_handle_t active_sb;
1537 /* VARARG(title,unicode_str); */
1539 struct set_console_input_info_reply
1541 struct reply_header __header;
1543 #define SET_CONSOLE_INPUT_INFO_ACTIVE_SB 0x01
1544 #define SET_CONSOLE_INPUT_INFO_TITLE 0x02
1545 #define SET_CONSOLE_INPUT_INFO_HISTORY_MODE 0x04
1546 #define SET_CONSOLE_INPUT_INFO_HISTORY_SIZE 0x08
1547 #define SET_CONSOLE_INPUT_INFO_EDITION_MODE 0x10
1548 #define SET_CONSOLE_INPUT_INFO_INPUT_CODEPAGE 0x20
1549 #define SET_CONSOLE_INPUT_INFO_OUTPUT_CODEPAGE 0x40
1550 #define SET_CONSOLE_INPUT_INFO_WIN 0x80
1554 struct get_console_input_info_request
1556 struct request_header __header;
1557 obj_handle_t handle;
1559 struct get_console_input_info_reply
1561 struct reply_header __header;
1569 /* VARARG(title,unicode_str); */
1575 struct append_console_input_history_request
1577 struct request_header __header;
1578 obj_handle_t handle;
1579 /* VARARG(line,unicode_str); */
1581 struct append_console_input_history_reply
1583 struct reply_header __header;
1588 struct get_console_input_history_request
1590 struct request_header __header;
1591 obj_handle_t handle;
1594 struct get_console_input_history_reply
1596 struct reply_header __header;
1598 /* VARARG(line,unicode_str); */
1604 struct create_console_output_request
1606 struct request_header __header;
1607 obj_handle_t handle_in;
1608 unsigned int access;
1609 unsigned int attributes;
1612 struct create_console_output_reply
1614 struct reply_header __header;
1615 obj_handle_t handle_out;
1621 struct set_console_output_info_request
1623 struct request_header __header;
1624 obj_handle_t handle;
1626 short int cursor_size;
1627 short int cursor_visible;
1635 short int win_right;
1636 short int win_bottom;
1637 short int max_width;
1638 short int max_height;
1641 struct set_console_output_info_reply
1643 struct reply_header __header;
1645 #define SET_CONSOLE_OUTPUT_INFO_CURSOR_GEOM 0x01
1646 #define SET_CONSOLE_OUTPUT_INFO_CURSOR_POS 0x02
1647 #define SET_CONSOLE_OUTPUT_INFO_SIZE 0x04
1648 #define SET_CONSOLE_OUTPUT_INFO_ATTR 0x08
1649 #define SET_CONSOLE_OUTPUT_INFO_DISPLAY_WINDOW 0x10
1650 #define SET_CONSOLE_OUTPUT_INFO_MAX_SIZE 0x20
1654 struct get_console_output_info_request
1656 struct request_header __header;
1657 obj_handle_t handle;
1659 struct get_console_output_info_reply
1661 struct reply_header __header;
1662 short int cursor_size;
1663 short int cursor_visible;
1671 short int win_right;
1672 short int win_bottom;
1673 short int max_width;
1674 short int max_height;
1679 struct write_console_input_request
1681 struct request_header __header;
1682 obj_handle_t handle;
1683 /* VARARG(rec,input_records); */
1685 struct write_console_input_reply
1687 struct reply_header __header;
1694 struct read_console_input_request
1696 struct request_header __header;
1697 obj_handle_t handle;
1700 struct read_console_input_reply
1702 struct reply_header __header;
1704 /* VARARG(rec,input_records); */
1710 struct write_console_output_request
1712 struct request_header __header;
1713 obj_handle_t handle;
1718 /* VARARG(data,bytes); */
1720 struct write_console_output_reply
1722 struct reply_header __header;
1730 CHAR_INFO_MODE_TEXT,
1731 CHAR_INFO_MODE_ATTR,
1732 CHAR_INFO_MODE_TEXTATTR,
1733 CHAR_INFO_MODE_TEXTSTDATTR
1738 struct fill_console_output_request
1740 struct request_header __header;
1741 obj_handle_t handle;
1749 struct fill_console_output_reply
1751 struct reply_header __header;
1758 struct read_console_output_request
1760 struct request_header __header;
1761 obj_handle_t handle;
1767 struct read_console_output_reply
1769 struct reply_header __header;
1772 /* VARARG(data,bytes); */
1777 struct move_console_output_request
1779 struct request_header __header;
1780 obj_handle_t handle;
1789 struct move_console_output_reply
1791 struct reply_header __header;
1796 struct send_console_signal_request
1798 struct request_header __header;
1800 process_id_t group_id;
1803 struct send_console_signal_reply
1805 struct reply_header __header;
1810 struct read_directory_changes_request
1812 struct request_header __header;
1813 unsigned int filter;
1818 struct read_directory_changes_reply
1820 struct reply_header __header;
1824 struct read_change_request
1826 struct request_header __header;
1827 obj_handle_t handle;
1829 struct read_change_reply
1831 struct reply_header __header;
1833 /* VARARG(name,string); */
1839 struct create_mapping_request
1841 struct request_header __header;
1842 unsigned int access;
1843 unsigned int attributes;
1844 unsigned int protect;
1846 obj_handle_t file_handle;
1847 /* VARARG(objattr,object_attributes); */
1849 struct create_mapping_reply
1851 struct reply_header __header;
1852 obj_handle_t handle;
1856 #define VPROT_READ 0x01
1857 #define VPROT_WRITE 0x02
1858 #define VPROT_EXEC 0x04
1859 #define VPROT_WRITECOPY 0x08
1860 #define VPROT_GUARD 0x10
1861 #define VPROT_NOCACHE 0x20
1862 #define VPROT_COMMITTED 0x40
1863 #define VPROT_WRITEWATCH 0x80
1865 #define VPROT_IMAGE 0x0100
1866 #define VPROT_SYSTEM 0x0200
1867 #define VPROT_VALLOC 0x0400
1868 #define VPROT_NOEXEC 0x0800
1872 struct open_mapping_request
1874 struct request_header __header;
1875 unsigned int access;
1876 unsigned int attributes;
1877 obj_handle_t rootdir;
1878 /* VARARG(name,unicode_str); */
1880 struct open_mapping_reply
1882 struct reply_header __header;
1883 obj_handle_t handle;
1889 struct get_mapping_info_request
1891 struct request_header __header;
1892 obj_handle_t handle;
1893 unsigned int access;
1895 struct get_mapping_info_reply
1897 struct reply_header __header;
1902 obj_handle_t mapping;
1903 obj_handle_t shared_file;
1908 struct get_mapping_committed_range_request
1910 struct request_header __header;
1911 obj_handle_t handle;
1914 struct get_mapping_committed_range_reply
1916 struct reply_header __header;
1924 struct add_mapping_committed_range_request
1926 struct request_header __header;
1927 obj_handle_t handle;
1931 struct add_mapping_committed_range_reply
1933 struct reply_header __header;
1937 #define SNAP_PROCESS 0x00000001
1938 #define SNAP_THREAD 0x00000002
1940 struct create_snapshot_request
1942 struct request_header __header;
1943 unsigned int attributes;
1946 struct create_snapshot_reply
1948 struct reply_header __header;
1949 obj_handle_t handle;
1955 struct next_process_request
1957 struct request_header __header;
1958 obj_handle_t handle;
1961 struct next_process_reply
1963 struct reply_header __header;
1970 /* VARARG(filename,unicode_str); */
1975 struct next_thread_request
1977 struct request_header __header;
1978 obj_handle_t handle;
1981 struct next_thread_reply
1983 struct reply_header __header;
1994 struct wait_debug_event_request
1996 struct request_header __header;
1999 struct wait_debug_event_reply
2001 struct reply_header __header;
2005 /* VARARG(event,debug_event); */
2011 struct queue_exception_event_request
2013 struct request_header __header;
2017 client_ptr_t record;
2018 client_ptr_t address;
2020 /* VARARG(params,uints64,len); */
2021 /* VARARG(context,context); */
2023 struct queue_exception_event_reply
2025 struct reply_header __header;
2026 obj_handle_t handle;
2032 struct get_exception_status_request
2034 struct request_header __header;
2035 obj_handle_t handle;
2037 struct get_exception_status_reply
2039 struct reply_header __header;
2040 /* VARARG(context,context); */
2045 struct output_debug_string_request
2047 struct request_header __header;
2049 client_ptr_t string;
2051 struct output_debug_string_reply
2053 struct reply_header __header;
2058 struct continue_debug_event_request
2060 struct request_header __header;
2065 struct continue_debug_event_reply
2067 struct reply_header __header;
2072 struct debug_process_request
2074 struct request_header __header;
2079 struct debug_process_reply
2081 struct reply_header __header;
2086 struct debug_break_request
2088 struct request_header __header;
2089 obj_handle_t handle;
2091 struct debug_break_reply
2093 struct reply_header __header;
2100 struct set_debugger_kill_on_exit_request
2102 struct request_header __header;
2105 struct set_debugger_kill_on_exit_reply
2107 struct reply_header __header;
2112 struct read_process_memory_request
2114 struct request_header __header;
2115 obj_handle_t handle;
2118 struct read_process_memory_reply
2120 struct reply_header __header;
2121 /* VARARG(data,bytes); */
2126 struct write_process_memory_request
2128 struct request_header __header;
2129 obj_handle_t handle;
2131 /* VARARG(data,bytes); */
2133 struct write_process_memory_reply
2135 struct reply_header __header;
2140 struct create_key_request
2142 struct request_header __header;
2143 obj_handle_t parent;
2144 unsigned int access;
2145 unsigned int attributes;
2146 unsigned int options;
2147 data_size_t namelen;
2148 /* VARARG(name,unicode_str,namelen); */
2149 /* VARARG(class,unicode_str); */
2151 struct create_key_reply
2153 struct reply_header __header;
2159 struct open_key_request
2161 struct request_header __header;
2162 obj_handle_t parent;
2163 unsigned int access;
2164 unsigned int attributes;
2165 /* VARARG(name,unicode_str); */
2167 struct open_key_reply
2169 struct reply_header __header;
2176 struct delete_key_request
2178 struct request_header __header;
2181 struct delete_key_reply
2183 struct reply_header __header;
2188 struct flush_key_request
2190 struct request_header __header;
2193 struct flush_key_reply
2195 struct reply_header __header;
2200 struct enum_key_request
2202 struct request_header __header;
2207 struct enum_key_reply
2209 struct reply_header __header;
2218 data_size_t namelen;
2219 /* VARARG(name,unicode_str,namelen); */
2220 /* VARARG(class,unicode_str); */
2225 struct set_key_value_request
2227 struct request_header __header;
2230 data_size_t namelen;
2231 /* VARARG(name,unicode_str,namelen); */
2232 /* VARARG(data,bytes); */
2234 struct set_key_value_reply
2236 struct reply_header __header;
2241 struct get_key_value_request
2243 struct request_header __header;
2245 /* VARARG(name,unicode_str); */
2247 struct get_key_value_reply
2249 struct reply_header __header;
2252 /* VARARG(data,bytes); */
2257 struct enum_key_value_request
2259 struct request_header __header;
2264 struct enum_key_value_reply
2266 struct reply_header __header;
2269 data_size_t namelen;
2270 /* VARARG(name,unicode_str,namelen); */
2271 /* VARARG(data,bytes); */
2277 struct delete_key_value_request
2279 struct request_header __header;
2281 /* VARARG(name,unicode_str); */
2283 struct delete_key_value_reply
2285 struct reply_header __header;
2290 struct load_registry_request
2292 struct request_header __header;
2295 /* VARARG(name,unicode_str); */
2298 struct load_registry_reply
2300 struct reply_header __header;
2305 struct unload_registry_request
2307 struct request_header __header;
2310 struct unload_registry_reply
2312 struct reply_header __header;
2317 struct save_registry_request
2319 struct request_header __header;
2324 struct save_registry_reply
2326 struct reply_header __header;
2331 struct set_registry_notification_request
2333 struct request_header __header;
2337 unsigned int filter;
2340 struct set_registry_notification_reply
2342 struct reply_header __header;
2347 struct create_timer_request
2349 struct request_header __header;
2350 unsigned int access;
2351 unsigned int attributes;
2352 obj_handle_t rootdir;
2354 /* VARARG(name,unicode_str); */
2356 struct create_timer_reply
2358 struct reply_header __header;
2359 obj_handle_t handle;
2365 struct open_timer_request
2367 struct request_header __header;
2368 unsigned int access;
2369 unsigned int attributes;
2370 obj_handle_t rootdir;
2371 /* VARARG(name,unicode_str); */
2373 struct open_timer_reply
2375 struct reply_header __header;
2376 obj_handle_t handle;
2381 struct set_timer_request
2383 struct request_header __header;
2384 obj_handle_t handle;
2386 client_ptr_t callback;
2390 struct set_timer_reply
2392 struct reply_header __header;
2398 struct cancel_timer_request
2400 struct request_header __header;
2401 obj_handle_t handle;
2403 struct cancel_timer_reply
2405 struct reply_header __header;
2411 struct get_timer_info_request
2413 struct request_header __header;
2414 obj_handle_t handle;
2416 struct get_timer_info_reply
2418 struct reply_header __header;
2426 struct get_thread_context_request
2428 struct request_header __header;
2429 obj_handle_t handle;
2433 struct get_thread_context_reply
2435 struct reply_header __header;
2437 /* VARARG(context,context); */
2443 struct set_thread_context_request
2445 struct request_header __header;
2446 obj_handle_t handle;
2448 /* VARARG(context,context); */
2450 struct set_thread_context_reply
2452 struct reply_header __header;
2459 struct get_selector_entry_request
2461 struct request_header __header;
2462 obj_handle_t handle;
2465 struct get_selector_entry_reply
2467 struct reply_header __header;
2470 unsigned char flags;
2476 struct add_atom_request
2478 struct request_header __header;
2480 /* VARARG(name,unicode_str); */
2482 struct add_atom_reply
2484 struct reply_header __header;
2491 struct delete_atom_request
2493 struct request_header __header;
2498 struct delete_atom_reply
2500 struct reply_header __header;
2505 struct find_atom_request
2507 struct request_header __header;
2509 /* VARARG(name,unicode_str); */
2511 struct find_atom_reply
2513 struct reply_header __header;
2520 struct get_atom_information_request
2522 struct request_header __header;
2526 struct get_atom_information_reply
2528 struct reply_header __header;
2532 /* VARARG(name,unicode_str); */
2538 struct set_atom_information_request
2540 struct request_header __header;
2545 struct set_atom_information_reply
2547 struct reply_header __header;
2552 struct empty_atom_table_request
2554 struct request_header __header;
2559 struct empty_atom_table_reply
2561 struct reply_header __header;
2566 struct init_atom_table_request
2568 struct request_header __header;
2571 struct init_atom_table_reply
2573 struct reply_header __header;
2580 struct get_msg_queue_request
2582 struct request_header __header;
2584 struct get_msg_queue_reply
2586 struct reply_header __header;
2587 obj_handle_t handle;
2593 struct set_queue_fd_request
2595 struct request_header __header;
2596 obj_handle_t handle;
2598 struct set_queue_fd_reply
2600 struct reply_header __header;
2605 struct set_queue_mask_request
2607 struct request_header __header;
2608 unsigned int wake_mask;
2609 unsigned int changed_mask;
2612 struct set_queue_mask_reply
2614 struct reply_header __header;
2615 unsigned int wake_bits;
2616 unsigned int changed_bits;
2621 struct get_queue_status_request
2623 struct request_header __header;
2626 struct get_queue_status_reply
2628 struct reply_header __header;
2629 unsigned int wake_bits;
2630 unsigned int changed_bits;
2635 struct get_process_idle_event_request
2637 struct request_header __header;
2638 obj_handle_t handle;
2640 struct get_process_idle_event_reply
2642 struct reply_header __header;
2649 struct send_message_request
2651 struct request_header __header;
2660 /* VARARG(data,message_data); */
2662 struct send_message_reply
2664 struct reply_header __header;
2667 struct post_quit_message_request
2669 struct request_header __header;
2672 struct post_quit_message_reply
2674 struct reply_header __header;
2683 MSG_CALLBACK_RESULT,
2689 #define SEND_MSG_ABORT_IF_HUNG 0x01
2693 struct send_hardware_message_request
2695 struct request_header __header;
2707 struct send_hardware_message_reply
2709 struct reply_header __header;
2714 struct get_message_request
2716 struct request_header __header;
2718 user_handle_t get_win;
2719 unsigned int get_first;
2720 unsigned int get_last;
2722 unsigned int wake_mask;
2723 unsigned int changed_mask;
2725 struct get_message_reply
2727 struct reply_header __header;
2734 unsigned int active_hooks;
2736 /* VARARG(data,message_data); */
2741 struct reply_message_request
2743 struct request_header __header;
2746 /* VARARG(data,bytes); */
2748 struct reply_message_reply
2750 struct reply_header __header;
2755 struct accept_hardware_message_request
2757 struct request_header __header;
2760 user_handle_t new_win;
2762 struct accept_hardware_message_reply
2764 struct reply_header __header;
2769 struct get_message_reply_request
2771 struct request_header __header;
2774 struct get_message_reply_reply
2776 struct reply_header __header;
2778 /* VARARG(data,bytes); */
2783 struct set_win_timer_request
2785 struct request_header __header;
2792 struct set_win_timer_reply
2794 struct reply_header __header;
2800 struct kill_win_timer_request
2802 struct request_header __header;
2808 struct kill_win_timer_reply
2810 struct reply_header __header;
2815 struct is_window_hung_request
2817 struct request_header __header;
2820 struct is_window_hung_reply
2822 struct reply_header __header;
2829 struct get_serial_info_request
2831 struct request_header __header;
2832 obj_handle_t handle;
2834 struct get_serial_info_reply
2836 struct reply_header __header;
2837 unsigned int readinterval;
2838 unsigned int readconst;
2839 unsigned int readmult;
2840 unsigned int writeconst;
2841 unsigned int writemult;
2842 unsigned int eventmask;
2847 struct set_serial_info_request
2849 struct request_header __header;
2850 obj_handle_t handle;
2852 unsigned int readinterval;
2853 unsigned int readconst;
2854 unsigned int readmult;
2855 unsigned int writeconst;
2856 unsigned int writemult;
2857 unsigned int eventmask;
2860 struct set_serial_info_reply
2862 struct reply_header __header;
2864 #define SERIALINFO_SET_TIMEOUTS 0x01
2865 #define SERIALINFO_SET_MASK 0x02
2869 struct register_async_request
2871 struct request_header __header;
2877 struct register_async_reply
2879 struct reply_header __header;
2881 #define ASYNC_TYPE_READ 0x01
2882 #define ASYNC_TYPE_WRITE 0x02
2883 #define ASYNC_TYPE_WAIT 0x03
2887 struct cancel_async_request
2889 struct request_header __header;
2890 obj_handle_t handle;
2895 struct cancel_async_reply
2897 struct reply_header __header;
2902 struct ioctl_request
2904 struct request_header __header;
2908 /* VARARG(in_data,bytes); */
2912 struct reply_header __header;
2914 unsigned int options;
2915 /* VARARG(out_data,bytes); */
2920 struct get_ioctl_result_request
2922 struct request_header __header;
2923 obj_handle_t handle;
2924 client_ptr_t user_arg;
2926 struct get_ioctl_result_reply
2928 struct reply_header __header;
2929 /* VARARG(out_data,bytes); */
2934 struct create_named_pipe_request
2936 struct request_header __header;
2937 unsigned int access;
2938 unsigned int attributes;
2939 obj_handle_t rootdir;
2940 unsigned int options;
2941 unsigned int maxinstances;
2942 unsigned int outsize;
2943 unsigned int insize;
2946 /* VARARG(name,unicode_str); */
2948 struct create_named_pipe_reply
2950 struct reply_header __header;
2951 obj_handle_t handle;
2956 #define NAMED_PIPE_MESSAGE_STREAM_WRITE 0x0001
2957 #define NAMED_PIPE_MESSAGE_STREAM_READ 0x0002
2958 #define NAMED_PIPE_NONBLOCKING_MODE 0x0004
2959 #define NAMED_PIPE_SERVER_END 0x8000
2962 struct get_named_pipe_info_request
2964 struct request_header __header;
2965 obj_handle_t handle;
2967 struct get_named_pipe_info_reply
2969 struct reply_header __header;
2971 unsigned int maxinstances;
2972 unsigned int instances;
2973 unsigned int outsize;
2974 unsigned int insize;
2980 struct create_window_request
2982 struct request_header __header;
2983 user_handle_t parent;
2984 user_handle_t owner;
2986 mod_handle_t instance;
2987 /* VARARG(class,unicode_str); */
2989 struct create_window_reply
2991 struct reply_header __header;
2992 user_handle_t handle;
2993 user_handle_t parent;
2994 user_handle_t owner;
2996 client_ptr_t class_ptr;
3001 struct destroy_window_request
3003 struct request_header __header;
3004 user_handle_t handle;
3006 struct destroy_window_reply
3008 struct reply_header __header;
3013 struct get_desktop_window_request
3015 struct request_header __header;
3018 struct get_desktop_window_reply
3020 struct reply_header __header;
3021 user_handle_t top_window;
3022 user_handle_t msg_window;
3027 struct set_window_owner_request
3029 struct request_header __header;
3030 user_handle_t handle;
3031 user_handle_t owner;
3033 struct set_window_owner_reply
3035 struct reply_header __header;
3036 user_handle_t full_owner;
3037 user_handle_t prev_owner;
3042 struct get_window_info_request
3044 struct request_header __header;
3045 user_handle_t handle;
3047 struct get_window_info_reply
3049 struct reply_header __header;
3050 user_handle_t full_handle;
3051 user_handle_t last_active;
3060 struct set_window_info_request
3062 struct request_header __header;
3063 unsigned short flags;
3064 short int is_unicode;
3065 user_handle_t handle;
3067 unsigned int ex_style;
3069 mod_handle_t instance;
3072 data_size_t extra_size;
3073 lparam_t extra_value;
3075 struct set_window_info_reply
3077 struct reply_header __header;
3078 unsigned int old_style;
3079 unsigned int old_ex_style;
3080 mod_handle_t old_instance;
3081 lparam_t old_user_data;
3082 lparam_t old_extra_value;
3083 unsigned int old_id;
3086 #define SET_WIN_STYLE 0x01
3087 #define SET_WIN_EXSTYLE 0x02
3088 #define SET_WIN_ID 0x04
3089 #define SET_WIN_INSTANCE 0x08
3090 #define SET_WIN_USERDATA 0x10
3091 #define SET_WIN_EXTRA 0x20
3092 #define SET_WIN_UNICODE 0x40
3096 struct set_parent_request
3098 struct request_header __header;
3099 user_handle_t handle;
3100 user_handle_t parent;
3102 struct set_parent_reply
3104 struct reply_header __header;
3105 user_handle_t old_parent;
3106 user_handle_t full_parent;
3111 struct get_window_parents_request
3113 struct request_header __header;
3114 user_handle_t handle;
3116 struct get_window_parents_reply
3118 struct reply_header __header;
3120 /* VARARG(parents,user_handles); */
3126 struct get_window_children_request
3128 struct request_header __header;
3129 obj_handle_t desktop;
3130 user_handle_t parent;
3133 /* VARARG(class,unicode_str); */
3135 struct get_window_children_reply
3137 struct reply_header __header;
3139 /* VARARG(children,user_handles); */
3145 struct get_window_children_from_point_request
3147 struct request_header __header;
3148 user_handle_t parent;
3152 struct get_window_children_from_point_reply
3154 struct reply_header __header;
3156 /* VARARG(children,user_handles); */
3162 struct get_window_tree_request
3164 struct request_header __header;
3165 user_handle_t handle;
3167 struct get_window_tree_reply
3169 struct reply_header __header;
3170 user_handle_t parent;
3171 user_handle_t owner;
3172 user_handle_t next_sibling;
3173 user_handle_t prev_sibling;
3174 user_handle_t first_sibling;
3175 user_handle_t last_sibling;
3176 user_handle_t first_child;
3177 user_handle_t last_child;
3181 struct set_window_pos_request
3183 struct request_header __header;
3185 user_handle_t handle;
3186 user_handle_t previous;
3189 /* VARARG(valid,rectangles); */
3191 struct set_window_pos_reply
3193 struct reply_header __header;
3194 unsigned int new_style;
3195 unsigned int new_ex_style;
3200 struct get_window_rectangles_request
3202 struct request_header __header;
3203 user_handle_t handle;
3205 struct get_window_rectangles_reply
3207 struct reply_header __header;
3209 rectangle_t visible;
3215 struct get_window_text_request
3217 struct request_header __header;
3218 user_handle_t handle;
3220 struct get_window_text_reply
3222 struct reply_header __header;
3223 /* VARARG(text,unicode_str); */
3228 struct set_window_text_request
3230 struct request_header __header;
3231 user_handle_t handle;
3232 /* VARARG(text,unicode_str); */
3234 struct set_window_text_reply
3236 struct reply_header __header;
3241 struct get_windows_offset_request
3243 struct request_header __header;
3247 struct get_windows_offset_reply
3249 struct reply_header __header;
3256 struct get_visible_region_request
3258 struct request_header __header;
3259 user_handle_t window;
3262 struct get_visible_region_reply
3264 struct reply_header __header;
3265 user_handle_t top_win;
3266 rectangle_t top_rect;
3267 rectangle_t win_rect;
3268 data_size_t total_size;
3269 /* VARARG(region,rectangles); */
3274 struct get_window_region_request
3276 struct request_header __header;
3277 user_handle_t window;
3279 struct get_window_region_reply
3281 struct reply_header __header;
3282 data_size_t total_size;
3283 /* VARARG(region,rectangles); */
3289 struct set_window_region_request
3291 struct request_header __header;
3292 user_handle_t window;
3294 /* VARARG(region,rectangles); */
3297 struct set_window_region_reply
3299 struct reply_header __header;
3304 struct get_update_region_request
3306 struct request_header __header;
3307 user_handle_t window;
3308 user_handle_t from_child;
3311 struct get_update_region_reply
3313 struct reply_header __header;
3314 user_handle_t child;
3316 data_size_t total_size;
3317 /* VARARG(region,rectangles); */
3320 #define UPDATE_NONCLIENT 0x01
3321 #define UPDATE_ERASE 0x02
3322 #define UPDATE_PAINT 0x04
3323 #define UPDATE_INTERNALPAINT 0x08
3324 #define UPDATE_ALLCHILDREN 0x10
3325 #define UPDATE_NOCHILDREN 0x20
3326 #define UPDATE_NOREGION 0x40
3327 #define UPDATE_DELAYED_ERASE 0x80
3331 struct update_window_zorder_request
3333 struct request_header __header;
3334 user_handle_t window;
3337 struct update_window_zorder_reply
3339 struct reply_header __header;
3344 struct redraw_window_request
3346 struct request_header __header;
3347 user_handle_t window;
3349 /* VARARG(region,rectangles); */
3352 struct redraw_window_reply
3354 struct reply_header __header;
3359 struct set_window_property_request
3361 struct request_header __header;
3362 user_handle_t window;
3365 /* VARARG(name,unicode_str); */
3368 struct set_window_property_reply
3370 struct reply_header __header;
3375 struct remove_window_property_request
3377 struct request_header __header;
3378 user_handle_t window;
3380 /* VARARG(name,unicode_str); */
3382 struct remove_window_property_reply
3384 struct reply_header __header;
3390 struct get_window_property_request
3392 struct request_header __header;
3393 user_handle_t window;
3395 /* VARARG(name,unicode_str); */
3397 struct get_window_property_reply
3399 struct reply_header __header;
3405 struct get_window_properties_request
3407 struct request_header __header;
3408 user_handle_t window;
3410 struct get_window_properties_reply
3412 struct reply_header __header;
3414 /* VARARG(props,properties); */
3420 struct create_winstation_request
3422 struct request_header __header;
3424 unsigned int access;
3425 unsigned int attributes;
3426 /* VARARG(name,unicode_str); */
3428 struct create_winstation_reply
3430 struct reply_header __header;
3431 obj_handle_t handle;
3437 struct open_winstation_request
3439 struct request_header __header;
3440 unsigned int access;
3441 unsigned int attributes;
3442 /* VARARG(name,unicode_str); */
3444 struct open_winstation_reply
3446 struct reply_header __header;
3447 obj_handle_t handle;
3453 struct close_winstation_request
3455 struct request_header __header;
3456 obj_handle_t handle;
3458 struct close_winstation_reply
3460 struct reply_header __header;
3465 struct get_process_winstation_request
3467 struct request_header __header;
3469 struct get_process_winstation_reply
3471 struct reply_header __header;
3472 obj_handle_t handle;
3478 struct set_process_winstation_request
3480 struct request_header __header;
3481 obj_handle_t handle;
3483 struct set_process_winstation_reply
3485 struct reply_header __header;
3490 struct enum_winstation_request
3492 struct request_header __header;
3495 struct enum_winstation_reply
3497 struct reply_header __header;
3499 /* VARARG(name,unicode_str); */
3505 struct create_desktop_request
3507 struct request_header __header;
3509 unsigned int access;
3510 unsigned int attributes;
3511 /* VARARG(name,unicode_str); */
3513 struct create_desktop_reply
3515 struct reply_header __header;
3516 obj_handle_t handle;
3522 struct open_desktop_request
3524 struct request_header __header;
3525 obj_handle_t winsta;
3527 unsigned int access;
3528 unsigned int attributes;
3529 /* VARARG(name,unicode_str); */
3531 struct open_desktop_reply
3533 struct reply_header __header;
3534 obj_handle_t handle;
3540 struct close_desktop_request
3542 struct request_header __header;
3543 obj_handle_t handle;
3545 struct close_desktop_reply
3547 struct reply_header __header;
3552 struct get_thread_desktop_request
3554 struct request_header __header;
3557 struct get_thread_desktop_reply
3559 struct reply_header __header;
3560 obj_handle_t handle;
3566 struct set_thread_desktop_request
3568 struct request_header __header;
3569 obj_handle_t handle;
3571 struct set_thread_desktop_reply
3573 struct reply_header __header;
3578 struct enum_desktop_request
3580 struct request_header __header;
3581 obj_handle_t winstation;
3584 struct enum_desktop_reply
3586 struct reply_header __header;
3588 /* VARARG(name,unicode_str); */
3594 struct set_user_object_info_request
3596 struct request_header __header;
3597 obj_handle_t handle;
3599 unsigned int obj_flags;
3601 struct set_user_object_info_reply
3603 struct reply_header __header;
3605 unsigned int old_obj_flags;
3606 /* VARARG(name,unicode_str); */
3608 #define SET_USER_OBJECT_FLAGS 1
3612 struct attach_thread_input_request
3614 struct request_header __header;
3615 thread_id_t tid_from;
3619 struct attach_thread_input_reply
3621 struct reply_header __header;
3626 struct get_thread_input_request
3628 struct request_header __header;
3631 struct get_thread_input_reply
3633 struct reply_header __header;
3634 user_handle_t focus;
3635 user_handle_t capture;
3636 user_handle_t active;
3637 user_handle_t foreground;
3638 user_handle_t menu_owner;
3639 user_handle_t move_size;
3640 user_handle_t caret;
3647 struct get_last_input_time_request
3649 struct request_header __header;
3651 struct get_last_input_time_reply
3653 struct reply_header __header;
3660 struct get_key_state_request
3662 struct request_header __header;
3666 struct get_key_state_reply
3668 struct reply_header __header;
3669 unsigned char state;
3670 /* VARARG(keystate,bytes); */
3675 struct set_key_state_request
3677 struct request_header __header;
3679 /* VARARG(keystate,bytes); */
3681 struct set_key_state_reply
3683 struct reply_header __header;
3687 struct set_foreground_window_request
3689 struct request_header __header;
3690 user_handle_t handle;
3692 struct set_foreground_window_reply
3694 struct reply_header __header;
3695 user_handle_t previous;
3702 struct set_focus_window_request
3704 struct request_header __header;
3705 user_handle_t handle;
3707 struct set_focus_window_reply
3709 struct reply_header __header;
3710 user_handle_t previous;
3715 struct set_active_window_request
3717 struct request_header __header;
3718 user_handle_t handle;
3720 struct set_active_window_reply
3722 struct reply_header __header;
3723 user_handle_t previous;
3728 struct set_capture_window_request
3730 struct request_header __header;
3731 user_handle_t handle;
3734 struct set_capture_window_reply
3736 struct reply_header __header;
3737 user_handle_t previous;
3738 user_handle_t full_handle;
3740 #define CAPTURE_MENU 0x01
3741 #define CAPTURE_MOVESIZE 0x02
3745 struct set_caret_window_request
3747 struct request_header __header;
3748 user_handle_t handle;
3752 struct set_caret_window_reply
3754 struct reply_header __header;
3755 user_handle_t previous;
3756 rectangle_t old_rect;
3764 struct set_caret_info_request
3766 struct request_header __header;
3768 user_handle_t handle;
3774 struct set_caret_info_reply
3776 struct reply_header __header;
3777 user_handle_t full_handle;
3778 rectangle_t old_rect;
3783 #define SET_CARET_POS 0x01
3784 #define SET_CARET_HIDE 0x02
3785 #define SET_CARET_STATE 0x04
3789 struct set_hook_request
3791 struct request_header __header;
3800 /* VARARG(module,unicode_str); */
3802 struct set_hook_reply
3804 struct reply_header __header;
3805 user_handle_t handle;
3806 unsigned int active_hooks;
3811 struct remove_hook_request
3813 struct request_header __header;
3814 user_handle_t handle;
3818 struct remove_hook_reply
3820 struct reply_header __header;
3821 unsigned int active_hooks;
3827 struct start_hook_chain_request
3829 struct request_header __header;
3832 user_handle_t window;
3836 struct start_hook_chain_reply
3838 struct reply_header __header;
3839 user_handle_t handle;
3844 unsigned int active_hooks;
3845 /* VARARG(module,unicode_str); */
3851 struct finish_hook_chain_request
3853 struct request_header __header;
3856 struct finish_hook_chain_reply
3858 struct reply_header __header;
3863 struct get_hook_info_request
3865 struct request_header __header;
3866 user_handle_t handle;
3869 user_handle_t window;
3873 struct get_hook_info_reply
3875 struct reply_header __header;
3876 user_handle_t handle;
3882 /* VARARG(module,unicode_str); */
3888 struct create_class_request
3890 struct request_header __header;
3894 mod_handle_t instance;
3897 client_ptr_t client_ptr;
3898 /* VARARG(name,unicode_str); */
3900 struct create_class_reply
3902 struct reply_header __header;
3909 struct destroy_class_request
3911 struct request_header __header;
3913 mod_handle_t instance;
3914 /* VARARG(name,unicode_str); */
3916 struct destroy_class_reply
3918 struct reply_header __header;
3919 client_ptr_t client_ptr;
3924 struct set_class_info_request
3926 struct request_header __header;
3927 user_handle_t window;
3932 mod_handle_t instance;
3934 data_size_t extra_size;
3935 lparam_t extra_value;
3937 struct set_class_info_reply
3939 struct reply_header __header;
3941 unsigned int old_style;
3944 mod_handle_t old_instance;
3945 lparam_t old_extra_value;
3947 #define SET_CLASS_ATOM 0x0001
3948 #define SET_CLASS_STYLE 0x0002
3949 #define SET_CLASS_WINEXTRA 0x0004
3950 #define SET_CLASS_INSTANCE 0x0008
3951 #define SET_CLASS_EXTRA 0x0010
3955 struct set_clipboard_info_request
3957 struct request_header __header;
3959 user_handle_t clipboard;
3960 user_handle_t owner;
3961 user_handle_t viewer;
3964 struct set_clipboard_info_reply
3966 struct reply_header __header;
3968 user_handle_t old_clipboard;
3969 user_handle_t old_owner;
3970 user_handle_t old_viewer;
3975 #define SET_CB_OPEN 0x001
3976 #define SET_CB_OWNER 0x002
3977 #define SET_CB_VIEWER 0x004
3978 #define SET_CB_SEQNO 0x008
3979 #define SET_CB_RELOWNER 0x010
3980 #define SET_CB_CLOSE 0x020
3981 #define CB_OPEN 0x040
3982 #define CB_OWNER 0x080
3983 #define CB_PROCESS 0x100
3987 struct open_token_request
3989 struct request_header __header;
3990 obj_handle_t handle;
3991 unsigned int access;
3992 unsigned int attributes;
3995 struct open_token_reply
3997 struct reply_header __header;
4001 #define OPEN_TOKEN_THREAD 1
4002 #define OPEN_TOKEN_AS_SELF 2
4006 struct set_global_windows_request
4008 struct request_header __header;
4010 user_handle_t shell_window;
4011 user_handle_t shell_listview;
4012 user_handle_t progman_window;
4013 user_handle_t taskman_window;
4015 struct set_global_windows_reply
4017 struct reply_header __header;
4018 user_handle_t old_shell_window;
4019 user_handle_t old_shell_listview;
4020 user_handle_t old_progman_window;
4021 user_handle_t old_taskman_window;
4023 #define SET_GLOBAL_SHELL_WINDOWS 0x01
4024 #define SET_GLOBAL_PROGMAN_WINDOW 0x02
4025 #define SET_GLOBAL_TASKMAN_WINDOW 0x04
4028 struct adjust_token_privileges_request
4030 struct request_header __header;
4031 obj_handle_t handle;
4033 int get_modified_state;
4034 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4036 struct adjust_token_privileges_reply
4038 struct reply_header __header;
4040 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4045 struct get_token_privileges_request
4047 struct request_header __header;
4048 obj_handle_t handle;
4050 struct get_token_privileges_reply
4052 struct reply_header __header;
4054 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4059 struct check_token_privileges_request
4061 struct request_header __header;
4062 obj_handle_t handle;
4064 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4066 struct check_token_privileges_reply
4068 struct reply_header __header;
4070 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4074 struct duplicate_token_request
4076 struct request_header __header;
4077 obj_handle_t handle;
4078 unsigned int access;
4079 unsigned int attributes;
4081 int impersonation_level;
4083 struct duplicate_token_reply
4085 struct reply_header __header;
4086 obj_handle_t new_handle;
4090 struct access_check_request
4092 struct request_header __header;
4093 obj_handle_t handle;
4094 unsigned int desired_access;
4095 unsigned int mapping_read;
4096 unsigned int mapping_write;
4097 unsigned int mapping_execute;
4098 unsigned int mapping_all;
4099 /* VARARG(sd,security_descriptor); */
4101 struct access_check_reply
4103 struct reply_header __header;
4104 unsigned int access_granted;
4105 unsigned int access_status;
4106 unsigned int privileges_len;
4107 /* VARARG(privileges,LUID_AND_ATTRIBUTES); */
4111 struct get_token_user_request
4113 struct request_header __header;
4114 obj_handle_t handle;
4116 struct get_token_user_reply
4118 struct reply_header __header;
4119 data_size_t user_len;
4120 /* VARARG(user,SID); */
4124 struct get_token_groups_request
4126 struct request_header __header;
4127 obj_handle_t handle;
4129 struct get_token_groups_reply
4131 struct reply_header __header;
4132 data_size_t user_len;
4133 /* VARARG(user,token_groups); */
4137 struct get_token_default_dacl_request
4139 struct request_header __header;
4140 obj_handle_t handle;
4142 struct get_token_default_dacl_reply
4144 struct reply_header __header;
4145 data_size_t acl_len;
4146 /* VARARG(acl,ACL); */
4150 struct set_token_default_dacl_request
4152 struct request_header __header;
4153 obj_handle_t handle;
4154 /* VARARG(acl,ACL); */
4156 struct set_token_default_dacl_reply
4158 struct reply_header __header;
4161 struct set_security_object_request
4163 struct request_header __header;
4164 obj_handle_t handle;
4165 unsigned int security_info;
4166 /* VARARG(sd,security_descriptor); */
4169 struct set_security_object_reply
4171 struct reply_header __header;
4174 struct get_security_object_request
4176 struct request_header __header;
4177 obj_handle_t handle;
4178 unsigned int security_info;
4180 struct get_security_object_reply
4182 struct reply_header __header;
4183 unsigned int sd_len;
4184 /* VARARG(sd,security_descriptor); */
4189 struct create_mailslot_request
4191 struct request_header __header;
4192 unsigned int access;
4193 unsigned int attributes;
4194 obj_handle_t rootdir;
4195 timeout_t read_timeout;
4196 unsigned int max_msgsize;
4197 /* VARARG(name,unicode_str); */
4199 struct create_mailslot_reply
4201 struct reply_header __header;
4202 obj_handle_t handle;
4208 struct set_mailslot_info_request
4210 struct request_header __header;
4211 obj_handle_t handle;
4212 timeout_t read_timeout;
4215 struct set_mailslot_info_reply
4217 struct reply_header __header;
4218 timeout_t read_timeout;
4219 unsigned int max_msgsize;
4222 #define MAILSLOT_SET_READ_TIMEOUT 1
4226 struct create_directory_request
4228 struct request_header __header;
4229 unsigned int access;
4230 unsigned int attributes;
4231 obj_handle_t rootdir;
4232 /* VARARG(directory_name,unicode_str); */
4234 struct create_directory_reply
4236 struct reply_header __header;
4237 obj_handle_t handle;
4243 struct open_directory_request
4245 struct request_header __header;
4246 unsigned int access;
4247 unsigned int attributes;
4248 obj_handle_t rootdir;
4249 /* VARARG(directory_name,unicode_str); */
4251 struct open_directory_reply
4253 struct reply_header __header;
4254 obj_handle_t handle;
4260 struct get_directory_entry_request
4262 struct request_header __header;
4263 obj_handle_t handle;
4266 struct get_directory_entry_reply
4268 struct reply_header __header;
4269 data_size_t name_len;
4270 /* VARARG(name,unicode_str,name_len); */
4271 /* VARARG(type,unicode_str); */
4277 struct create_symlink_request
4279 struct request_header __header;
4280 unsigned int access;
4281 unsigned int attributes;
4282 obj_handle_t rootdir;
4283 data_size_t name_len;
4284 /* VARARG(name,unicode_str,name_len); */
4285 /* VARARG(target_name,unicode_str); */
4287 struct create_symlink_reply
4289 struct reply_header __header;
4290 obj_handle_t handle;
4296 struct open_symlink_request
4298 struct request_header __header;
4299 unsigned int access;
4300 unsigned int attributes;
4301 obj_handle_t rootdir;
4302 /* VARARG(name,unicode_str); */
4304 struct open_symlink_reply
4306 struct reply_header __header;
4307 obj_handle_t handle;
4313 struct query_symlink_request
4315 struct request_header __header;
4316 obj_handle_t handle;
4318 struct query_symlink_reply
4320 struct reply_header __header;
4321 /* VARARG(target_name,unicode_str); */
4326 struct get_object_info_request
4328 struct request_header __header;
4329 obj_handle_t handle;
4331 struct get_object_info_reply
4333 struct reply_header __header;
4334 unsigned int access;
4335 unsigned int ref_count;
4340 struct unlink_object_request
4342 struct request_header __header;
4343 obj_handle_t handle;
4345 struct unlink_object_reply
4347 struct reply_header __header;
4352 struct get_token_impersonation_level_request
4354 struct request_header __header;
4355 obj_handle_t handle;
4357 struct get_token_impersonation_level_reply
4359 struct reply_header __header;
4360 int impersonation_level;
4365 struct allocate_locally_unique_id_request
4367 struct request_header __header;
4369 struct allocate_locally_unique_id_reply
4371 struct reply_header __header;
4377 struct create_device_manager_request
4379 struct request_header __header;
4380 unsigned int access;
4381 unsigned int attributes;
4383 struct create_device_manager_reply
4385 struct reply_header __header;
4386 obj_handle_t handle;
4392 struct create_device_request
4394 struct request_header __header;
4395 unsigned int access;
4396 unsigned int attributes;
4397 obj_handle_t rootdir;
4398 client_ptr_t user_ptr;
4399 obj_handle_t manager;
4400 /* VARARG(name,unicode_str); */
4402 struct create_device_reply
4404 struct reply_header __header;
4405 obj_handle_t handle;
4411 struct delete_device_request
4413 struct request_header __header;
4414 obj_handle_t handle;
4416 struct delete_device_reply
4418 struct reply_header __header;
4423 struct get_next_device_request_request
4425 struct request_header __header;
4426 obj_handle_t manager;
4428 unsigned int status;
4429 /* VARARG(prev_data,bytes); */
4431 struct get_next_device_request_reply
4433 struct reply_header __header;
4436 client_ptr_t user_ptr;
4437 data_size_t in_size;
4438 data_size_t out_size;
4439 /* VARARG(next_data,bytes); */
4444 struct make_process_system_request
4446 struct request_header __header;
4448 struct make_process_system_reply
4450 struct reply_header __header;
4457 struct get_token_statistics_request
4459 struct request_header __header;
4460 obj_handle_t handle;
4462 struct get_token_statistics_reply
4464 struct reply_header __header;
4468 int impersonation_level;
4470 int privilege_count;
4475 struct create_completion_request
4477 struct request_header __header;
4478 unsigned int access;
4479 unsigned int attributes;
4480 unsigned int concurrent;
4481 obj_handle_t rootdir;
4482 /* VARARG(filename,string); */
4484 struct create_completion_reply
4486 struct reply_header __header;
4487 obj_handle_t handle;
4493 struct open_completion_request
4495 struct request_header __header;
4496 unsigned int access;
4497 unsigned int attributes;
4498 obj_handle_t rootdir;
4499 /* VARARG(filename,string); */
4501 struct open_completion_reply
4503 struct reply_header __header;
4504 obj_handle_t handle;
4510 struct add_completion_request
4512 struct request_header __header;
4513 obj_handle_t handle;
4516 unsigned int information;
4517 unsigned int status;
4519 struct add_completion_reply
4521 struct reply_header __header;
4526 struct remove_completion_request
4528 struct request_header __header;
4529 obj_handle_t handle;
4531 struct remove_completion_reply
4533 struct reply_header __header;
4536 unsigned int information;
4537 unsigned int status;
4542 struct query_completion_request
4544 struct request_header __header;
4545 obj_handle_t handle;
4547 struct query_completion_reply
4549 struct reply_header __header;
4556 struct set_completion_info_request
4558 struct request_header __header;
4559 obj_handle_t handle;
4561 obj_handle_t chandle;
4564 struct set_completion_info_reply
4566 struct reply_header __header;
4571 struct add_fd_completion_request
4573 struct request_header __header;
4574 obj_handle_t handle;
4576 unsigned int status;
4577 unsigned int information;
4579 struct add_fd_completion_reply
4581 struct reply_header __header;
4586 struct get_window_layered_info_request
4588 struct request_header __header;
4589 user_handle_t handle;
4591 struct get_window_layered_info_reply
4593 struct reply_header __header;
4594 unsigned int color_key;
4602 struct set_window_layered_info_request
4604 struct request_header __header;
4605 user_handle_t handle;
4606 unsigned int color_key;
4611 struct set_window_layered_info_reply
4613 struct reply_header __header;
4620 REQ_get_new_process_info,
4622 REQ_get_startup_info,
4623 REQ_init_process_done,
4625 REQ_terminate_process,
4626 REQ_terminate_thread,
4627 REQ_get_process_info,
4628 REQ_set_process_info,
4629 REQ_get_thread_info,
4630 REQ_set_thread_info,
4639 REQ_set_handle_info,
4650 REQ_create_semaphore,
4651 REQ_release_semaphore,
4654 REQ_open_file_object,
4655 REQ_alloc_file_handle,
4662 REQ_set_socket_event,
4663 REQ_get_socket_event,
4664 REQ_enable_socket_event,
4665 REQ_set_socket_deferred,
4668 REQ_get_console_renderer_events,
4670 REQ_get_console_wait_event,
4671 REQ_get_console_mode,
4672 REQ_set_console_mode,
4673 REQ_set_console_input_info,
4674 REQ_get_console_input_info,
4675 REQ_append_console_input_history,
4676 REQ_get_console_input_history,
4677 REQ_create_console_output,
4678 REQ_set_console_output_info,
4679 REQ_get_console_output_info,
4680 REQ_write_console_input,
4681 REQ_read_console_input,
4682 REQ_write_console_output,
4683 REQ_fill_console_output,
4684 REQ_read_console_output,
4685 REQ_move_console_output,
4686 REQ_send_console_signal,
4687 REQ_read_directory_changes,
4691 REQ_get_mapping_info,
4692 REQ_get_mapping_committed_range,
4693 REQ_add_mapping_committed_range,
4694 REQ_create_snapshot,
4697 REQ_wait_debug_event,
4698 REQ_queue_exception_event,
4699 REQ_get_exception_status,
4700 REQ_output_debug_string,
4701 REQ_continue_debug_event,
4704 REQ_set_debugger_kill_on_exit,
4705 REQ_read_process_memory,
4706 REQ_write_process_memory,
4715 REQ_delete_key_value,
4717 REQ_unload_registry,
4719 REQ_set_registry_notification,
4725 REQ_get_thread_context,
4726 REQ_set_thread_context,
4727 REQ_get_selector_entry,
4731 REQ_get_atom_information,
4732 REQ_set_atom_information,
4733 REQ_empty_atom_table,
4734 REQ_init_atom_table,
4738 REQ_get_queue_status,
4739 REQ_get_process_idle_event,
4741 REQ_post_quit_message,
4742 REQ_send_hardware_message,
4745 REQ_accept_hardware_message,
4746 REQ_get_message_reply,
4750 REQ_get_serial_info,
4751 REQ_set_serial_info,
4755 REQ_get_ioctl_result,
4756 REQ_create_named_pipe,
4757 REQ_get_named_pipe_info,
4760 REQ_get_desktop_window,
4761 REQ_set_window_owner,
4762 REQ_get_window_info,
4763 REQ_set_window_info,
4765 REQ_get_window_parents,
4766 REQ_get_window_children,
4767 REQ_get_window_children_from_point,
4768 REQ_get_window_tree,
4770 REQ_get_window_rectangles,
4771 REQ_get_window_text,
4772 REQ_set_window_text,
4773 REQ_get_windows_offset,
4774 REQ_get_visible_region,
4775 REQ_get_window_region,
4776 REQ_set_window_region,
4777 REQ_get_update_region,
4778 REQ_update_window_zorder,
4780 REQ_set_window_property,
4781 REQ_remove_window_property,
4782 REQ_get_window_property,
4783 REQ_get_window_properties,
4784 REQ_create_winstation,
4785 REQ_open_winstation,
4786 REQ_close_winstation,
4787 REQ_get_process_winstation,
4788 REQ_set_process_winstation,
4789 REQ_enum_winstation,
4793 REQ_get_thread_desktop,
4794 REQ_set_thread_desktop,
4796 REQ_set_user_object_info,
4797 REQ_attach_thread_input,
4798 REQ_get_thread_input,
4799 REQ_get_last_input_time,
4802 REQ_set_foreground_window,
4803 REQ_set_focus_window,
4804 REQ_set_active_window,
4805 REQ_set_capture_window,
4806 REQ_set_caret_window,
4810 REQ_start_hook_chain,
4811 REQ_finish_hook_chain,
4816 REQ_set_clipboard_info,
4818 REQ_set_global_windows,
4819 REQ_adjust_token_privileges,
4820 REQ_get_token_privileges,
4821 REQ_check_token_privileges,
4822 REQ_duplicate_token,
4825 REQ_get_token_groups,
4826 REQ_get_token_default_dacl,
4827 REQ_set_token_default_dacl,
4828 REQ_set_security_object,
4829 REQ_get_security_object,
4830 REQ_create_mailslot,
4831 REQ_set_mailslot_info,
4832 REQ_create_directory,
4834 REQ_get_directory_entry,
4838 REQ_get_object_info,
4840 REQ_get_token_impersonation_level,
4841 REQ_allocate_locally_unique_id,
4842 REQ_create_device_manager,
4845 REQ_get_next_device_request,
4846 REQ_make_process_system,
4847 REQ_get_token_statistics,
4848 REQ_create_completion,
4849 REQ_open_completion,
4851 REQ_remove_completion,
4852 REQ_query_completion,
4853 REQ_set_completion_info,
4854 REQ_add_fd_completion,
4855 REQ_get_window_layered_info,
4856 REQ_set_window_layered_info,
4860 union generic_request
4862 struct request_max_size max_size;
4863 struct request_header request_header;
4864 struct new_process_request new_process_request;
4865 struct get_new_process_info_request get_new_process_info_request;
4866 struct new_thread_request new_thread_request;
4867 struct get_startup_info_request get_startup_info_request;
4868 struct init_process_done_request init_process_done_request;
4869 struct init_thread_request init_thread_request;
4870 struct terminate_process_request terminate_process_request;
4871 struct terminate_thread_request terminate_thread_request;
4872 struct get_process_info_request get_process_info_request;
4873 struct set_process_info_request set_process_info_request;
4874 struct get_thread_info_request get_thread_info_request;
4875 struct set_thread_info_request set_thread_info_request;
4876 struct get_dll_info_request get_dll_info_request;
4877 struct suspend_thread_request suspend_thread_request;
4878 struct resume_thread_request resume_thread_request;
4879 struct load_dll_request load_dll_request;
4880 struct unload_dll_request unload_dll_request;
4881 struct queue_apc_request queue_apc_request;
4882 struct get_apc_result_request get_apc_result_request;
4883 struct close_handle_request close_handle_request;
4884 struct set_handle_info_request set_handle_info_request;
4885 struct dup_handle_request dup_handle_request;
4886 struct open_process_request open_process_request;
4887 struct open_thread_request open_thread_request;
4888 struct select_request select_request;
4889 struct create_event_request create_event_request;
4890 struct event_op_request event_op_request;
4891 struct open_event_request open_event_request;
4892 struct create_mutex_request create_mutex_request;
4893 struct release_mutex_request release_mutex_request;
4894 struct open_mutex_request open_mutex_request;
4895 struct create_semaphore_request create_semaphore_request;
4896 struct release_semaphore_request release_semaphore_request;
4897 struct open_semaphore_request open_semaphore_request;
4898 struct create_file_request create_file_request;
4899 struct open_file_object_request open_file_object_request;
4900 struct alloc_file_handle_request alloc_file_handle_request;
4901 struct get_handle_fd_request get_handle_fd_request;
4902 struct flush_file_request flush_file_request;
4903 struct lock_file_request lock_file_request;
4904 struct unlock_file_request unlock_file_request;
4905 struct create_socket_request create_socket_request;
4906 struct accept_socket_request accept_socket_request;
4907 struct set_socket_event_request set_socket_event_request;
4908 struct get_socket_event_request get_socket_event_request;
4909 struct enable_socket_event_request enable_socket_event_request;
4910 struct set_socket_deferred_request set_socket_deferred_request;
4911 struct alloc_console_request alloc_console_request;
4912 struct free_console_request free_console_request;
4913 struct get_console_renderer_events_request get_console_renderer_events_request;
4914 struct open_console_request open_console_request;
4915 struct get_console_wait_event_request get_console_wait_event_request;
4916 struct get_console_mode_request get_console_mode_request;
4917 struct set_console_mode_request set_console_mode_request;
4918 struct set_console_input_info_request set_console_input_info_request;
4919 struct get_console_input_info_request get_console_input_info_request;
4920 struct append_console_input_history_request append_console_input_history_request;
4921 struct get_console_input_history_request get_console_input_history_request;
4922 struct create_console_output_request create_console_output_request;
4923 struct set_console_output_info_request set_console_output_info_request;
4924 struct get_console_output_info_request get_console_output_info_request;
4925 struct write_console_input_request write_console_input_request;
4926 struct read_console_input_request read_console_input_request;
4927 struct write_console_output_request write_console_output_request;
4928 struct fill_console_output_request fill_console_output_request;
4929 struct read_console_output_request read_console_output_request;
4930 struct move_console_output_request move_console_output_request;
4931 struct send_console_signal_request send_console_signal_request;
4932 struct read_directory_changes_request read_directory_changes_request;
4933 struct read_change_request read_change_request;
4934 struct create_mapping_request create_mapping_request;
4935 struct open_mapping_request open_mapping_request;
4936 struct get_mapping_info_request get_mapping_info_request;
4937 struct get_mapping_committed_range_request get_mapping_committed_range_request;
4938 struct add_mapping_committed_range_request add_mapping_committed_range_request;
4939 struct create_snapshot_request create_snapshot_request;
4940 struct next_process_request next_process_request;
4941 struct next_thread_request next_thread_request;
4942 struct wait_debug_event_request wait_debug_event_request;
4943 struct queue_exception_event_request queue_exception_event_request;
4944 struct get_exception_status_request get_exception_status_request;
4945 struct output_debug_string_request output_debug_string_request;
4946 struct continue_debug_event_request continue_debug_event_request;
4947 struct debug_process_request debug_process_request;
4948 struct debug_break_request debug_break_request;
4949 struct set_debugger_kill_on_exit_request set_debugger_kill_on_exit_request;
4950 struct read_process_memory_request read_process_memory_request;
4951 struct write_process_memory_request write_process_memory_request;
4952 struct create_key_request create_key_request;
4953 struct open_key_request open_key_request;
4954 struct delete_key_request delete_key_request;
4955 struct flush_key_request flush_key_request;
4956 struct enum_key_request enum_key_request;
4957 struct set_key_value_request set_key_value_request;
4958 struct get_key_value_request get_key_value_request;
4959 struct enum_key_value_request enum_key_value_request;
4960 struct delete_key_value_request delete_key_value_request;
4961 struct load_registry_request load_registry_request;
4962 struct unload_registry_request unload_registry_request;
4963 struct save_registry_request save_registry_request;
4964 struct set_registry_notification_request set_registry_notification_request;
4965 struct create_timer_request create_timer_request;
4966 struct open_timer_request open_timer_request;
4967 struct set_timer_request set_timer_request;
4968 struct cancel_timer_request cancel_timer_request;
4969 struct get_timer_info_request get_timer_info_request;
4970 struct get_thread_context_request get_thread_context_request;
4971 struct set_thread_context_request set_thread_context_request;
4972 struct get_selector_entry_request get_selector_entry_request;
4973 struct add_atom_request add_atom_request;
4974 struct delete_atom_request delete_atom_request;
4975 struct find_atom_request find_atom_request;
4976 struct get_atom_information_request get_atom_information_request;
4977 struct set_atom_information_request set_atom_information_request;
4978 struct empty_atom_table_request empty_atom_table_request;
4979 struct init_atom_table_request init_atom_table_request;
4980 struct get_msg_queue_request get_msg_queue_request;
4981 struct set_queue_fd_request set_queue_fd_request;
4982 struct set_queue_mask_request set_queue_mask_request;
4983 struct get_queue_status_request get_queue_status_request;
4984 struct get_process_idle_event_request get_process_idle_event_request;
4985 struct send_message_request send_message_request;
4986 struct post_quit_message_request post_quit_message_request;
4987 struct send_hardware_message_request send_hardware_message_request;
4988 struct get_message_request get_message_request;
4989 struct reply_message_request reply_message_request;
4990 struct accept_hardware_message_request accept_hardware_message_request;
4991 struct get_message_reply_request get_message_reply_request;
4992 struct set_win_timer_request set_win_timer_request;
4993 struct kill_win_timer_request kill_win_timer_request;
4994 struct is_window_hung_request is_window_hung_request;
4995 struct get_serial_info_request get_serial_info_request;
4996 struct set_serial_info_request set_serial_info_request;
4997 struct register_async_request register_async_request;
4998 struct cancel_async_request cancel_async_request;
4999 struct ioctl_request ioctl_request;
5000 struct get_ioctl_result_request get_ioctl_result_request;
5001 struct create_named_pipe_request create_named_pipe_request;
5002 struct get_named_pipe_info_request get_named_pipe_info_request;
5003 struct create_window_request create_window_request;
5004 struct destroy_window_request destroy_window_request;
5005 struct get_desktop_window_request get_desktop_window_request;
5006 struct set_window_owner_request set_window_owner_request;
5007 struct get_window_info_request get_window_info_request;
5008 struct set_window_info_request set_window_info_request;
5009 struct set_parent_request set_parent_request;
5010 struct get_window_parents_request get_window_parents_request;
5011 struct get_window_children_request get_window_children_request;
5012 struct get_window_children_from_point_request get_window_children_from_point_request;
5013 struct get_window_tree_request get_window_tree_request;
5014 struct set_window_pos_request set_window_pos_request;
5015 struct get_window_rectangles_request get_window_rectangles_request;
5016 struct get_window_text_request get_window_text_request;
5017 struct set_window_text_request set_window_text_request;
5018 struct get_windows_offset_request get_windows_offset_request;
5019 struct get_visible_region_request get_visible_region_request;
5020 struct get_window_region_request get_window_region_request;
5021 struct set_window_region_request set_window_region_request;
5022 struct get_update_region_request get_update_region_request;
5023 struct update_window_zorder_request update_window_zorder_request;
5024 struct redraw_window_request redraw_window_request;
5025 struct set_window_property_request set_window_property_request;
5026 struct remove_window_property_request remove_window_property_request;
5027 struct get_window_property_request get_window_property_request;
5028 struct get_window_properties_request get_window_properties_request;
5029 struct create_winstation_request create_winstation_request;
5030 struct open_winstation_request open_winstation_request;
5031 struct close_winstation_request close_winstation_request;
5032 struct get_process_winstation_request get_process_winstation_request;
5033 struct set_process_winstation_request set_process_winstation_request;
5034 struct enum_winstation_request enum_winstation_request;
5035 struct create_desktop_request create_desktop_request;
5036 struct open_desktop_request open_desktop_request;
5037 struct close_desktop_request close_desktop_request;
5038 struct get_thread_desktop_request get_thread_desktop_request;
5039 struct set_thread_desktop_request set_thread_desktop_request;
5040 struct enum_desktop_request enum_desktop_request;
5041 struct set_user_object_info_request set_user_object_info_request;
5042 struct attach_thread_input_request attach_thread_input_request;
5043 struct get_thread_input_request get_thread_input_request;
5044 struct get_last_input_time_request get_last_input_time_request;
5045 struct get_key_state_request get_key_state_request;
5046 struct set_key_state_request set_key_state_request;
5047 struct set_foreground_window_request set_foreground_window_request;
5048 struct set_focus_window_request set_focus_window_request;
5049 struct set_active_window_request set_active_window_request;
5050 struct set_capture_window_request set_capture_window_request;
5051 struct set_caret_window_request set_caret_window_request;
5052 struct set_caret_info_request set_caret_info_request;
5053 struct set_hook_request set_hook_request;
5054 struct remove_hook_request remove_hook_request;
5055 struct start_hook_chain_request start_hook_chain_request;
5056 struct finish_hook_chain_request finish_hook_chain_request;
5057 struct get_hook_info_request get_hook_info_request;
5058 struct create_class_request create_class_request;
5059 struct destroy_class_request destroy_class_request;
5060 struct set_class_info_request set_class_info_request;
5061 struct set_clipboard_info_request set_clipboard_info_request;
5062 struct open_token_request open_token_request;
5063 struct set_global_windows_request set_global_windows_request;
5064 struct adjust_token_privileges_request adjust_token_privileges_request;
5065 struct get_token_privileges_request get_token_privileges_request;
5066 struct check_token_privileges_request check_token_privileges_request;
5067 struct duplicate_token_request duplicate_token_request;
5068 struct access_check_request access_check_request;
5069 struct get_token_user_request get_token_user_request;
5070 struct get_token_groups_request get_token_groups_request;
5071 struct get_token_default_dacl_request get_token_default_dacl_request;
5072 struct set_token_default_dacl_request set_token_default_dacl_request;
5073 struct set_security_object_request set_security_object_request;
5074 struct get_security_object_request get_security_object_request;
5075 struct create_mailslot_request create_mailslot_request;
5076 struct set_mailslot_info_request set_mailslot_info_request;
5077 struct create_directory_request create_directory_request;
5078 struct open_directory_request open_directory_request;
5079 struct get_directory_entry_request get_directory_entry_request;
5080 struct create_symlink_request create_symlink_request;
5081 struct open_symlink_request open_symlink_request;
5082 struct query_symlink_request query_symlink_request;
5083 struct get_object_info_request get_object_info_request;
5084 struct unlink_object_request unlink_object_request;
5085 struct get_token_impersonation_level_request get_token_impersonation_level_request;
5086 struct allocate_locally_unique_id_request allocate_locally_unique_id_request;
5087 struct create_device_manager_request create_device_manager_request;
5088 struct create_device_request create_device_request;
5089 struct delete_device_request delete_device_request;
5090 struct get_next_device_request_request get_next_device_request_request;
5091 struct make_process_system_request make_process_system_request;
5092 struct get_token_statistics_request get_token_statistics_request;
5093 struct create_completion_request create_completion_request;
5094 struct open_completion_request open_completion_request;
5095 struct add_completion_request add_completion_request;
5096 struct remove_completion_request remove_completion_request;
5097 struct query_completion_request query_completion_request;
5098 struct set_completion_info_request set_completion_info_request;
5099 struct add_fd_completion_request add_fd_completion_request;
5100 struct get_window_layered_info_request get_window_layered_info_request;
5101 struct set_window_layered_info_request set_window_layered_info_request;
5105 struct request_max_size max_size;
5106 struct reply_header reply_header;
5107 struct new_process_reply new_process_reply;
5108 struct get_new_process_info_reply get_new_process_info_reply;
5109 struct new_thread_reply new_thread_reply;
5110 struct get_startup_info_reply get_startup_info_reply;
5111 struct init_process_done_reply init_process_done_reply;
5112 struct init_thread_reply init_thread_reply;
5113 struct terminate_process_reply terminate_process_reply;
5114 struct terminate_thread_reply terminate_thread_reply;
5115 struct get_process_info_reply get_process_info_reply;
5116 struct set_process_info_reply set_process_info_reply;
5117 struct get_thread_info_reply get_thread_info_reply;
5118 struct set_thread_info_reply set_thread_info_reply;
5119 struct get_dll_info_reply get_dll_info_reply;
5120 struct suspend_thread_reply suspend_thread_reply;
5121 struct resume_thread_reply resume_thread_reply;
5122 struct load_dll_reply load_dll_reply;
5123 struct unload_dll_reply unload_dll_reply;
5124 struct queue_apc_reply queue_apc_reply;
5125 struct get_apc_result_reply get_apc_result_reply;
5126 struct close_handle_reply close_handle_reply;
5127 struct set_handle_info_reply set_handle_info_reply;
5128 struct dup_handle_reply dup_handle_reply;
5129 struct open_process_reply open_process_reply;
5130 struct open_thread_reply open_thread_reply;
5131 struct select_reply select_reply;
5132 struct create_event_reply create_event_reply;
5133 struct event_op_reply event_op_reply;
5134 struct open_event_reply open_event_reply;
5135 struct create_mutex_reply create_mutex_reply;
5136 struct release_mutex_reply release_mutex_reply;
5137 struct open_mutex_reply open_mutex_reply;
5138 struct create_semaphore_reply create_semaphore_reply;
5139 struct release_semaphore_reply release_semaphore_reply;
5140 struct open_semaphore_reply open_semaphore_reply;
5141 struct create_file_reply create_file_reply;
5142 struct open_file_object_reply open_file_object_reply;
5143 struct alloc_file_handle_reply alloc_file_handle_reply;
5144 struct get_handle_fd_reply get_handle_fd_reply;
5145 struct flush_file_reply flush_file_reply;
5146 struct lock_file_reply lock_file_reply;
5147 struct unlock_file_reply unlock_file_reply;
5148 struct create_socket_reply create_socket_reply;
5149 struct accept_socket_reply accept_socket_reply;
5150 struct set_socket_event_reply set_socket_event_reply;
5151 struct get_socket_event_reply get_socket_event_reply;
5152 struct enable_socket_event_reply enable_socket_event_reply;
5153 struct set_socket_deferred_reply set_socket_deferred_reply;
5154 struct alloc_console_reply alloc_console_reply;
5155 struct free_console_reply free_console_reply;
5156 struct get_console_renderer_events_reply get_console_renderer_events_reply;
5157 struct open_console_reply open_console_reply;
5158 struct get_console_wait_event_reply get_console_wait_event_reply;
5159 struct get_console_mode_reply get_console_mode_reply;
5160 struct set_console_mode_reply set_console_mode_reply;
5161 struct set_console_input_info_reply set_console_input_info_reply;
5162 struct get_console_input_info_reply get_console_input_info_reply;
5163 struct append_console_input_history_reply append_console_input_history_reply;
5164 struct get_console_input_history_reply get_console_input_history_reply;
5165 struct create_console_output_reply create_console_output_reply;
5166 struct set_console_output_info_reply set_console_output_info_reply;
5167 struct get_console_output_info_reply get_console_output_info_reply;
5168 struct write_console_input_reply write_console_input_reply;
5169 struct read_console_input_reply read_console_input_reply;
5170 struct write_console_output_reply write_console_output_reply;
5171 struct fill_console_output_reply fill_console_output_reply;
5172 struct read_console_output_reply read_console_output_reply;
5173 struct move_console_output_reply move_console_output_reply;
5174 struct send_console_signal_reply send_console_signal_reply;
5175 struct read_directory_changes_reply read_directory_changes_reply;
5176 struct read_change_reply read_change_reply;
5177 struct create_mapping_reply create_mapping_reply;
5178 struct open_mapping_reply open_mapping_reply;
5179 struct get_mapping_info_reply get_mapping_info_reply;
5180 struct get_mapping_committed_range_reply get_mapping_committed_range_reply;
5181 struct add_mapping_committed_range_reply add_mapping_committed_range_reply;
5182 struct create_snapshot_reply create_snapshot_reply;
5183 struct next_process_reply next_process_reply;
5184 struct next_thread_reply next_thread_reply;
5185 struct wait_debug_event_reply wait_debug_event_reply;
5186 struct queue_exception_event_reply queue_exception_event_reply;
5187 struct get_exception_status_reply get_exception_status_reply;
5188 struct output_debug_string_reply output_debug_string_reply;
5189 struct continue_debug_event_reply continue_debug_event_reply;
5190 struct debug_process_reply debug_process_reply;
5191 struct debug_break_reply debug_break_reply;
5192 struct set_debugger_kill_on_exit_reply set_debugger_kill_on_exit_reply;
5193 struct read_process_memory_reply read_process_memory_reply;
5194 struct write_process_memory_reply write_process_memory_reply;
5195 struct create_key_reply create_key_reply;
5196 struct open_key_reply open_key_reply;
5197 struct delete_key_reply delete_key_reply;
5198 struct flush_key_reply flush_key_reply;
5199 struct enum_key_reply enum_key_reply;
5200 struct set_key_value_reply set_key_value_reply;
5201 struct get_key_value_reply get_key_value_reply;
5202 struct enum_key_value_reply enum_key_value_reply;
5203 struct delete_key_value_reply delete_key_value_reply;
5204 struct load_registry_reply load_registry_reply;
5205 struct unload_registry_reply unload_registry_reply;
5206 struct save_registry_reply save_registry_reply;
5207 struct set_registry_notification_reply set_registry_notification_reply;
5208 struct create_timer_reply create_timer_reply;
5209 struct open_timer_reply open_timer_reply;
5210 struct set_timer_reply set_timer_reply;
5211 struct cancel_timer_reply cancel_timer_reply;
5212 struct get_timer_info_reply get_timer_info_reply;
5213 struct get_thread_context_reply get_thread_context_reply;
5214 struct set_thread_context_reply set_thread_context_reply;
5215 struct get_selector_entry_reply get_selector_entry_reply;
5216 struct add_atom_reply add_atom_reply;
5217 struct delete_atom_reply delete_atom_reply;
5218 struct find_atom_reply find_atom_reply;
5219 struct get_atom_information_reply get_atom_information_reply;
5220 struct set_atom_information_reply set_atom_information_reply;
5221 struct empty_atom_table_reply empty_atom_table_reply;
5222 struct init_atom_table_reply init_atom_table_reply;
5223 struct get_msg_queue_reply get_msg_queue_reply;
5224 struct set_queue_fd_reply set_queue_fd_reply;
5225 struct set_queue_mask_reply set_queue_mask_reply;
5226 struct get_queue_status_reply get_queue_status_reply;
5227 struct get_process_idle_event_reply get_process_idle_event_reply;
5228 struct send_message_reply send_message_reply;
5229 struct post_quit_message_reply post_quit_message_reply;
5230 struct send_hardware_message_reply send_hardware_message_reply;
5231 struct get_message_reply get_message_reply;
5232 struct reply_message_reply reply_message_reply;
5233 struct accept_hardware_message_reply accept_hardware_message_reply;
5234 struct get_message_reply_reply get_message_reply_reply;
5235 struct set_win_timer_reply set_win_timer_reply;
5236 struct kill_win_timer_reply kill_win_timer_reply;
5237 struct is_window_hung_reply is_window_hung_reply;
5238 struct get_serial_info_reply get_serial_info_reply;
5239 struct set_serial_info_reply set_serial_info_reply;
5240 struct register_async_reply register_async_reply;
5241 struct cancel_async_reply cancel_async_reply;
5242 struct ioctl_reply ioctl_reply;
5243 struct get_ioctl_result_reply get_ioctl_result_reply;
5244 struct create_named_pipe_reply create_named_pipe_reply;
5245 struct get_named_pipe_info_reply get_named_pipe_info_reply;
5246 struct create_window_reply create_window_reply;
5247 struct destroy_window_reply destroy_window_reply;
5248 struct get_desktop_window_reply get_desktop_window_reply;
5249 struct set_window_owner_reply set_window_owner_reply;
5250 struct get_window_info_reply get_window_info_reply;
5251 struct set_window_info_reply set_window_info_reply;
5252 struct set_parent_reply set_parent_reply;
5253 struct get_window_parents_reply get_window_parents_reply;
5254 struct get_window_children_reply get_window_children_reply;
5255 struct get_window_children_from_point_reply get_window_children_from_point_reply;
5256 struct get_window_tree_reply get_window_tree_reply;
5257 struct set_window_pos_reply set_window_pos_reply;
5258 struct get_window_rectangles_reply get_window_rectangles_reply;
5259 struct get_window_text_reply get_window_text_reply;
5260 struct set_window_text_reply set_window_text_reply;
5261 struct get_windows_offset_reply get_windows_offset_reply;
5262 struct get_visible_region_reply get_visible_region_reply;
5263 struct get_window_region_reply get_window_region_reply;
5264 struct set_window_region_reply set_window_region_reply;
5265 struct get_update_region_reply get_update_region_reply;
5266 struct update_window_zorder_reply update_window_zorder_reply;
5267 struct redraw_window_reply redraw_window_reply;
5268 struct set_window_property_reply set_window_property_reply;
5269 struct remove_window_property_reply remove_window_property_reply;
5270 struct get_window_property_reply get_window_property_reply;
5271 struct get_window_properties_reply get_window_properties_reply;
5272 struct create_winstation_reply create_winstation_reply;
5273 struct open_winstation_reply open_winstation_reply;
5274 struct close_winstation_reply close_winstation_reply;
5275 struct get_process_winstation_reply get_process_winstation_reply;
5276 struct set_process_winstation_reply set_process_winstation_reply;
5277 struct enum_winstation_reply enum_winstation_reply;
5278 struct create_desktop_reply create_desktop_reply;
5279 struct open_desktop_reply open_desktop_reply;
5280 struct close_desktop_reply close_desktop_reply;
5281 struct get_thread_desktop_reply get_thread_desktop_reply;
5282 struct set_thread_desktop_reply set_thread_desktop_reply;
5283 struct enum_desktop_reply enum_desktop_reply;
5284 struct set_user_object_info_reply set_user_object_info_reply;
5285 struct attach_thread_input_reply attach_thread_input_reply;
5286 struct get_thread_input_reply get_thread_input_reply;
5287 struct get_last_input_time_reply get_last_input_time_reply;
5288 struct get_key_state_reply get_key_state_reply;
5289 struct set_key_state_reply set_key_state_reply;
5290 struct set_foreground_window_reply set_foreground_window_reply;
5291 struct set_focus_window_reply set_focus_window_reply;
5292 struct set_active_window_reply set_active_window_reply;
5293 struct set_capture_window_reply set_capture_window_reply;
5294 struct set_caret_window_reply set_caret_window_reply;
5295 struct set_caret_info_reply set_caret_info_reply;
5296 struct set_hook_reply set_hook_reply;
5297 struct remove_hook_reply remove_hook_reply;
5298 struct start_hook_chain_reply start_hook_chain_reply;
5299 struct finish_hook_chain_reply finish_hook_chain_reply;
5300 struct get_hook_info_reply get_hook_info_reply;
5301 struct create_class_reply create_class_reply;
5302 struct destroy_class_reply destroy_class_reply;
5303 struct set_class_info_reply set_class_info_reply;
5304 struct set_clipboard_info_reply set_clipboard_info_reply;
5305 struct open_token_reply open_token_reply;
5306 struct set_global_windows_reply set_global_windows_reply;
5307 struct adjust_token_privileges_reply adjust_token_privileges_reply;
5308 struct get_token_privileges_reply get_token_privileges_reply;
5309 struct check_token_privileges_reply check_token_privileges_reply;
5310 struct duplicate_token_reply duplicate_token_reply;
5311 struct access_check_reply access_check_reply;
5312 struct get_token_user_reply get_token_user_reply;
5313 struct get_token_groups_reply get_token_groups_reply;
5314 struct get_token_default_dacl_reply get_token_default_dacl_reply;
5315 struct set_token_default_dacl_reply set_token_default_dacl_reply;
5316 struct set_security_object_reply set_security_object_reply;
5317 struct get_security_object_reply get_security_object_reply;
5318 struct create_mailslot_reply create_mailslot_reply;
5319 struct set_mailslot_info_reply set_mailslot_info_reply;
5320 struct create_directory_reply create_directory_reply;
5321 struct open_directory_reply open_directory_reply;
5322 struct get_directory_entry_reply get_directory_entry_reply;
5323 struct create_symlink_reply create_symlink_reply;
5324 struct open_symlink_reply open_symlink_reply;
5325 struct query_symlink_reply query_symlink_reply;
5326 struct get_object_info_reply get_object_info_reply;
5327 struct unlink_object_reply unlink_object_reply;
5328 struct get_token_impersonation_level_reply get_token_impersonation_level_reply;
5329 struct allocate_locally_unique_id_reply allocate_locally_unique_id_reply;
5330 struct create_device_manager_reply create_device_manager_reply;
5331 struct create_device_reply create_device_reply;
5332 struct delete_device_reply delete_device_reply;
5333 struct get_next_device_request_reply get_next_device_request_reply;
5334 struct make_process_system_reply make_process_system_reply;
5335 struct get_token_statistics_reply get_token_statistics_reply;
5336 struct create_completion_reply create_completion_reply;
5337 struct open_completion_reply open_completion_reply;
5338 struct add_completion_reply add_completion_reply;
5339 struct remove_completion_reply remove_completion_reply;
5340 struct query_completion_reply query_completion_reply;
5341 struct set_completion_info_reply set_completion_info_reply;
5342 struct add_fd_completion_reply add_fd_completion_reply;
5343 struct get_window_layered_info_reply get_window_layered_info_reply;
5344 struct set_window_layered_info_reply set_window_layered_info_reply;
5347 #define SERVER_PROTOCOL_VERSION 391
5349 #endif /* __WINE_WINE_SERVER_PROTOCOL_H */