Commit Graph

68 Commits

Author SHA1 Message Date
Eric Pouech
22357ca388 server: When possible, use tgkill instead of tkill syscall on Linux. 2006-02-14 12:24:32 +01:00
Ge van Geldorp
1a1583a364 Match PSDK STATUS_* definitions. 2005-11-28 17:32:54 +01:00
Alexandre Julliard
73c72390f8 Fixed Get/SetThreadContext to work properly on suspended threads.
Added a test case.
2005-11-02 20:54:12 +00:00
Alexandre Julliard
3f85e26af2 Moved the platform-independent part of the get/set_thread_context
requests to a common file.
2005-11-02 14:12:13 +00:00
Alexandre Julliard
1b2adad892 Don't try to detach from a thread that is exiting, to avoid triggering
a kernel race condition.
2005-08-22 10:13:28 +00:00
Alexandre Julliard
92fec7b67a Keep track of the windows and hooks used by a thread to properly
refuse to change the thread desktop when it's in use.
2005-06-28 19:37:52 +00:00
Alexandre Julliard
1bf96e09a9 Beginnings of support for window stations and desktops. 2005-06-08 18:44:50 +00:00
Robert Shearman
d2ea92d14e - Clean up well-known privileges.
- Implement checking tokens for privileges in the server.
- Implement NtPrivilegeCheck.
2005-04-22 21:17:15 +00:00
Alexandre Julliard
0502638ee1 Convert the per-process thread list to a standard list. 2005-03-01 10:56:18 +00:00
Alexandre Julliard
73209eb73e Convert the global thread list to a standard list. 2005-02-25 19:33:35 +00:00
Alexandre Julliard
20894e2ffb Convert the per-thread mutex list to a standard list. 2005-02-25 16:58:43 +00:00
Alexandre Julliard
81b6a1fbe5 Convert the APC queues to use standard lists. 2005-02-25 14:01:40 +00:00
Alexandre Julliard
d5b4232a3f Added set_win32_error() for error codes that don't have an NT status
equivalent.
2003-12-10 01:12:18 +00:00
Alexandre Julliard
e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Mike McCormack
36cd6f5dbb Added a security token object in wineserver. 2003-07-24 00:07:00 +00:00
Alexandre Julliard
d55e7f1e9b Store the hook table in the thread queue instead of the thread
structure, and make sure the queue is allocated when setting a hook.
2003-07-03 18:16:48 +00:00
Alexandre Julliard
088bcf9ca5 Implemented NtQueueApcThread, and changed the server APC interface to
always take 3 parameters.
Implemented a number of other ntdll thread functions, and use them
from the kernel ones.
2003-04-04 22:26:34 +00:00
Alexandre Julliard
9037f4bbfe Added generic signal handling mechanism based on pipes to synchronize
signals with the main poll loop.
2003-03-26 01:32:18 +00:00
Alexandre Julliard
a8497bd037 Make a distinction between the thread Unix pid and the process wide
pid for platforms that use both.
2003-03-22 21:00:09 +00:00
Alexandre Julliard
baf0a064db Attaching the debugger to a running process should work again
(reported by Eric Pouech). Misc cleanups.
2003-03-11 01:48:53 +00:00
Alexandre Julliard
d04ccb8ebe Use SIGUSR1 instead of SIGSTOP to suspend threads. 2003-03-04 22:18:43 +00:00
Peter Hunnisett
a3c5ad4e77 Suspended threads should not acquire synchronization objects. 2003-02-28 21:50:47 +00:00
Alexandre Julliard
02a53c176e Added send_thread_signal() function and properly handle errors caused
by the thread having already died when we send it a signal.
Use -1 instead of 0 as invalid Unix pid value.
2003-02-25 04:17:22 +00:00
Alexandre Julliard
77c8b1dc2b Pass the pid of the new process in the new_process request, don't
depend on the parent pid to find the startup info.
2003-02-24 20:51:50 +00:00
Alexandre Julliard
e66207ebfc Moved all references to file descriptors out of the generic object
structure.
Changed the poll()-related routines to deal with file descriptors
instead of objects and integrated poll support into fd.c.
2003-02-19 00:33:32 +00:00
Alexandre Julliard
91befe1d64 Made process and thread ids small integers instead of pointers. 2003-02-01 01:38:40 +00:00
Ryan Cumming
24f4eced42 Partially implement GetThreadTimes. 2002-11-25 01:33:38 +00:00
Alexandre Julliard
0286135de3 Rewrote hook support to store the hook chain in the server.
Split off 16-bit hook functions and re-implemented them on top of the
32-bit ones; system-wide 16-bit hooks are no longer supported at this
point.
2002-10-29 00:41:42 +00:00
Alexandre Julliard
54f228733a Added process_id_t and thread_it_t types to the server interface
instead of using void*, and removed a number of type casts.
2002-10-03 19:54:57 +00:00
Alexandre Julliard
5188574984 Renamed handle_t to obj_handle_t to avoid conflict with rpcdce.h. 2002-05-30 20:12:58 +00:00
Alexandre Julliard
0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Alexandre Julliard
9caa71eef4 Redesign of the server communication protocol to allow arbitrary sized
data to be exchanged.
Split request and reply structures to make backwards compatibility
easier.
Moved many console functions to dlls/kernel, added code page support,
changed a few requests to behave properly with the new protocol.
2001-11-30 18:46:42 +00:00
Alexandre Julliard
37ec927536 Use the new protocol.def file to build the request structures.
Define protocol structures in a separate server_protocol.h file.
Removed __WINE_SERVER__ checks now that all includes are in the right
directory.
2001-07-19 00:35:37 +00:00
Alexandre Julliard
10109e6083 Removed unused functions suspend/remove_all_threads. 2001-07-12 22:35:20 +00:00
Ove Kaaven
ada7383852 Preserve the TF (Trap Flag) when continuing from a ptraced suspend. 2001-04-27 18:39:47 +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
67a749999a New set of macros for server calls; makes requests without variable
part somewhat faster.
2001-02-27 02:09:16 +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
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
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
908464d448 Authors: Andreas Mohr <amohr@codeweavers.com>, Dimitrie O. Paun <dimi@cs.toronto.edu>, Patrik Stridvall <ps@leissner.se>
Various warning fixes.
2000-11-01 03:11:12 +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
6c8d9171cd Added a real root key and simplified creation of the HKEY_* special root keys.
Do not prefix all keys with the name of the top key when saving to a file.
Try to load $WINEPREFIX/config into the Wine config branch at startup.
2000-08-26 04:40:07 +00:00
Alexandre Julliard
ea1afcef49 Added APC support in waitable timers. 2000-08-22 20:08:37 +00:00
Alexandre Julliard
c5e433a3a6 Moved idle event handling to the server. 2000-05-30 19:48:18 +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
f6507ed235 Do not send a debug event for a thread until the previous event for
the same thread has been continued.
2000-04-06 22:05:16 +00:00