Commit Graph

1211 Commits

Author SHA1 Message Date
Alexandre Julliard 3410354d61 ntdll: Fix NtDuplicateObject to only close the file descriptor if it's in the same process. 2007-01-18 12:18:51 +01:00
Alexandre Julliard c122260b9d ntdll: Implemented NtLockVirtualMemory and NtUnlockVirtualMemory. 2007-01-16 09:50:08 +01:00
Alexandre Julliard 5a1ad74a67 ntdll: Implementation of inter-process NtFlushVirtualMemory. 2007-01-15 22:31:07 +01:00
Alexandre Julliard 1ea968016f ntdll: Implementation of inter-process VirtualProtectEx. 2007-01-15 22:30:04 +01:00
Alexandre Julliard 3d00239586 ntdll: Implementation of inter-process VirtualQueryEx. 2007-01-15 22:28:42 +01:00
Alexandre Julliard 6ca1d1b081 server: Support queuing some APCs to a process instead of a thread. 2007-01-15 22:26:32 +01:00
Alexandre Julliard fb40dc4099 server: Added mechanism for returning results of APC calls.
Defined APC_VIRTUAL_ALLOC and APC_VIRTUAL_FREE requests.
2007-01-15 22:24:40 +01:00
Alexandre Julliard 46d7fa4852 server: Properly wake the waiting threads when an APC is cancelled. 2007-01-15 20:02:05 +01:00
Alexandre Julliard 1db223954f server: Set the specified in/out buffer sizes on named pipes using SO_SND/RCVBUF. 2007-01-12 20:59:22 +01:00
Alexandre Julliard 4cbe867a85 ntdll: Duplicate the mapping handle on the server side for NtMapViewOfSection. 2007-01-12 14:55:31 +01:00
Alexandre Julliard 5bd513640b ntdll: Moved the check for removable file in load_dll to the server. 2007-01-12 14:42:43 +01:00
Alexandre Julliard 2520e387a1 server: Allow suspended threads to run system APCs. 2007-01-10 21:55:23 +01:00
Alexandre Julliard 126bbb3fe3 server: Don't fail to map a shared section if the final sector is truncated. 2007-01-08 21:34:15 +01:00
Dmitry Timoshkov ced2e56ddc server: Map ESPIPE to STATUS_ILLEGAL_FUNCTION for consistency with ntdll. 2007-01-08 12:51:37 +01:00
Alexandre Julliard 60d6518c82 make_requests: Grab status names from async_terminate calls too. 2007-01-04 13:51:12 +01:00
Alexandre Julliard 5c8421d3e7 server: Add a generic apc_call structure to make it easier to extend, and more type-safe. 2007-01-04 13:40:09 +01:00
Alexandre Julliard 49b49c30fc server: Notify the server that an APC has completed in the next get_apc call. 2007-01-04 13:17:53 +01:00
Alexandre Julliard 2606ad538b server: Make thread_apc into a real object. 2007-01-04 12:36:33 +01:00
Alexandre Julliard 31b02bbd1f server: Avoid crash in alloc_console when the process has no parent. 2007-01-04 09:41:14 +01:00
Reinhard Karcher 41c93895b8 server: Fix 0 timeout handling for serial I/O. 2007-01-03 12:04:38 +01:00
Alexandre Julliard c273498ef4 server: Implement process control using Mach primitives for Mac OS.
With help from Ken Thomases.
2006-12-29 20:38:49 +01:00
Alexandre Julliard cd1c7fc056 server: Add hooks to support process tracing mechanisms other than ptrace. 2006-12-29 16:56:11 +01:00
Alexandre Julliard 48b74b3237 server: Split get_thread_from_pid to allow lookups by tid or pid only. 2006-12-29 16:53:33 +01:00
Alexandre Julliard 7035aa5041 make_makefiles: Generate the top-level .gitignore file.
Add a PROGRAMS variable in some makefiles to make things easier.
2006-12-27 21:23:36 +01:00
Alexandre Julliard 9fed1205ca ntdll: File positions should be aligned to sector boundaries in PE loader. 2006-12-21 12:34:44 +01:00
Andrew Talbot 53dae9b7f5 server: Cast-qual warnings fix. 2006-12-18 11:40:03 +01:00
Andrew Talbot 76c556ad68 server: Cast-qual warnings fix. 2006-12-18 11:39:58 +01:00
Alexandre Julliard 3dc21d387b ntdll: Map the PE header up to the specified size, and clear the rest of the page. 2006-12-13 16:04:49 +01:00
Ulrich Czekalla 4bdf4345b8 winex11.drv: Store window and drawable rects in X11DRV_PDEVICE. 2006-12-12 13:45:10 +01:00
Alexandre Julliard 24b64534e5 server: Explicitly shutdown destroyed sockets to force pending poll() calls to return. 2006-12-04 18:02:02 +01:00
Alexandre Julliard 8930427b21 server: Return an fd type in the get_handle_fd request. 2006-11-20 14:14:04 +01:00
Eric Pouech 5b1f3b14ca ntdll: Fixed returned status for NtQueryThreadInformation's ThreadDescriptorTable
(spotted by Peter Oberndorfer).
2006-11-15 11:24:41 +01:00
Alexandre Julliard d6f8284c2f server: Fix list corruption caused by previous change. 2006-11-13 12:53:09 +01:00
Alexandre Julliard 110a6fe5b6 server: Properly handle kill_thread recursion when killing a process.
Spotted by Mike McCormack.
2006-11-10 12:18:54 +01:00
Gerald Pfeifer 35f0a41629 server: Compilation fix. 2006-11-06 12:27:12 +01:00
Alexandre Julliard 02fc886302 ntdll: Retrieve mailslot message info from the client side. 2006-11-03 17:53:04 +01:00
Alexandre Julliard 715d78e006 server: Refuse to close handles in other processes if they have an associated fd. 2006-11-02 20:52:22 +01:00
Alexandre Julliard 8700c4341b server: Get rid of the server-side file descriptor cache management. 2006-11-02 20:52:05 +01:00
Alexandre Julliard 28418cc919 ntdll: Maintain a file descriptor cache on the client side. 2006-11-02 20:48:19 +01:00
Alexandre Julliard 30b878b3b6 server: Compute the removable device flag on the server side. 2006-11-01 13:28:05 +01:00
Alexandre Julliard 844374afaf server: Always ignore the root window position when computing coordinates offsets. 2006-10-26 13:04:52 +02:00
Eric Pouech e0477ce92a winsock: Clear the held mask with the requested events so that they can be signaled. 2006-10-23 12:26:18 +02:00
Alexandre Julliard 85f518ac6b server: A window timer id should be an unsigned long. 2006-10-16 17:03:44 +02:00
Michael Stefaniuc 5cecceccb2 server: Remove redundant NULL check before free() (found by Smatch). 2006-10-10 12:56:16 +02:00
Andrew Talbot e60c86657a server: Cast-qual warning fix. 2006-10-09 15:23:28 +02:00
Alexandre Julliard 2f80fcd88d server: Changed the get_next_hook request to allow retrieving the current hook too. 2006-10-05 14:05:48 +02:00
Alexandre Julliard 533f519950 user32: Store the prev_unicode hook flag on the client side. 2006-10-05 14:04:25 +02:00
Alexandre Julliard 81c1472449 user32: The per-window user data must be a DWORD_PTR. 2006-10-04 21:49:11 +02:00
Alexandre Julliard e0dcf4fddb server: Rearrange a few fields to avoid wasting padding space on 64 bits. 2006-10-04 21:41:32 +02:00
Alexandre Julliard 3ad9798263 server: Pass the data for message callbacks as vararg from the client side. 2006-10-04 20:25:42 +02:00
Alexandre Julliard 29a3ce9f3a server: Return the data for callback results in the varargs part of the get_message request. 2006-10-04 16:29:45 +02:00
Alexandre Julliard 59dc456822 server: Return the data for winevent hooks in the varargs part of the get_message request. 2006-10-04 16:04:53 +02:00
Eric Pouech 8cb932ea89 ntdll: Implemented AmILastThread information class for NtQueryInformationThread. 2006-10-03 20:20:13 +02:00
Alexandre Julliard 01dd1ffdc2 ntdll: Implement FSCTL_DISMOUNT_VOLUME for MacOSX. 2006-10-03 14:54:21 +02:00
Michael Stefaniuc 5664b8eeef server: Win64 printf format warning fixes. 2006-10-02 11:55:01 +02:00
Michael Stefaniuc 85ce5117c5 Add a WINE_NO_LONG_INT define to many makefiles to ease the transition of DWORD/LONG/ULONG from long to int. 2006-09-29 16:08:30 +02:00
Alexandre Julliard 81977b773b server: Kill the process without SIGTERM when the fd socket is closed. 2006-09-21 11:14:45 +02:00
Alexandre Julliard 32ab895e46 makefiles: Generate the dependencies line to avoid some code duplication. 2006-09-14 09:38:16 +02:00
Robert Shearman 4d7b23069b server: Translate errnos ENFILE and EMFILE to STATUS_TOO_MANY_OPENED_FILES,
which seems to be more appropriate and matches the errno translation
in ntdll.
2006-09-07 10:17:18 +02:00
Alexandre Julliard 13a93b4a94 configure: Set rpath on all executables that link to libwine.
Also add the -multiply_defined suppress option for executables on MacOS.
2006-08-25 17:23:44 +02:00
Mike McCormack 261691fa2f server: Use ntdll values where possible. 2006-08-23 12:01:10 +02:00
Alexandre Julliard 498b781e23 server: Store the actual process count in snapshots.
We can't rely on running_processes for that, since it now also counts
processes waiting for SIGKILL and those aren't included in snapshots.
2006-08-15 20:31:54 +02:00
Alexandre Julliard 1089260f29 configure: Only link against libpoll where really necessary. 2006-08-15 11:41:59 +02:00
Alexandre Julliard 3a4c04dce4 server: Make sure to completely kill processes before returning from a wineserver -k. 2006-08-14 20:40:31 +02:00
Alexandre Julliard 68e850e602 server: Send a SIGKILL to processes that don't terminate properly. 2006-08-14 20:19:42 +02:00
Alexandre Julliard 753c8706f5 server: Only call gettimeofday once per poll loop. 2006-08-10 16:42:09 +02:00
Alexandre Julliard 672bfc2d62 server: Make the message extra info 64 bits on Win64. 2006-08-09 17:10:14 +02:00
Alexandre Julliard d3b3096756 server: Split the queuing of hardware messages into a separate send_hardware_message request. 2006-08-09 16:45:26 +02:00
Alexandre Julliard 2886e9b0e8 makefiles: Use make dependencies to create installation directories.
This avoids a lot of redundant calls to mkinstalldirs.
2006-08-07 17:48:18 +02:00
Alexandre Julliard c82789264b server: Added support for kqueue() as an alternative to poll() on FreeBSD. 2006-08-04 22:11:00 +02:00
Alexandre Julliard 2f4072740e server: Abstract the epoll functions a bit more. 2006-08-03 19:56:55 +02:00
Thomas Kho 3538c0cdce server: Remove unused thread_apc member. 2006-08-03 18:20:20 +02:00
Alexandre Julliard 2c2299685f user: Implementation of Get/SetWindowLongPtr for 64-bit platforms.
Also use the same code for Get/SetWindowWord.
Based on a patch by Ge van Geldorp.
2006-08-02 21:59:00 +02:00
Alexandre Julliard 4d1d49b78a server: Round up the timeout for poll() to avoid redundant calls. 2006-07-27 14:39:50 +02:00
Alexandre Julliard 5522446848 server: Don't crash on invalid request sizes. 2006-07-27 14:39:33 +02:00
Alexandre Julliard c627601c3b server: Convert the server start time to the abs_time_t type. 2006-07-26 14:50:55 +02:00
Alexandre Julliard 3095a48d6f server: Convert thread creation/exit times to the abs_time_t type. 2006-07-26 14:49:55 +02:00
Alexandre Julliard ce40ef18df server: Rename the wait_input_idle request to better reflect what it does.
Also get rid of the unused timeout field.
2006-07-26 11:48:25 +02:00
Alexandre Julliard 40723f795b server: Make the create_async function take an absolute timeout. 2006-07-26 11:47:42 +02:00
Michael Stefaniuc a624977f21 server: Fix some comparisons between signed and unsigned. 2006-07-26 11:11:04 +02:00
Alexandre Julliard 0f273c17ff server: Added data_size_t type to represent sizes in the server protocol.
Make it an unsigned int to save some space on Win64, if we need to
transfer more than 4Gb over the server pipe something is seriously
wrong.
2006-07-26 11:11:03 +02:00
Alexandre Julliard 7b767fb71c server: Try harder to find a suitable thread for read/write_process_memory. 2006-07-25 11:41:47 +02:00
Thomas Kho 4ff4ba394e server: Add new threads to end of thread_list. 2006-07-25 11:41:15 +02:00
Stefan Siebert 026dd2d88a ntdll: Implementation of process CreationTime and ExitTime. 2006-07-21 13:27:16 +02:00
Alexandre Julliard c316f0e47f server: Simplify process creation.
Pass the socket for the new process from the parent through the
environment.
Perform initialisations during the new_process request.
2006-07-19 14:00:10 +02:00
Ge van Geldorp 54afeb02de user32: Implement Get/SetClassLongPtrA/W. 2006-07-12 20:04:18 +02:00
Alexandre Julliard eb8a40c368 libs: Merged libwine_unicode into libwine.
Most dlls use libwine_unicode at this point, so there's nothing to
gain by having two separate libraries.
2006-07-11 19:33:22 +02:00
Ge van Geldorp a6df16396a server: Widen lparam for timers. 2006-07-11 12:39:44 +02:00
Alexandre Julliard c242c3b3f3 server: Fixed get_thread_context for x86_64. 2006-07-11 12:06:38 +02:00
Alexandre Julliard cc2b3b48e6 Take advantage of the recursive nature of .gitignore for Makefile entries.
Prefix other entries with '/' to make them non-recursive.
2006-07-10 20:47:54 +02:00
Alexandre Julliard dd77d1a997 server: Only accept 0 as registry handle in functions that take a parent key. 2006-07-10 11:53:23 +02:00
Dmitry Timoshkov 19e7fab981 user: Improve SetActiveWindow test, add SetForegroundWindow test, make them pass under Wine. 2006-07-10 11:47:44 +02:00
Pierre d'Herbemont 2c38a7d543 server: Fix context_powerpc.c compilation. 2006-07-07 16:57:11 +02:00
Ge van Geldorp 5d88b27d0d server: The "select" call passes handles, not ints. 2006-07-03 11:37:14 +02:00
Alexandre Julliard 498742ff6c server: Moved get/set_thread_context implementation to ptrace.c. 2006-06-27 21:27:47 +02:00
Alexandre Julliard 86d4688171 server: Moved some common bits of get/set_thread_context to thread.c. 2006-06-23 13:16:14 +02:00
Francois Gouget 11ae0f6386 Assorted spelling fixes. 2006-06-16 11:32:29 +02:00
Alexandre Julliard 0fa7170dc3 server: Fixed a compiler warning on MacOSX. 2006-06-15 14:14:31 +02:00
Mike McCormack 1ec3e9fe7d server: Fix a win64 warning. 2006-06-15 11:39:29 +02:00
Mike McCormack e65349d4eb server: Cast user handles to unsigned long for win64 compatibility. 2006-06-15 11:39:29 +02:00
Mike McCormack e1c16ff356 server: Cast handles to unsigned long for win64 compatibility. 2006-06-15 11:39:29 +02:00
Mike McCormack 0a8b344f7b server: Fix a possible memory leak. 2006-06-08 10:40:03 +02:00
Mike McCormack db9b557b54 server: Make wparam and lparam values unsigned long for win64 compatability. 2006-06-08 10:39:58 +02:00
Robert Shearman 38e74b3111 server: Don't attach the thread input when changing parents if the new
parent is the desktop (i.e. it is becoming a top-level window).
2006-06-08 10:26:15 +02:00
Robert Shearman 43890d88f7 server: Don't set the client's server field before the server has
changed into a connected state, otherwise we could assert in
pipe_client_destroy.
2006-06-08 10:26:10 +02:00
Alexandre Julliard 5558652ea3 server: Don't report a fatal protocol error for things that we can recover from. 2006-06-08 10:26:02 +02:00
Mike McCormack fac494c822 server: open_console's from field should be a handle. 2006-06-07 14:30:28 +02:00
Mike McCormack f386950fdd server: Use unsigned long for request types that are 64bit in win64. 2006-06-07 14:21:12 +02:00
Alexandre Julliard 202ef6901e server: Print process/thread id instead of pointer in protocol errors. 2006-06-07 14:20:38 +02:00
Alexandre Julliard 4ec9e110b0 server: Return an error for invalid requests instead of killing the client process. 2006-05-28 18:27:02 +02:00
Eric Pouech 1d6e2590e0 ntdll/kernel32: Pipe information.
- implemented ntdll.NtQueryInformationFile's FilePipeLocalInformation control code 
- reimplemented kernel32.GetNamedPipeInfo on top of it
- enhance current features to make this work both on client and server handles
- now also returning the number of instances
2006-05-27 12:31:01 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Robert Shearman 22bd7a3d01 server: Don't clear the QS_POSTMESSAGE flag if there is a pending quit message. 2006-05-23 12:37:02 +02:00
Robert Shearman 3396a66ee7 server: Retrieve the groups for a token from the server. 2006-05-15 14:25:43 +02:00
Mike McCormack 5fb6e0ef16 server: Avoid a crash if a registry notify event has been set already. 2006-05-15 11:04:22 +02:00
Robert Shearman b02e6b0926 server: Threads should start off without having an impersonation token. 2006-05-05 16:36:05 +02:00
Alexandre Julliard d59fa772d5 server: Ignore the SizeOfHeaders field and compute the correct size ourselves. 2006-04-21 16:16:11 +02:00
Alexandre Julliard f6cb551d7f server: Remove some no longer needed ptrace code to set registers.
Also make sure the debug registers are properly copied to the context
when set.
2006-04-20 17:46:16 +02:00
Alexandre Julliard d2ad6f8355 ntdll: Get registers on the client side for NtGetContextThread on the current thread. 2006-04-20 15:40:28 +02:00
Alexandre Julliard 17de829096 server: Use the standard suspend mechanism to simulate a breakpoint
in an active process, instead of sending a SIGTRAP.
2006-04-19 19:45:39 +02:00
Thomas Kho 0e81484c45 x11drv: Properly handle VK_LMENU input. 2006-04-14 19:35:05 +02:00
Alexandre Julliard f9ff7bf4d9 server: Remove the use_ptrace variable. 2006-04-13 21:52:55 +02:00
Alexandre Julliard 0fab85a5b6 server: Don't attach thread input to the desktop.
Now that the desktop can be owned by a thread we need to explicitly
check for it in the thread attach check.
2006-04-12 11:19:20 +02:00
Alexandre Julliard 7dbd1f01f2 server: Moved the tkill function to ptrace.c. 2006-04-10 21:07:21 +02:00
Alexandre Julliard d8659a9773 server: Get rid of the no longer used get_thread_single_step function. 2006-04-10 20:27:45 +02:00
Alexandre Julliard 820c5927c8 server: Removed the thread attached flag, since we always detach now. 2006-04-10 20:25:22 +02:00
Alexandre Julliard 5cc97c4e0b server: Always detach from the thread when we are done with ptrace. 2006-04-10 20:21:46 +02:00
Alexandre Julliard 2eb46bb464 explorer: Don't use ExitWindows on shutdown.
ExitWindows kills all current processes and that creates a race with
newly started processes. Instead, simply exit and let the new process
create a new explorer.
2006-04-07 20:26:47 +02:00
Alexandre Julliard cb70931f67 server: Moved read/write_process_memory and get_selector_entry to ptrace.c. 2006-04-07 19:52:12 +02:00
Alexandre Julliard 0b492c708f server: Hide assumptions about alignment inside the read_process_memory function. 2006-04-07 19:43:44 +02:00
Alexandre Julliard 959bbf8b75 server: Get rid of alignment requirements in write_process_memory request.
All the alignment handling is now done in the write_process_memory
function inside the server.
2006-04-07 18:41:58 +02:00
Robert Shearman 7a3df4d097 server: Free ptr in console_input_append_hist.
Free ptr in console_input_append_hist before returning, otherwise it
will be leaked (found by Coverity).
Remove the setting of last error on mem_alloc failure, as it is already
done in mem_alloc.
2006-04-07 13:08:49 +02:00
Robert Shearman 0bf1c22cad server: Handle failure of mem_alloc in duplicate_token. 2006-04-07 13:08:33 +02:00
Robert Shearman 9e0d0563c1 server: Handle possible mem_alloc failure in create_token. 2006-04-07 13:07:54 +02:00
Robert Shearman d8058fbe8c server: Should use release_object on an object instead of free. 2006-04-07 13:07:47 +02:00
Mike McCormack 14278b4299 server: Avoid comparison of -1 with an unsigned variable. 2006-04-07 11:45:58 +02:00
Alexandre Julliard 3dd0b2ef64 server: Don't single step into signal handlers. 2006-04-03 21:42:42 +02:00
Alexandre Julliard c5c599d478 server: Avoid crash on startup when the configuration dir doesn't exist. 2006-03-31 13:06:04 +02:00
Robert Shearman d18711e282 server: Store the token source. 2006-03-30 12:41:23 +02:00
Mike McCormack f5c1381e06 server: Fix a race condition in the delivery of change notifications. 2006-03-28 12:21:54 +02:00
Alexandre Julliard 90af5a0d17 server: Connect to the window station and desktop specified by startup info.
If window station and desktop aren't inherited from the parent, don't
connect to them from the server, but from the USER init code where we
can get the proper values from the startup info structure.
2006-03-27 12:57:17 +02:00
Alexandre Julliard 641e9e382f server: Store window properties in the global atom table instead of
the per-winstation table.
2006-03-27 12:50:26 +02:00
Alexandre Julliard 0a3646292a server: Fixed process exit code on FreeBSD. 2006-03-27 12:14:24 +02:00
Ken Thomases 1c788eada2 server: Fix memory leak in read_process_memory handler. 2006-03-24 12:54:19 +01:00
Phil Krylov 8e772c83ef server: Fix compilation under Darwin 7. 2006-03-24 12:14:14 +01:00
Alexandre Julliard 9873494ced server: Class and global atoms should not be local to a window station. 2006-03-22 22:13:40 +01:00
Alexandre Julliard b00fb174f6 server: New scheme for cleaning up objects on server exit.
Objects stored in static variables can now be marked when they are
created and are automatically cleaned up on exit. This avoids having
to export a bunch of close_* functions.
2006-03-22 20:32:04 +01:00
Alexandre Julliard 3d531f1bb5 server: Fixed length check in dump_inline_unicode_string. 2006-03-07 14:59:49 +01:00
Alexandre Julliard 1a4f6e579b user: Launch explorer to manage the desktop window. 2006-03-07 11:42:35 +01:00
Alexandre Julliard f978f615d8 server: Support for closing the desktop window.
If a thread is owning the desktop window, when all other users of the
desktop have exited, signal the owner to close the desktop (with a 1
second delay).
2006-03-06 21:02:24 +01:00
Alexandre Julliard 8cea993033 server: Added unlink_named_object function.
Allows to remove the name of an object while keeping around the object
itself.
2006-03-06 21:00:09 +01:00
Alexandre Julliard 251be542ac server: Infrastructure for having a thread own the desktop window. 2006-03-06 20:37:52 +01:00
Alexandre Julliard 71b94726d9 server: Avoid crash in set_thread_desktop if the thread doesn't have a queue. 2006-03-06 15:10:59 +01:00
Alexandre Julliard 4be3d4c12b server: Return real parent and owner in the create_window request.
Remove computing of parent and owner handles on the client side.
2006-03-06 15:00:37 +01:00
Alexandre Julliard c9cc7e33ff Fixed some compiler warnings on old gcc versions. 2006-03-02 18:03:32 +01:00
Mike McCormack 0cd0626de0 server: Print a message if wineserver crashes and we don't dump cores. 2006-03-01 12:35:17 +01:00
Eric Pouech 6b95c0e4b4 kernel32: ClearCommError.
ClearCommError should only deal with *communication* errors (are being
seen on the serial interface) rather than API errors (which can be
reported to the caller by the API itself).  I then removed all the
stuff related to storing the error status in the server object.
2006-02-27 13:54:43 +01:00
Francois Gouget 4aa6418d51 Assorted spelling fixes. 2006-02-24 21:10:03 +01:00
Mike McCormack 4212108598 server: Add directories to recursive watches as they're opened. 2006-02-23 12:29:57 +01:00
Mike McCormack 309a9bf36f server: Make sure we don't get into an infinite loop freeing inodes. 2006-02-22 16:19:55 +01:00
Alexandre Julliard e27358ea5c server: Remove no longer needed fields in the init_process_done request. 2006-02-21 20:08:19 +01:00
Alexandre Julliard 492661079c server: Avoid hang on process startup.
Fixed the startup_info signaled state to avoid blocking the parent
process when the child crashes on startup.
2006-02-21 19:30:17 +01:00
Mike McCormack e4faabfa64 server: Track created and removed directories in the tree of inodes for inotify.
Add them to or remove them from existing recursive watches.
2006-02-21 11:13:23 +01:00
Mike McCormack a2813f7c2e server: Distinguish between a directory and a file changing in
ReadDirectoryChangesW.
Add a test for it.
2006-02-20 12:28:46 +01:00
Alexandre Julliard 5ed59015b2 configure: Use --rpath if supported when building binaries to point to
the relative location of the wine libraries.
2006-02-20 11:20:47 +01:00
Mike McCormack fbc00db3f6 server: Use a single inotify watch, as it scales better with a large
number of directories.
2006-02-17 11:40:38 +01:00
Alexandre Julliard e6374cbea7 server: Store the process exe module in the standard dll list. 2006-02-16 12:13:01 +01:00
Mike Frysinger 5392844392 Add support for 'make install DESTDIR'. 2006-02-14 13:51:38 +01:00
Eric Pouech 22357ca388 server: When possible, use tgkill instead of tkill syscall on Linux. 2006-02-14 12:24:32 +01:00
Alexandre Julliard 5d282dc891 server: Try to update the input key state even when the message is
dropped in queue_hardware_message. This should fix some problems with
the Alt key getting "stuck" after Alt-Tab.
2006-02-14 10:43:15 +01:00
Alexandre Julliard e0330145d8 server: Remove the no longer needed exe_file parameter in the
init_process_done request.
2006-02-08 15:25:12 +01:00
Alexandre Julliard 2b0033d5ad server: Allow the main exe to be registered as a normal dll before
init_process_done is called.
2006-02-08 15:07:16 +01:00
Alexandre Julliard e979832dda server: Fixed handling of inotify record length. 2006-02-08 15:06:42 +01:00
Mike McCormack 0790f95589 kernel32: ReadDirectoryChangesW fixes.
ReadDirectoryChangesW remembers whether it's recording changes or not.
Don't initialize overlapped->InternalHigh.
The hEvent is cleared when ReadDirectoryChanges is called.
2006-02-07 16:50:36 +01:00
Mike McCormack 0193211946 server: Fill in NtNotifyChangeDirectoryFile's buffer with change data. 2006-02-06 11:58:55 +01:00
Robert Millan 8800352477 Enable for GNU/kFreeBSD the same kernel-specific interface/parameter
that is used with FreeBSD.
2006-02-05 13:06:50 +01:00
Alexandre Julliard 2a36dd239c server: Remove no longer used create_flags from get_startup_info request. 2006-02-05 12:33:24 +01:00
Alexandre Julliard cf9ced5e69 server: Fixed compile without inotify. 2006-02-05 12:19:56 +01:00
Mike McCormack fdf0c684f5 server: Initial inotify support. 2006-01-30 18:15:31 +01:00
Eric Pouech 2e0b5336f6 Suppress some false-positives reported by valgrind. 2006-01-27 16:17:51 +01:00
Alexandre Julliard 8b0feb253b server: Make the FILE_SHARE_DELETE sharing checks depend on DELETE
access instead of on the FILE_DELETE_ON_CLOSE flag (based on a patch
by Mike McCormack).
2006-01-27 15:50:38 +01:00
Mike McCormack 08351071fd server: Fix the file notification interface to use directory handles. 2006-01-27 12:13:56 +01:00
Alexandre Julliard 6d85f3bf21 server: Fixed low-level hardware hooks.
The hook thread field has been reused for win events, so it no longer
works for low-level hardward hooks. Use the owner field instead.
2006-01-27 12:12:15 +01:00
Alexandre Julliard 471782ae29 server: Allow opening a directory with write access (based on a patch
by Mike McCormack).
2006-01-25 15:06:48 +01:00
Alexandre Julliard ab5ca5c048 server: Use the new set_fd_user function in create_serial(). 2006-01-24 13:31:48 +01:00
Mike McCormack 9a7124e815 server: Modify open_fd to create an fd without a user.
Create a set_fd_user function.
Update create_file() to use the above functions.
2006-01-24 13:30:55 +01:00
Alexandre Julliard 53496f83e7 Fixed a couple of warnings on MacOS. 2006-01-23 16:48:26 +01:00
Alexandre Julliard 58273ea9c6 server: More generic mechanism for adding typecasts in server traces.
Added casts for size_t values.
2006-01-23 16:40:57 +01:00
Robert Shearman a40ce39340 user: Fix WM_QUIT message ordering from PostQuitMessage.
Added a new server call as PostQuitMessage should set a flag in the
message queue to return the WM_QUIT message when there are no other
pending messages, rather than posting a message to the thread queue as
it does at the moment.
2006-01-17 13:14:31 +01:00
Mike McCormack 213e01e606 server: Make sure to release the fd we grabbed in all cases. 2006-01-17 13:13:14 +01:00
Alexandre Julliard 2878d99216 ntdll: Add debug registers to the context of all exceptions.
Maintain a local cache of the debug registers to avoid server calls
where possible.
2006-01-13 13:58:14 +01:00
Alexandre Julliard b54e9e94e9 server: Don't round up the header size for image mappings. 2006-01-11 20:59:26 +01:00
Alexandre Julliard 2654be08d5 ntdll: Handle NtSetContextThread on the client side (as far as
possible) when setting the context of the current thread.
2006-01-11 20:20:32 +01:00
Eric Pouech b7607aebdc ntdll: Correct implementation for atom query functions. 2006-01-03 17:34:43 +01:00
Vitaliy Margolen 4fabe112d7 server: Fix va_list compile error. 2006-01-03 12:06:03 +01:00
Alexandre Julliard b4fa1b914c server: Fixed console access rights handling. 2005-12-22 13:54:34 +01:00
Alexandre Julliard bd298b511e server: Set the context flags in get_thread_context to indicate which
parts of the returned context are valid.
2005-12-21 20:06:42 +01:00
Vitaliy Margolen b05340a523 ntdll: Implement FSCTL_PIPE_WAIT NtFsControlFile ioctl.
Implement FSCTL_PIPE_WAIT NtFsControlFile ioctl.
Modify WaitNamedPipeW to use NtFsControlFile.
Replace struct overlapped with event.
2005-12-14 11:14:02 +01:00
Alexandre Julliard 1acb930db8 server: Added get_file_info implementation for named pipe and mailslot devices. 2005-12-13 12:00:11 +01:00
Alexandre Julliard 5bcd0888ef server: Fixed refcounting in get_fd requests for named pipe and mailslot devices. 2005-12-13 11:22:28 +01:00
Alexandre Julliard 770c4a1551 server: Don't enable polling on regular files in add_queue. 2005-12-12 17:20:03 +01:00
Alexandre Julliard a510a7e117 server: Added access rights mapping to file objects. 2005-12-12 16:46:17 +01:00
Alexandre Julliard 46d1b3e8da server: Added access rights mapping to process and thread objects. 2005-12-12 15:03:07 +01:00
Alexandre Julliard 32a93960ba server: Added access rights mapping to registry key objects. 2005-12-12 15:02:26 +01:00
Alexandre Julliard e57f734765 server: Added access rights mapping to symlink objects. 2005-12-12 15:01:16 +01:00
Alexandre Julliard 5fb2e68bb2 server: Added access rights mapping to token objects. 2005-12-12 15:01:08 +01:00
Alexandre Julliard 03f46e1321 server: Added access rights mapping to synchronization objects. 2005-12-12 14:58:44 +01:00
Alexandre Julliard 28beba31d6 server: Added infrastructure for access rights mapping. 2005-12-12 14:57:40 +01:00
Alexandre Julliard b0aa29effa server: Allow the mailslot device to be opened as a file object. 2005-12-12 14:39:27 +01:00
Alexandre Julliard 26e60d8ffc server: Allow the named pipe device to be opened as a file object. 2005-12-12 14:30:06 +01:00
Alexandre Julliard 67505c00af server: Support for opening devices.
Added support for opening devices directly with the server when they
don't correspond to a Unix file.
2005-12-12 14:27:45 +01:00
Alexandre Julliard 2017555b06 server: Use a better error code for a zero-size mapped file. 2005-12-12 13:38:43 +01:00
Alexandre Julliard 03b040c51d server: Added object attributes to a few more requests. 2005-12-09 14:52:04 +01:00
Alexandre Julliard 24560e70bb server: Make alloc_handle use attributes instead of inherit flag. 2005-12-09 13:58:25 +01:00
Alexandre Julliard 7b910f40f2 server: Use attributes instead of inherit flag in dup_handle request. 2005-12-09 12:21:35 +01:00
Alexandre Julliard 836d07c369 server: Use attributes instead of inherit flag in token requests.
Also use the specified access rights in the open_token request.
2005-12-09 12:17:19 +01:00
Alexandre Julliard f2d7dd645e server: Use attributes instead of inherit flag in process and thread requests. 2005-12-09 12:13:11 +01:00
Alexandre Julliard f11d0a375f server: Use attributes instead of inherit flag in snapshot requests. 2005-12-09 12:09:44 +01:00
Alexandre Julliard 7a096601e3 server: Use attributes instead of inherit flag in console requests. 2005-12-09 12:05:20 +01:00
Alexandre Julliard 27b1aec925 server: Use attributes instead of inherit flag in file requests. 2005-12-09 12:00:48 +01:00
Alexandre Julliard bc30303c56 server: Use attributes instead of inherit flag in socket requests. 2005-12-09 11:58:55 +01:00
Vitaliy Margolen 4e36524916 server: Remove sync_namespace. 2005-12-05 14:52:18 +01:00
Alexandre Julliard d13095bc84 server: Let the directory code handle device names. 2005-12-05 14:52:02 +01:00
Vitaliy Margolen cf21d4d7ca Move mailslot devices into directory name space. 2005-12-05 13:30:26 +01:00
Vitaliy Margolen babfa79436 Move named pipe objects into directory name space.
Change tests accordingly.
Add small test for WaitNamedPipe.
2005-12-05 13:09:35 +01:00
Alexandre Julliard 3764da68de server: Move handle allocation out of open_object_dir. 2005-12-05 12:52:05 +01:00
Vitaliy Margolen 348a3d912b Move mapping (section) objects into directory name space. 2005-12-02 16:13:13 +01:00
Vitaliy Margolen 7c5cb7a229 Move timer objects into directory name space. 2005-12-02 16:05:54 +01:00
Vitaliy Margolen 5daae3dfa9 Move semaphore objects into directory name space. 2005-12-02 16:01:17 +01:00
Vitaliy Margolen f676bc8d85 Move event and mutex objects into directory name space. 2005-12-02 15:55:48 +01:00
Alexandre Julliard e21a97da85 Fixed some compiler warnings on Darwin. 2005-12-01 12:36:05 +01:00
Vitaliy Margolen 80444dfe51 Implement symbolic link object in wineserver.
Implement Nt[Create|Open|Query]SymbolicLinkObject.
Change tests accordingly.
2005-11-30 19:22:57 +01:00
Vitaliy Margolen 3c6bdcce53 Implement directory object in wineserver.
Implement Nt[Create|Open]DirectoryObject.
Change tests accordingly.
2005-11-29 17:21:05 +01:00
Ge van Geldorp 1a1583a364 Match PSDK STATUS_* definitions. 2005-11-28 17:32:54 +01:00
Alexandre Julliard 0ec7e1a591 Renamed all .cvsignore files to .gitignore. 2005-11-26 13:10:33 +01:00
Vitaliy Margolen baffcb95d3 Add name_lookup function in object_ops. 2005-11-22 14:55:42 +00:00
Alexandre Julliard 7f9e281b72 Use struct unicode_str instead of null-terminated strings where
possible, and remove constraints on total key path length.
2005-11-22 12:05:36 +00:00
Robert Lunnon 95414ef44c Add stdarg.h where missing. 2005-11-22 12:01:05 +00:00
Vitaliy Margolen 893987b871 Return correct error on name collision when creating new named
objects.
Check for correct error in affected places.
2005-11-21 16:27:03 +00:00
Alexandre Julliard 86397e1d43 Fixed handling of mailslot read timeout to avoid compiler warnings. 2005-11-21 15:23:49 +00:00
Vitaliy Margolen 83ef91ce2d Replace inherit flag with object attributes in winstation and desktop
create & open. Use OBJ_OPENIF flag to create winstation & desktop.
2005-11-21 12:05:38 +00:00
Alexandre Julliard ead9b062e3 Added a struct unicode_str to encapsulate object names. 2005-11-18 16:31:18 +00:00
Alexandre Julliard 80b997a2cc Added support for the QS_ALLPOSTMESSAGE flag. 2005-11-14 15:17:09 +00: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
Vitaliy Margolen f2686d4620 Fix error returned when opening nonexistent pipes. 2005-11-02 14:15:09 +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 ff7795ef4c Don't send an extra signal when waiting for a debug event, just do a
normal wait.  Return the debug event status directly as return value
of the server call.
2005-11-01 21:47:07 +00:00
Alexandre Julliard d6f7adb367 Don't send the incoming context to the server for get_thread_context,
instead copy only the relevant fields of the return value on the
client side.
2005-11-01 21:41:26 +00:00
Vitaliy Margolen ecca104869 Fix error returned when exceeding allowed instances. 2005-11-01 21:37:30 +00:00
Vitaliy Margolen 1ca6e899ec - Use OBJ_CASE_INSENSITIVE in object lookup.
- Remove case_sensitive flag from namespace.
- Remove todo_wine from now succeeding tests.
2005-11-01 10:22:38 +00:00
Marcus Meissner 4b811d9348 Do not overflow the stackbased "nt" struct when reading non-conforming
PE files.
2005-10-31 21:03:05 +00:00
Vitaliy Margolen 3585f2fa77 Pass object attributes to create_named_object & find_object. 2005-10-29 12:38:23 +00:00
Vitaliy Margolen a996000ad5 - Send whole OBJECT_ATTRIBUTES.Attributes to the server not just an
inherit flag.
- Pass DesiredAccess to the server when creating mailslot.
2005-10-27 18:30:37 +00:00
Alexandre Julliard f8037bddce Make the unmount_device request take a handle to the device file
itself instead of a handle to a file opened on the device.
2005-10-27 11:20:50 +00:00
Alexandre Julliard 2790923722 Removed incorrect process queue check in wait_input_idle. 2005-10-12 21:10:52 +00:00
Alexandre Julliard 12a749984c Put Wine version information in all the man pages. 2005-10-06 16:10:01 +00:00
Alexandre Julliard 664e4106c6 Added global rules for man pages. 2005-10-06 16:06:04 +00:00
Vitaliy Margolen 9a7b41ad53 Fix refcount leak and return correct error in create_named_object. 2005-09-28 12:04:51 +00:00
Alexandre Julliard 79b387deb6 Initial version of a wineserver man page. 2005-09-27 10:56:47 +00:00
Eric Pouech b09582a890 Implemented kernel32 process affinity handling on top on ntdll. 2005-09-27 10:52:10 +00:00
Alexandre Julliard 0ec183cfe3 Use the proper format to print handles in handle_table_dump. 2005-09-27 09:36:54 +00:00
Alexandre Julliard 43c6396e94 Use int instead of long in interlocked_* functions for 64-bit
compatibility.
2005-09-26 13:51:58 +00:00
Eric Pouech e21aa6a184 - now passing access rights when creating a named pipe in NTDLL
- reimplemented Kernel32.CreatePipe purely on top of NTDLL APIs
- anonymous pipe handles should have the SYNCHRONIZE bit set
2005-09-26 11:02:45 +00:00
Alexandre Julliard 5a12dd17ae Preliminary version of the context support for x86-64. 2005-09-16 18:59:23 +00:00
Alexandre Julliard cdf92942b1 Use the proper size for the cmsg_fd structure on 64-bit plaforms. 2005-09-16 18:52:47 +00:00
Alexandre Julliard 867ae269d4 Remove an exiting thread from the process only after thread cleanup to
avoid accessing freed window classes.
2005-09-14 15:44:12 +00:00
Alexandre Julliard 127127fd3b Timeout 0 means infinite wait for SendMessageTimeout.
Remove the message from the receiver queue if it times out before
being received.
2005-09-13 14:46:46 +00:00
Ivan Leo Puoti f0db7ab06b Added FSCTL_PIPE_LISTEN support. 2005-09-06 14:09:42 +00:00
Eric Pouech b3badc7dd3 - rewrite kernel32:{Set|Get}PriorityClass on top of ntdll equivalent
- priority for process in wineserver is now the NTDLL form (no longer
  the kernel32 one)
2005-09-06 10:25:11 +00:00
Alexandre Julliard f62f6e8fe1 Don't cache file descriptors open on removable devices. 2005-08-24 18:33:50 +00:00
Alexandre Julliard 38502f70eb Added a separate set_handle_cached_fd request instead of abusing
set_handle_info for that.
2005-08-23 18:43:50 +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 9d99a04880 Added a watchdog mechanism to break out of the wait4 call in case it
didn't return properly (can happen at thread exit).
2005-08-19 14:01:43 +00:00
Alexandre Julliard 3f31a10d01 Avoid a crash in find_hardware_message_window when there's no
foreground input.
2005-08-16 19:58:12 +00:00
Alexandre Julliard 4ebd2fc0ff Better handling of conflicting section information between
SizeOfRawData and VirtualSize.
2005-08-15 14:50:06 +00:00
Mike McCormack e659f1e60c Fix some gcc 4.0 warnings. 2005-08-09 10:37:50 +00:00
Alexandre Julliard b0e091acbf The temp buffer always stores WCHARs, fixed its type and got rid of a
number of casts.
2005-08-09 10:36:45 +00:00
Alexandre Julliard 964815bc42 Added an unmount_device request that invalidates all file descriptors
open on a given Unix device.
2005-08-08 15:11:03 +00:00
Alexandre Julliard 49b7fdcfc0 Removed the broken mmap64 configure check, and moved the
_FILE_OFFSET_BITS define to wine/port.h. Made sure that all files that
need the define include it.
2005-08-03 21:25:10 +00:00
Alexandre Julliard d4325152db Added a separate device object to keep track of inodes that are on the
same device.
2005-07-30 19:09:43 +00:00
Alexandre Julliard 830d1edb9d Automatically generate the list of error names in make_requests. 2005-07-29 14:49:05 +00:00
Alexandre Julliard b6c7677778 Removed a no longer used variable. 2005-07-29 14:41:40 +00:00
Alexandre Julliard f895ad180d Fixed a couple of error codes. 2005-07-29 14:41:14 +00:00
Alexandre Julliard c132542470 Renamed fd to unix_fd in the closed_fd structure to make the code a
bit clearer.
2005-07-28 10:48:57 +00:00
Alexandre Julliard 8197e0b07b Create the desktop class when needed without requiring a client
request.
2005-07-19 19:45:48 +00:00
Robert Shearman 91eaea53ae - Change the default user SID to match what was previously returned by
NtQueryInformationToken.
- Implement TokenUser for NtQueryInformationToken.
- Add a function for getting the user's registry path from a SID.
2005-07-18 13:22:55 +00:00
Robert Shearman 37773dda84 Make mailslots use as much of the default async fd implementation as
possible.
2005-07-14 12:18:05 +00:00
Alexandre Julliard 9ad5628639 Moved the server start time to the init_thread request and got rid of
the init_process request (based on a patch by Felix Nawothnig).
2005-07-14 10:32:46 +00:00
Alexandre Julliard 11ad6a0ac4 Return the startup info size in the init_thread request, and allocate
the process parameters structure in ntdll instead of kernel.
2005-07-13 19:43:35 +00:00
Robert Shearman fbf0ea9f18 Store the default DACL in the token. 2005-07-13 19:31:27 +00:00
Alexandre Julliard 4391be583e Get rid of the boot_done request. 2005-07-13 14:20:13 +00:00
Alexandre Julliard 0424f38169 Already initialize the process in the first init_thread request
instead of waiting for the init_process request.
2005-07-13 12:12:43 +00:00
Alexandre Julliard c976db1a03 Avoid potential crashes when there is no handle table. 2005-07-13 12:09:49 +00:00
Alexandre Julliard 01caa5e645 Moved the fields that depends on startup info from the init_process
request to get_startup_info.
2005-07-12 20:27:09 +00:00
Alexandre Julliard 6aa0cc5e3c Load the HKEY_CURRENT_USER branch at server startup too. 2005-07-11 20:44:59 +00:00
Alexandre Julliard 4a40b2eefb Store the global hooks table in the desktop object. 2005-07-11 18:05:50 +00:00
Alexandre Julliard 5ad90c0f37 Tie windows and thread input structures to a specific desktop.
Support multiple desktop windows (one per desktop object).
Use the window desktop to find the window station to use for property
atoms.
2005-07-11 13:30:23 +00:00
Alexandre Julliard 499e343d9f Export the winstation and desktop structures to avoid having to write
too many accessor functions.
2005-07-11 10:55:53 +00:00
Alexandre Julliard c3ac57dd86 Explicitly pass the winstation to the atom functions so that they can
be used even when current is not set.
2005-07-08 14:23:27 +00:00
Alexandre Julliard 8c518808b8 Put in place the basic infrastructure to allow supporting multiple
desktop windows.
2005-07-08 11:37:40 +00:00