Alexandre Julliard
7a2017dd65
Store window properties in the server. Moved property.c to dlls/user.
2001-10-12 19:10:26 +00:00
Alexandre Julliard
d8a8c1131d
Added atom_t type for atoms to make sure we use the same type
...
everywhere. Handle MIN_STR_ATOM offset in the server.
2001-10-12 18:45:29 +00:00
Alexandre Julliard
003f02b733
Removed the cleanup_window_queue request.
2001-10-11 20:50:10 +00:00
Alexandre Julliard
844ceb98ba
Store window class atom in the server.
...
Keep unlinked windows on a separate list.
Implemented inter-process FindWindow().
2001-10-09 23:26:40 +00:00
Mike McCormack
568c67e173
Make serial fd blocking mode depend on FILE_FLAG_OVERLAPPED.
2001-10-08 20:40:57 +00:00
Mike McCormack
ff58be5c7f
Fetch a handle type in FILE_GetUnixHandle.
2001-10-04 16:18:15 +00:00
Alexandre Julliard
7695d69046
A couple of optimizations to avoid some server calls in WIN_FindWndPtr
...
and related functions.
2001-09-24 01:19:59 +00:00
Alexandre Julliard
a09da0cbbd
Added proper support for storing window parents in the server.
...
Added a few requests to query the window hierarchy.
2001-09-21 21:08:40 +00:00
Alexandre Julliard
1a66d226eb
Added global management of user handles in the server.
...
Very preliminary support for shared window handles.
2001-08-28 18:44:52 +00:00
Mike McCormack
f2e7ce7f6a
Implemented GetNamedPipeInfo.
2001-08-27 19:03:42 +00:00
Mike McCormack
bf55457f24
Implement WaitNamedPipe and DisconnectNamedPipe.
...
Add a state for each pipe handle in the server.
Create a socket on when the pipe is opened, not before.
2001-08-23 23:29:20 +00:00
Alexandre Julliard
d253c58b1b
Rewrote most of SendMessage/PeekMessage.
...
Implemented inter-process messaging.
Moved most message routines to dlls/user, and split off 16-bit
routines to a separate file.
2001-08-07 19:19:08 +00:00
Mike McCormack
de7c3003e2
Start implementing named pipes.
2001-07-10 19:16:49 +00:00
Alexandre Julliard
4b0343dc5f
Moved queue paint count to the server. Removed a few no longer used
...
routines.
2001-06-20 22:55:31 +00:00
Alexandre Julliard
838d65aebe
Moved hardware message queue handling to the server.
2001-06-19 19:16:41 +00:00
Alexandre Julliard
51ab43bd13
Moved the major part of message queue and window timer handling into
...
the server.
Implemented MsgWaitForMultipleObjectsEx.
2001-05-18 22:51:56 +00:00
Michael McCormack
1c32a46d5a
Use poll() on the client-side during server waits to implement
...
overlapped I/O.
2001-03-22 20:09:34 +00:00
Alexandre Julliard
a5a872efca
Use the new send_fd mechanism for the set_console_fd server request.
2001-03-22 19:35:27 +00:00
Jeff Garzik
3ea0c073f8
Warning fixes.
2001-03-21 20:31:26 +00:00
Alexandre Julliard
e5dedb1906
Added support for nested server waits (to allow waiting in signal
...
handlers).
2001-03-08 01:16:41 +00:00
Alexandre Julliard
8859d77279
Create the server pipes on the client side and transfer them to the
...
server on thread creation.
Use a single per-process socket instead of one per thread for
transferring file handles between client and server.
2001-03-01 22:13:49 +00:00
Alexandre Julliard
f52424055f
New mechanism to transfer file descriptors from client to server.
2001-02-28 21:45:23 +00:00
Alexandre Julliard
d90e964cee
Added separate server pipe to wait on blocking server calls.
...
Send the complete request/reply through the request fifo instead of
just a dummy byte.
Convert error status to text in server reply tracing.
2001-02-21 04:21:50 +00:00
Alexandre Julliard
5f195f8c01
Small server protocol cleanups.
2001-02-20 23:45:07 +00:00
Alexandre Julliard
a4bc5a2138
Pass the stdin/stdout handles on startup to use as console (based on a
...
patch by Eric Pouech).
2001-02-16 19:08:19 +00:00
Alexandre Julliard
e939eae00b
Made exception_event_request non-blocking, and added
...
get_exception_status to retrieve the exception result returned by the
debugger.
2001-01-26 20:45:41 +00:00
Alexandre Julliard
e9936d96e1
Changed wait_process and wait_debug_event requests to never block;
...
waiting is always done through WaitForSingleObject().
2001-01-26 00:22:26 +00:00
Alexandre Julliard
2362380b64
Added separate queue for "system" APCs that get called even when the
...
thread is not in an alertable state.
Specify the select_request timeout as absolute value so that we can
restart the request when interrupted.
2001-01-06 01:48:51 +00:00
Alexandre Julliard
ad29b90d08
Send the exe file handle in init_process_done request.
2001-01-05 22:24:15 +00:00
Alexandre Julliard
8081e5a1e5
Added handle_t type to server interface so that we can make handles
...
pointers later on.
Always use 0 to signal invalid handle in server requests.
2001-01-05 04:08:07 +00:00
Alexandre Julliard
d549f6909e
Use a separate FIFO pair for server requests that don't need to pass a
...
file descriptor.
Associate file descriptors with handles on the server side so that we
don't need to pass the fd every time the client wants to use it.
2000-12-22 02:04:15 +00:00
Alexandre Julliard
1ab243bac1
Merged the get_read_fd and get_write_fd requests.
2000-12-19 02:12:45 +00:00
Alexandre Julliard
0b6a79c961
Converted enum_key_value request to the new request mechanism.
2000-12-15 20:57:00 +00:00
Dimitrie O. Paun
0b7a7bbc06
Include config.h in files that test for constants defined in it.
2000-11-25 01:31:17 +00:00
Alexandre Julliard
914406f854
Moved LDT handling to libwine.so. Changed the interface to use the
...
exported LDT_ENTRY structure.
2000-11-14 01:54:49 +00:00
Mike McCormack
1eac1911c7
- created server object for handling async i/o
...
- implemented WaitCommEvent with the EV_RXCHAR flag
- implemented GetOverlappedResult
2000-11-13 19:27:21 +00:00
Alexandre Julliard
57f05e1913
Converted a few more server requests to the new mechanism.
2000-10-15 00:40:25 +00:00
Alexandre Julliard
454355ece1
Convert NtQueryKey and NtEnumerateKey to the new request mechanism.
...
Fixed a few bugs.
2000-10-02 03:46:58 +00:00
Alexandre Julliard
bcf393a5e5
Converted some of the registry server requests to the new request
...
mechanism.
2000-10-01 01:44:50 +00:00
Andreas Mohr
c941effc24
Make GetTickCount not use the whole Unix epoch (since 1970) any more,
...
since that crashed several games or caused problems with them as they
aren't used to a high Windows uptime of more than 24.9 days.
2000-09-22 22:37:56 +00:00
Mike McCormack
654fcc721b
Implemented SetCommMask, SetCommTimeouts, GetCommMask, GetCommTimeouts.
2000-09-16 20:55:12 +00:00
Mike McCormack
44b5bf5998
Added serial port object to the server.
2000-09-07 18:39:51 +00:00
Alexandre Julliard
92643003cf
Converted a lot of server requests to the new exception handling
...
mechanism.
2000-08-31 01:59:51 +00:00
Alexandre Julliard
9c2370bd75
Added exception handling wrapper to a number of server requests.
...
Changed a few requests to use the new vararg mechanism.
2000-08-30 00:00:48 +00:00
Alexandre Julliard
8611353053
Added the data structures and macros that will be needed to support
...
reentrant server requests.
2000-08-29 03:54:30 +00:00
Alexandre Julliard
ea1afcef49
Added APC support in waitable timers.
2000-08-22 20:08:37 +00:00
Alexandre Julliard
c19e1a7e19
Implemented SEC_IMAGE mappings and shared PE sections (with the help
...
of Peter Ganten).
2000-08-14 20:20:01 +00:00
Alexandre Julliard
a37dec0c7e
Pass the main exe name in the CREATE_PROCESS debug event.
2000-06-08 00:57:24 +00:00
Turchanov Sergei
43a27e3696
Implemented local atoms in the server.
2000-05-30 20:32:06 +00:00
Alexandre Julliard
c5e433a3a6
Moved idle event handling to the server.
2000-05-30 19:48:18 +00:00
Alexandre Julliard
a01004d828
Added support for registry values larger than the server buffer.
...
When loading a registry file, automatically determine overlap between
key name and file contents based on the first key name.
Removed v1 saving code.
Save USER\.Default separately into ~/.wine/userdef.reg.
2000-05-14 22:57:57 +00:00
Alexandre Julliard
d27624be16
Store process file name in startup info.
...
Fixed exe_file handling.
2000-05-03 18:42:40 +00:00
Alexandre Julliard
5b4f3e8d6d
Rewrote Unix process launching to allow passing startup information to
...
Winelib apps. Improved handling of execve() failures.
2000-05-01 16:24:22 +00:00
Alexandre Julliard
07d8446918
Implemented thread and (partial) module snapshots, based on the work
...
of Andreas Mohr <amohr@student.ei.uni-stuttgart.de>.
2000-04-16 19:45:05 +00:00
Alexandre Julliard
c970904c2c
Save the registry on server exit without client intervention.
...
Removed "alt" registry files since we now have symlinks and
WINEPREFIX to replace them.
2000-04-16 17:21:13 +00:00
Alexandre Julliard
6a72dc52bd
Load done event now created by the server.
2000-04-14 13:42:00 +00:00
Alexandre Julliard
ef88637f5b
Made request tracing more robust against bogus lengths.
2000-04-04 19:33:27 +00:00
Ove Kaaven
cb98a6ed7a
Handle POLLHUP better (delay FD_CLOSE notification until all data has
...
been read). Made WSAEnumNetworkEvents atomic. Convert socket event
error codes properly. Made accept()-ed sockets inherit the listening
socket's WSAAsyncSelect().
2000-03-26 18:21:16 +00:00
Francois Gouget
6d77d3a1df
Use min/max instead of MIN/MAX.
2000-03-25 21:44:35 +00:00
Alexandre Julliard
9a0e28f153
Fixed a couple of file descriptor leaks.
...
Always call USER signal proc in the right context.
Cleaned up THREAD_Create.
2000-03-25 19:14:37 +00:00
Alexandre Julliard
12f29b5076
Have threads and processes exit more cleanly whenever possible.
2000-03-17 15:16:57 +00:00
Alexandre Julliard
ea0d028a0b
Added specific routines for OUTPUT_DEBUG_STRING and EXCEPTION debug events.
...
Generate a breakpoint event on process attach.
Misc cleanups in request handling.
2000-03-10 22:16:10 +00:00
Alexandre Julliard
05f0b71bb3
Store the list of loaded dlls in the server, and generate debug events
...
internally.
2000-03-09 18:18:41 +00:00
Alexandre Julliard
5fb54566d2
Added server protocol version check.
2000-03-08 22:01:02 +00:00
Alexandre Julliard
00641d5b1c
Removed PDB32_DEBUGGED flag and send all debug events unconditionally.
...
Implemented IsDebuggerPresent().
2000-03-08 16:41:37 +00:00
Alexandre Julliard
ff81d78708
Generate CREATE_PROCESS/THREAD debug events internally in the server.
2000-03-08 12:01:30 +00:00
Alexandre Julliard
67a24c8cfb
Store the handle of the process exe file in the server.
...
Removed PROCESS_Initial().
2000-02-18 21:54:32 +00:00
Alexandre Julliard
b849d79104
Moved global atoms to the server (based on the work of Sergei
...
Turchanov <turchanov@otvprim.ru>).
2000-02-13 13:56:13 +00:00
Alexandre Julliard
0a7c1f6c5b
Implemented GetThreadSelectorEntry through the server.
2000-01-27 02:54:17 +00:00
Alexandre Julliard
2fe57779fb
Made the server listen for new clients on a Unix socket in
...
$HOME/.wine. Newly started wine processes now attach to an existing
server if one is running.
2000-01-25 01:40:27 +00:00
Alexandre Julliard
cb1fc735f0
Changed the server to return STATUS_* error codes.
2000-01-24 21:58:06 +00:00
Alexandre Julliard
3e2517caa7
Added Get/SetThreadContext support through the server.
2000-01-20 18:59:03 +00:00
Juergen Schmied
5d0ae2dcd9
- removed copying of HKEY_USERS to HKEY_CURRENT_USER
...
- HKEY_CURRENT_USER is now subkey of HKEY_USERS
- changed query_key_info_request to return the key name too (NtQueryKey needs this)
- the rootkeys (MACHINE and USER) do have names
2000-01-09 21:07:01 +00:00
Alexandre Julliard
9de03f4f6a
Made sleep_on usable from all requests.
2000-01-04 02:23:38 +00:00
Alexandre Julliard
1dca5e24c7
Moved poll handling to the generic part of the server objects.
...
Fixed busy waiting on POLLERR events.
Merged struct client into struct thread.
2000-01-01 00:56:27 +00:00
Alexandre Julliard
ad47a30f5e
Implemented waitable timers.
1999-11-29 01:58:35 +00:00
Alexandre Julliard
d16319ce22
Store all object names as Unicode in the server.
1999-11-25 21:30:24 +00:00
Alexandre Julliard
705686e24e
Added wine.conf option for new format registry files.
...
Added optional periodic saving of the registry.
1999-11-24 19:34:32 +00:00
Alexandre Julliard
d7e85d6631
Added registry support to the server.
1999-11-23 19:39:11 +00:00
Alexandre Julliard
eef7025ef8
Added support for WriteProcessMemory through the server.
1999-11-13 19:54:54 +00:00
Alexandre Julliard
8b8828f578
Added support for ReadProcessMemory through the server.
1999-11-12 21:39:14 +00:00
Alexandre Julliard
ec7bb2391d
Added support for CREATE_SUSPENDED flag in CreateProcess.
1999-11-12 03:35:25 +00:00
Ove Kaaven
019211f864
Added socket interface to wineserver.
1999-10-13 16:05:37 +00:00
Alexandre Julliard
ebe29ef376
Further server optimizations:
...
- merged request and reply structures
- build requests directly into the buffer to avoid a copy
1999-06-26 08:43:26 +00:00
Alexandre Julliard
5bc78089db
Made server communication faster by using a shared memory block.
...
A few other optimizations in request processing in the server.
Moved automatically generated request definitions to server.h and
removed include/server/request.h.
1999-06-22 17:26:53 +00:00
Alexandre Julliard
039aa42373
Return console handles in alloc_console request.
...
Fixed read_console_input parameters to conform to the reply structure
declaration.
1999-06-11 18:31:22 +00:00
Alexandre Julliard
d2b7a0ba65
Added support for dumping variable-size data of server replies.
...
Added cmd_line and cmd_show in new_process request.
1999-05-24 12:33:10 +00:00
Alexandre Julliard
e712e077bc
Added debug events support.
1999-05-23 19:53:30 +00:00
Alexandre Julliard
e29a001a85
Added TEB in init_thread request.
1999-05-16 16:51:28 +00:00
Alexandre Julliard
43c190e7ba
Server reorganization:
...
- moved request handlers to the specific C files
- moved handle management to handle.c
- moved server private includes to server/ instead of include/server/
1999-05-15 10:48:19 +00:00
Patrik Stridvall
1bb9403938
ANSI C fixes.
1999-05-08 15:47:44 +00:00
Alexandre Julliard
1ae869c9a3
Added env ptr to new_process request
1999-04-18 14:41:41 +00:00
Ulrich Weigand
371fd75a39
Added new CLIENT_DebuggerRequest routine, implemented support for
...
DEBUGGER_FREEZE_ALL/DEBUGGER_UNFREEZE_ALL requests.
Run wine server in the main wine process.
Bugfix: never free initial thread!
1999-04-11 17:13:03 +00:00
Alexandre Julliard
1c40024b15
Added cmd line in new_process request.
1999-03-27 16:21:05 +00:00
Alexandre Julliard
875c4b3c61
Added server pid and tid in init_thread request, and use them in
...
CLIENT_InitThread.
1999-03-23 14:09:41 +00:00
Alexandre Julliard
f692d44607
Added new_process and init_process request.
...
Split out process creation from thread creation.
Changed server initialisation to ensure that we always have a current
thread.
1999-03-21 19:23:54 +00:00
Ulrich Weigand
2f2898b571
Handle suspend/resume_thread requests in phase STARTING correctly.
...
Set initial suspend count for threads created with CREATE_SUSPENDED.
Set 'inheritable' flag for process/thread handles.
1999-03-16 16:28:36 +00:00
Alexandre Julliard
875d112dd7
Removed dst_handle in duplicate_handle request.
...
Added inherit flag in create_mapping request.
1999-02-28 10:12:48 +00:00
Alexandre Julliard
6d4ee73906
Added get/set_handle_info request.
1999-02-20 16:13:28 +00:00
Alexandre Julliard
fdc92bae07
Added server snapshot support (processes only for now).
1999-02-14 18:03:15 +00:00