Commit Graph

1044 Commits

Author SHA1 Message Date
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
Alexandre Julliard
bb82cbb90b Convert the shared mapping list to a standard list. 2005-07-07 12:04:55 +00:00
Dmitry Timoshkov
86af38c8ca Make IsWindowUnicode work in the case when window belongs to another
process.
2005-07-07 12:02:31 +00:00
Alexandre Julliard
248f4b29fe Store the global atom table in the process window station. 2005-07-07 11:29:23 +00:00
Vitaliy Margolen
b2e74c3047 Load all dll sections no matter what attributes say. 2005-07-02 10:50:42 +00:00
Alexandre Julliard
112228dfe3 Don't bother loading the config file anymore. 2005-07-01 19:26:07 +00:00
Alexandre Julliard
45128bdcdd Make the clipboard information local to the process window station. 2005-06-29 20:13:36 +00:00
Alexandre Julliard
36b85d02f6 Clear the process handle table before releasing it to avoid potential
problems with destructors trying to access handles.
2005-06-29 19:29:15 +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
Mike McCormack
390bc5f52f Don't include winbase.h when it's not necessary. 2005-06-21 09:46:15 +00:00
Robert Shearman
4bba21643c Add support for impersonating a token. 2005-06-20 13:18:38 +00:00
Mike McCormack
66e5ce3066 Remove unnecessary includes. 2005-06-20 10:35:36 +00:00
Robert Shearman
8cb3f92e53 - All versions of Windows ignore the access rights of the passed in
parent handle to RegCreateKey(Ex).
- Add a test that shows this.
2005-06-16 20:34:34 +00:00
Alexandre Julliard
5f22e7caf6 Remove the process locks in process_killed, not process_destroy. 2005-06-14 19:23:56 +00:00
Alexandre Julliard
0901b23206 Call the close_handle notification for all objects when releasing a
handle table.
2005-06-14 19:16:56 +00:00
Robert Shearman
dacc3dbfa5 Fix size used to validate the sids in aces. 2005-06-14 19:15:58 +00:00
Robert Shearman
f95ef09b8e Add TokenType attribute to specify whether the token is a primary or
impersonation token.
2005-06-14 18:10:04 +00:00
Mike McCormack
cdcb203691 Call remove_process_locks when a process ends, fix declarations. 2005-06-14 11:40:40 +00:00
Robert Shearman
3795709344 Change code style of form "if( x )" to "if (x)" for consistency. 2005-06-10 19:54:46 +00:00
Alexandre Julliard
9b3b7caf2d Store the process along with the key handle in notifications. 2005-06-09 20:36:08 +00:00
Alexandre Julliard
b9b1ea9c9f Added a close_handle method to the object operations, and use it to
implement registry notifications and the strange behavior of
CloseHandle on winstation/desktop handles.
2005-06-09 15:39:52 +00:00
Alexandre Julliard
78a3e63377 The desktop of a new thread should be set from the process initial
desktop, not from the parent thread.
Fixed a couple of bugs in the desktop name handling.
2005-06-09 12:07:12 +00:00
Robert Shearman
9b82644d00 - Avoid evil signed bitfields.
- Fix bug with using wrong revision in security_sid_alloc.
- Add all builtin groups present in the Administrator token on Windows
  to the default token.
2005-06-09 09:47:28 +00:00
Robert Shearman
d681022d68 Fix a regression in the performance of named pipes by only making the
fd non-blocking when overlapped I/O is requested for the fd (reported
by Ivan Leo Puoti).
2005-06-09 09:46:55 +00:00
Mike McCormack
c61580133d Include user.h in the new winstation.c to avoid a warning from
-Wmissing-declarations.
2005-06-09 09:43:54 +00:00
Robert Shearman
e51dd36453 Implement overlapped I/O with named pipes. 2005-06-08 19:11:46 +00:00
Alexandre Julliard
1bf96e09a9 Beginnings of support for window stations and desktops. 2005-06-08 18:44:50 +00:00
Robert Shearman
d6a4e34a60 - Add a default asynchronous I/O implementation.
- Make file objects use it.
2005-06-07 20:09:01 +00:00
Alexandre Julliard
db412aaf60 Added a from_child parameter to the get_update_region request to allow
restarting the search from a given child, in order to avoid looping
forever on windows that don't repaint correctly.
2005-05-31 13:37:16 +00:00
Alexandre Julliard
50dc5a30e1 Crop the update region to the new window rectangle when resizing a
window.
2005-05-26 12:28:07 +00:00
Robert Shearman
c516571481 - Use NULL instead of 0 for all non-handle pointers.
- Fix non-ANSI function declarations.
- Make a function static.
2005-05-25 18:41:09 +00:00
Robert Shearman
616b293e1d - Print commas between ACE's.
- Dump access masks from all ACE's.
2005-05-25 09:54:05 +00:00
Robert Shearman
4ad93416a8 Implement NtAccessCheck. 2005-05-24 12:32:18 +00:00
Robert Shearman
7bff35428b - Add new server type "struct security_descriptor".
- Add tracing for this new type.
2005-05-23 16:33:00 +00:00
Rob Shearman
b4b7f05dc3 Fix several memory leaks. 2005-05-23 09:53:06 +00:00
Robert Shearman
2a782c65bd Add user attribute to token objects. 2005-05-16 17:52:46 +00:00
Alexandre Julliard
110c8dc54a Fixed a number of atom test failures. 2005-05-14 11:11:21 +00:00
Alexandre Julliard
55d449e476 Fixed another case where a mouse message could get assigned to a
different thread input.
2005-05-14 11:08:05 +00:00
Alexandre Julliard
90b48e93a3 Only set the new window of a hardware message if the window belongs to
the same thread input, otherwise just drop the message.
2005-05-13 14:00:19 +00:00
Alexandre Julliard
9e73cdde39 Allow passing a string to the window property server requests instead
of an atom to avoid redundant server round-trips.
2005-05-11 19:01:10 +00:00
Alexandre Julliard
4bef6770b6 Changed atom handling to use counted strings instead of
null-terminated ones, avoiding the need for a temporary buffer.
2005-05-11 18:25:27 +00:00
Alexandre Julliard
63342353bc Store a bitmap of active hooks on the client side to try to avoid
server calls for hooks that are not set.
2005-05-11 13:03:15 +00:00
Eric Pouech
e6267369b2 - changed ATOM support in wineserver to match NTDLL needs
- adapted accordingly kernel32 atom support
2005-05-10 15:15:50 +00:00
Michael Stefaniuc
d40517cb18 Change the type of 1 bit wide bitfields to unsigned. 2005-05-09 09:26:28 +00:00
Eric Pouech
f479eef986 Fixed a wrong ops when creating named pipe client. 2005-05-09 09:25:45 +00:00
Alexandre Julliard
90af05f060 Treat 0xffff the same as 0 for the handle generation field to avoid
sign extension problems.
2005-05-07 15:03:00 +00:00
Robert Lunnon
43e4139db2 Include <sys/filio.h> on platforms that support it. 2005-05-07 12:14:18 +00:00
Robert Shearman
b3957e3004 - Fix access rights for RegOpenKeyEx and RegCreateKeyEx calls.
- Add privilege checks for RegLoadKey, RegUnloadKey & RegSaveKey
  calls.
2005-05-05 16:57:55 +00:00
Mike McCormack
abe70f7648 Implemented GetLastInputInfo. 2005-04-28 12:04:14 +00:00
Alexandre Julliard
d70a253f40 Make sure a thread has a queue as soon as it creates a window. 2005-04-26 14:31:33 +00:00
Mike McCormack
f92fff66a2 Implemented NtSignalAndWaitForSingleObject. 2005-04-24 17:35:52 +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
3e2f2a5265 Allow nested hardware message processing by storing a unique id in
every message and using it to manage the current queue position.
Better filtering of hardware messages to avoid returning messages that
have no chance to match the filter.
2005-04-20 13:03:59 +00:00
Alexandre Julliard
27f0f8001e Load system.reg and userdef.reg at server init time. 2005-04-20 12:57:53 +00:00
Alexandre Julliard
a4334a6b95 Cleaned up handling of 64-bit file sizes. 2005-04-19 11:59:13 +00:00
Eric Pouech
0a9f98b9bd Removed the no longer user APC_ASYNC kind of APC. 2005-04-18 15:38:44 +00:00
Eric Pouech
5a2591d96d - moved named pipe creation to ntdll
- server now handles the named pipe flags as the NTDLL values (not the
  KERNEL32 ones)
- named pipes in server now use the async IO mechanism for
  connect/wait ops
2005-04-18 14:57:04 +00:00
Mike McCormack
d6fdac2676 Calculate the size of the next mailslot message correctly. 2005-04-11 16:11:32 +00:00
Raphael Junqueira
962a5e7742 Fix potential region leak. 2005-04-11 12:54:53 +00:00
Alexandre Julliard
bc75f2f6c9 Return the coordinates information needed to setup the DC parameters
in the get_visible_region request instead of requiring the client to
compute it again.
2005-03-31 15:36:57 +00:00
Mike McCormack
2ab6a775bd Implement mailslots. 2005-03-30 19:02:15 +00:00
Alexandre Julliard
eea706948a The update region passed in WM_NCPAINT and the clipping region passed
to GetDCEx have to be in screen coordinates.
2005-03-30 17:11:46 +00:00
Eric Pouech
7001d6ed34 Clean-up async IO internal functions. 2005-03-29 11:40:10 +00:00
James Hawkins
580ded65e7 - Implement NtLoadKey.
- Forward RegLoadKey to NtLoadKey.
2005-03-29 11:38:58 +00:00
Alexandre Julliard
4d32a475a8 Replace the link_window request by a set_parent request since that is
all link_window is used for at this point.
Get rid of the WIN_LinkWindow/UnlinkWindow functions.
2005-03-25 10:38:56 +00:00
Alexandre Julliard
cb7aa8753c Added support for xbuttons. 2005-03-24 19:16:54 +00:00
Alexandre Julliard
0bc8377bc2 Create a new server request for accepting hardware messages instead of
abusing reply_message.
Allow passing the determined window for a hardware message back to the
server to have it redispatch the message to the correct thread.
2005-03-23 10:33:17 +00:00
Alexandre Julliard
5054c79880 Try to always keep the server window Z-order in sync with the X11 one
using a heuristic based on mouse and expose events.
2005-03-21 12:37:00 +00:00