Alexandre Julliard
aaf477f292
server: Change the timeout handling to use NT-style 64-bit timeouts everywhere.
2007-04-17 20:08:59 +02:00
Alexandre Julliard
2669af73df
server: Move the server part of device unmounting to the ioctl processing.
2007-04-16 14:54:52 +02:00
Alexandre Julliard
8c46095484
server: Implement the FSCTL_PIPE_DISCONNECT ioctl on the server side.
2007-04-16 14:51:29 +02:00
Alexandre Julliard
635714397f
server: Add infrastructure for ioctl server request.
2007-04-16 14:45:03 +02:00
Alexandre Julliard
d85121f199
ntdll: Store the file access and options in the fd cache, and get rid of the dynamic flags.
...
This avoids server round-trips for all file I/O.
2007-04-10 22:32:46 +02:00
Alexandre Julliard
72bff2e445
server: Add support for restarting an async I/O when the client side couldn't finish it right away.
2007-04-10 17:07:27 +02:00
Alexandre Julliard
0cb29f47ca
server: Add support for associating a file descriptor to a message queue.
2007-04-04 18:02:01 +02:00
Alexandre Julliard
c16eb8efd9
server: Add support for queuing a user APC upon async I/O completion.
2007-03-27 16:42:27 +02:00
Alexandre Julliard
de1866d4fd
server: Implement the open_file method for named pipes.
...
Get rid of the open_named_pipe request, we can now use a normal open_file_object.
2007-03-22 16:47:46 +01:00
Alexandre Julliard
806bb49eda
server: Implement the open_file method for mailslots.
...
Get rid of the open_mailslot request, we can now use a normal open_file_object.
2007-03-22 16:36:54 +01:00
Alexandre Julliard
94655c8493
server: Implemented the open_file method for named pipe and mailslot devices.
2007-03-22 11:52:40 +01:00
Alexandre Julliard
2082a97d45
server: Use a standard async I/O event to signal directory changes.
2007-03-21 14:50:15 +01:00
Alexandre Julliard
fa4679fea6
server: Add support for storing an event to signal upon async I/O completion.
2007-03-21 14:27:52 +01:00
Alexandre Julliard
111610c45e
server: Add an async_data_t structure to store parameters for async I/O requests.
2007-03-20 20:21:12 +01:00
Alexandre Julliard
50975c81f0
server: Return the status from an async I/O APC call to the server.
2007-03-20 19:27:10 +01:00
Alexandre Julliard
eb3728d34e
server: Use the common pattern for async I/O parameters in named pipe requests.
2007-03-20 19:21:15 +01:00
Juan Lang
c2cb296277
ntdll: Implement NtAllocateLocallyUniqueId with server call.
2007-03-07 13:45:11 +01:00
Alexandre Julliard
1767b4558a
server: Expose areas revealed by changes to the window region.
2007-03-05 16:43:27 +01:00
Rob Shearman
d342d1413c
server: Add get_token_impersonation_level server call for retrieving the impersonation level from a token.
...
Add tests for GetTokenInformation(TokenImpersonationLevel).
2007-02-21 19:49:37 +01:00
Alexandre Julliard
89faee0194
server: Added support for the PM_QS_* flags in PeekMessage.
2007-02-21 15:21:05 +01:00
Vitaliy Margolen
b0e9d7e0b5
ntdll/server: Implement NtSetSecurityObject. With tests.
2007-02-15 14:19:24 +01:00
Vitaliy Margolen
bae75024a4
server/ntdll: Simplistic implementation of NtQueryObject(ObjectBasicInformation).
2007-01-25 12:48:35 +01:00
Alexandre Julliard
f3cb4f7d94
ntdll: Avoid inter-process APCs when called for the process itself.
2007-01-18 15:41:05 +01:00
Alexandre Julliard
02e2fa7798
ntdll: Implementation of inter-process NtMapViewOfSection and NtUnmapViewOfSection.
2007-01-18 15:17:51 +01:00
Alexandre Julliard
8025f79ce1
ntdll: Implementation of inter-process RtlCreateUserThread.
2007-01-18 15:02:55 +01:00
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
4cbe867a85
ntdll: Duplicate the mapping handle on the server side for NtMapViewOfSection.
2007-01-12 14:55:31 +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
Ulrich Czekalla
4bdf4345b8
winex11.drv: Store window and drawable rects in X11DRV_PDEVICE.
2006-12-12 13:45:10 +01:00
Alexandre Julliard
8930427b21
server: Return an fd type in the get_handle_fd request.
2006-11-20 14:14:04 +01:00
Alexandre Julliard
02fc886302
ntdll: Retrieve mailslot message info from the client side.
2006-11-03 17:53:04 +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
85f518ac6b
server: A window timer id should be an unsigned long.
2006-10-16 17:03:44 +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
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
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
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
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
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
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
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
3396a66ee7
server: Retrieve the groups for a token from the server.
2006-05-15 14:25:43 +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
Alexandre Julliard
1a4f6e579b
user: Launch explorer to manage the desktop window.
2006-03-07 11:42:35 +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
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
Alexandre Julliard
e27358ea5c
server: Remove no longer needed fields in the init_process_done request.
2006-02-21 20:08:19 +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
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
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
Alexandre Julliard
2a36dd239c
server: Remove no longer used create_flags from get_startup_info request.
2006-02-05 12:33:24 +01:00
Mike McCormack
08351071fd
server: Fix the file notification interface to use directory handles.
2006-01-27 12:13:56 +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
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
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
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
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
03b040c51d
server: Added object attributes to a few more requests.
2005-12-09 14:52:04 +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
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
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
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
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
73c72390f8
Fixed Get/SetThreadContext to work properly on suspended threads.
...
Added a test case.
2005-11-02 20:54:12 +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
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
Eric Pouech
b09582a890
Implemented kernel32 process affinity handling on top on ntdll.
2005-09-27 10:52:10 +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
Ivan Leo Puoti
f0db7ab06b
Added FSCTL_PIPE_LISTEN support.
2005-09-06 14:09:42 +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
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
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
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
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
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
8c518808b8
Put in place the basic infrastructure to allow supporting multiple
...
desktop windows.
2005-07-08 11:37:40 +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
Robert Shearman
4bba21643c
Add support for impersonating a token.
2005-06-20 13:18:38 +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
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
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
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
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
Mike McCormack
abe70f7648
Implemented GetLastInputInfo.
2005-04-28 12:04:14 +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
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
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
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
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
Alexandre Julliard
f75609087a
Make the server know about the visible area of a window, which is the
...
window rect minus the caption and borders when they are handled by the
window manager.
2005-03-17 19:10:41 +00:00
Alexandre Julliard
4e47afb36f
Compute the top clipping window directly on the server side.
2005-03-17 14:02:06 +00:00
Alexandre Julliard
99615021fb
Properly cope with get_message being called recursively while
...
processing a hardware message.
2005-03-10 11:52:25 +00:00
Ulrich Czekalla
5067909587
Create a thread-specific selection window to make sure we receive the
...
selection events in the correct thread.
2005-03-07 19:31:46 +00:00
Robert Shearman
b0f02b28b9
- Implement AdjustTokenPrivileges, DuplicateTokenEx and
...
GetTokenInformation (for the TokenPrivileges case).
- Return STATUS_NO_TOKEN for OpenThreadToken when there is no token
set for the thread.
2005-02-11 11:52:06 +00:00
Dmitry Timoshkov
6dba0a7718
Add support for winevent hooks.
2005-02-03 16:40:20 +00:00
Alexandre Julliard
ae661da49c
Properly compute the client area valid rects and pass them to the
...
server in set_window_pos to avoid invalidating areas that remain
valid.
2005-02-03 13:40:12 +00:00
Eric Pouech
4634447d6b
- got rid of include/async.h
...
- fixed some overlapped issues in socket handling
- moved kernel32.CancelIo implementation to ntdll
2005-01-14 19:54:38 +00:00
Robert Shearman
7572b125b5
Implement NtQueryTimer.
2004-12-13 21:10:58 +00:00
Alexandre Julliard
5defa49979
Moved update region handling to the server.
2004-12-07 17:31:53 +00:00
Eric Pouech
44158dd690
- moved event, semaphore, mutex implementation from kernel32 to ntdll
...
- added mutant implementation in ntdll, and use it for mutex
implementation in kernel32
- added access parameter on event, semaphore, timer creation in
wineserver (as ntdll interface requires it)
- added missing definitions in include/winternl.h
2004-12-02 18:05:37 +00:00
Alexandre Julliard
ff986a5a93
Converted the timer list to use standard list functions.
...
Allocate a timer id when the window is 0 instead of relying on the
client to do it.
Allow setting timers on windows belonging to other threads (found by
Mike McCormack).
2004-11-29 18:08:18 +00:00
Alexandre Julliard
6a27b48895
Fd type is no longer used, get rid of it.
2004-08-18 00:04:58 +00:00
Eric Pouech
1ffddb4d0c
- better support for non-blocking COMM and socket read/writes:
...
+ added necessary semantics to fd flags
+ no longer uses fd type (but fd flags) read/write semantic behavior
- fixed socket code to use the proper manifest constants
- fixes for kernel32.GetOverlappedResult without hEvent set
- in ntdll.Nt{Read|Write}File
+ always reset the event
+ added support for longlong offsets
+ better object disposal in error handling code paths
2004-08-17 23:37:55 +00:00
Alexandre Julliard
4616dcb9a7
Moved the WindowFromPoint functionality to the server so that we can
...
properly take into account the window region.
2004-07-20 22:17:38 +00:00
Alexandre Julliard
c4ec2108b1
Pass the environment for a child process through the server instead of
...
relying on the Unix environment.
2004-07-16 03:54:35 +00:00
Alexandre Julliard
618a7e5813
Added support for window regions in the server.
2004-06-29 03:53:25 +00:00
Alexandre Julliard
e8d86b7cd4
Moved visible region calculation to the server.
2004-06-23 20:44:58 +00:00
Eric Pouech
b0fd2ade62
- Added ProcessBasicInformation class to ntdll.NtQueryInformationProcess.
...
- Make use of it in kernel32.
2004-06-14 17:02:00 +00:00
Alexandre Julliard
8c29b5f0cc
Removed the no longer used SMB file I/O support, we can't do reliable
...
file I/O in user space anyway.
2004-05-14 22:24:48 +00:00
Alexandre Julliard
c07ce0571e
Moved loading of the home registry files to the server, there's no
...
real need to make these configurable.
2004-05-07 04:13:21 +00:00
Alexandre Julliard
72f87b8c06
Use pread/pwrite everywhere to avoid changing the file position while
...
the client is using it.
Get rid of the no longer used truncate_file request.
2004-05-01 02:50:06 +00:00
Alexandre Julliard
18c08d307a
Removed the get_file_info request.
2004-04-08 19:09:04 +00:00
Alexandre Julliard
db4517010b
Handle the set_file_pointer request on the client side.
2004-04-07 22:02:09 +00:00
Alexandre Julliard
49b2f6d964
Get rid of the removable media handling in the server.
2004-04-06 23:41:01 +00:00
Alexandre Julliard
a1fe8b4f24
Use futimes() instead of utime() to implement SetFileTime, so that it
...
can be done on the client side.
2004-03-27 01:48:52 +00:00
Alexandre Julliard
adc0610db7
Make the standard create_file request handle serial ports too, and
...
remove the create_serial request.
2004-03-18 04:08:48 +00:00
Alexandre Julliard
014099caf5
Changed the create_file server request to take NtCreateFile flags
...
instead of CreateFileW ones (based on a patch by Eric Pouech).
2004-03-12 01:56:49 +00:00
Alexandre Julliard
db692c8f39
Open a real file handle for drive devices, and get rid of the server
...
device hacks (based on a patch by Eric Pouech).
2004-03-04 23:00:18 +00:00
Uwe Bonnes
9ffce00940
Pass inherit handle flag properly for CreateNamedPipe.
2004-02-24 01:06:30 +00:00
Mike Hearn
43cb03be3a
Implemented RegFlushKey and NtFlushKey.
2004-01-03 00:38:30 +00:00
Alexandre Julliard
bd13ab8d78
Store a pointer to the client-side class structure in the server and
...
return it on create_window and destroy_class.
Only create a single instance of the desktop class for the whole
session.
Added some missing locking in the client-side class management.
2003-12-11 05:34:53 +00:00
Alexandre Julliard
bfce151ae5
Added window classes in the server, and support for inter-process
...
GetClassWord/Long (based on a patch by Mike McCormack).
Various fixes to the class instance handling.
2003-12-10 04:08:06 +00:00
Alexandre Julliard
ebf1243ec1
Added support for inter-process GetWindowWord.
...
Do better range checking on the window extra bytes.
2003-12-10 01:34:51 +00:00
Alexandre Julliard
97903d260b
Added support for inter-process GetWindowLong on the window extra
...
bytes.
2003-11-26 22:15:41 +00:00
Alexandre Julliard
e55d5937ac
Set or clear the BeingDebugged flag in the PEB when a debugger is
...
attached to or detached from a process.
Don't send exception events to the server unless a debugger is
present.
2003-10-14 01:30:42 +00:00
Alexandre Julliard
af192f83b6
Store a "removable" flag instead of the full drive type in the server
...
file object; this way we don't need to use GetDriveTypeW in the loader
code.
Make sure we always have a valid builtin_load_info pointer.
2003-10-08 00:25:32 +00:00
Alexandre Julliard
8d174d3f47
Store the global shell, progman and taskman windows in the server
...
(based on a patch by Martin Fuchs).
2003-10-07 03:40:23 +00:00
Alexandre Julliard
841f898663
Converted process creation to Unicode.
2003-10-04 04:09:41 +00:00
Alexandre Julliard
c30cefb2d5
Store module names in Unicode in the server.
2003-09-30 01:04:19 +00:00
Eric Pouech
9fd54b2838
- Implemented a few information classes in NtQuerySystemInformation.
...
- Added handle information to (wineserver) process snapshot.
2003-09-16 01:07:21 +00:00
Alexandre Julliard
e0b5270b4a
Fixed include statements to match server_protocol.h (spotted by Eric
...
Pouech).
2003-09-08 19:04:01 +00:00
Mike McCormack
5ac945c021
Implement registry key unloading.
2003-08-19 03:08:17 +00:00
Eric Pouech
449d10fd79
Fixed regression in process creation (std handle inheritance).
2003-08-19 01:05:17 +00:00
Alexandre Julliard
039e13118e
Implemented inter-thread SendMessageCallback.
2003-07-26 20:36:43 +00:00
Mike McCormack
36cd6f5dbb
Added a security token object in wineserver.
2003-07-24 00:07:00 +00:00
Alexandre Julliard
ca3ac8f155
Run WH_KEYBOARD_LL and WH_MOUSE_LL hooks in the context of the thread
...
that set the hook.
2003-07-11 21:55:58 +00:00
Alexandre Julliard
09029b2878
Implemented the SMTO_ABORTIFHUNG flag of SendMessageTimeout.
2003-07-11 04:09:42 +00:00
Alexandre Julliard
4f196ead13
Implemented the ThreadBasicInformation case for
...
NtQueryInformationThread.
2003-07-09 02:57:57 +00:00
Eric Pouech
f6a70969e1
- start moving a few file related functions from files/file.c to
...
dlls/kernel subdir (also splitting 16bit APIs in a separate file)
- implemented ntdll.Nt{Lock|Unlock}File, and made use of those for the
kernel32 equivalent
- implemented a few information classes in NtQueryInformationFile and
NtSetInformationFile (still lots of missing classes)
- enhanced the get_file_info server request in order to implement
correctly NtQueryInformationFile (change time & file alloc size)
- rewrote registry loading to comply with latest changes
2003-06-24 02:32:01 +00:00
Ulrich Czekalla
b2df5f9f19
- use global atoms for the format ids
...
- add timeout when calling XCheckTypedWindowEvent
- fix broken IsClipboardFormatAvailable; it tried to do a trick with
EnumClipboardFormats by making incorrect assumptions
- in X11DRV_IsClipboardFormatAvailable do a quick exit if no one owns
the selection
- add 1 second *minimum* time lapse between XSelectionOwner calls
- sync clipboard ownership between different wine processes
- prevents apps from getting into wierd state where they thought they
didn't own the selection but they did and as a result queried
themselves for available selection data
2003-06-23 23:02:02 +00:00
Eric Pouech
a86a289420
In console input record queue, replace semaphore with a manual reset
...
event, so that we get correct behavior in synchronization handling.
2003-06-23 03:37:14 +00:00
Eric Pouech
412d37f6e6
- adapted kernel32 so that it no longer (directly) manages console
...
handles as wineserver handles
- console input handle object is no longer waitable (input record
synchronisation is now implemented as a simple semaphore), and removed
FD_TYPE_CONSOLE from fd types in wineserver
- console handles now always have their two lower bit set so one can
distinguish a console handle from a kernel object handle
- implemented some undocumented kernel32 console related APIs
(CloseConsoleHandle, GetConsoleInputWaitHandle, OpenConsoleW,
VerifyConsoleIoHandle, DuplicateConsoleHandle)
- allowed a few kernel32 APIs to take console pseudo-handles
(FlushFileBuffer, GetFileType, WaitFor*Object*)
- simplified the console inheritance at process creation
- in console tests, no longer create a console if one already exists
2003-06-21 02:07:10 +00:00
Alexandre Julliard
693bbd79b6
Make it possible to retrieve an inheritable handle in open_named_pipe
...
(spotted by Uwe Bonnes).
2003-06-14 01:31:56 +00:00
Eric Pouech
c00a4473bd
Implement anonymous pipes on top of named pipes.
2003-05-20 04:32:53 +00:00
Eric Pouech
4c591d4ef3
Implemented timer related functions in ntdll and make the kernel32
...
functions use them.
2003-05-20 04:00:42 +00:00
Mike McCormack
ef8b94622a
- rewrite of the named pipe code
...
- allow NtFileFlushBuffers to wait
- allow DisconnectNamedPipe to invalidate client cached fd
- fix the pipe test now that one extra test passes
2003-05-15 04:22:45 +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
462172a3d6
Added abs_time_t structure to the server protocol, and added a dump
...
routine for it that displays the relative timeout to make timeout
values easier to interpret.
2003-04-02 22:48:59 +00:00
Alexandre Julliard
3e588e3a57
Implemented file change notifications, based on a patch by Mike
...
McCormack.
2003-03-26 23:41:43 +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
b1095da50c
Fixed bug that could cause SendMessage to return too early in certain
...
cases.
2003-03-19 00:12:17 +00:00
Alexandre Julliard
ce61349334
Implemented file locking functions (partly based on my old Corel
...
patch). Added a few regression tests.
2003-03-18 05:04:33 +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
cf27a7fa3b
Changed fd operations to take a struct fd instead of a struct object.
...
Removed get_file_info function from object operations.
Added get_device_id request to avoid abusing get_file_info.
2003-02-14 20:27:09 +00:00
Eric Pouech
fa8b85aa5c
Set the edition mode as a specific attribute, not an extension of the
...
console mode.
2003-01-09 06:01:32 +00:00
Eric Pouech
2359b57574
- no longer depend on toolhelp definitions for generating snapshots
...
- added get_dll_info request
2003-01-09 00:01:28 +00:00
Alexandre Julliard
8ba666f3a7
Store the keyboard state in the thread input structure on the server
...
side.
2003-01-08 19:56:31 +00:00
Alexandre Julliard
242e395bbc
Store the hardware messages in the thread input structure, not in the
...
thread queue. Get rid of the cooked messages queue.
2003-01-08 00:27:58 +00:00
Mike McCormack
11f4b44451
Implemented registry change notifications.
2002-11-25 02:47:32 +00:00
Ryan Cumming
24f4eced42
Partially implement GetThreadTimes.
2002-11-25 01:33:38 +00:00
Alexandre Julliard
b31af31cbf
Removed the WINE_NO_STRICT support.
2002-11-23 01:09:57 +00:00
Alexandre Julliard
14e68ba7fe
Added support for system-wide hooks.
2002-11-20 19:54:32 +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
b1df392f02
Fixed the WINE_NO_STRICT #ifdefs to do the right thing if STRICT is
...
defined (spotted by Michael Stefaniuc).
2002-10-21 23:43:04 +00:00
Alexandre Julliard
23bb3715f7
Added support for building certain dlls with -DSTRICT.
...
Added -DWINE_NO_STRICT flag to dlls that don't support STRICT yet.
2002-10-18 23:46:28 +00:00
Alexandre Julliard
11e3523949
Rewrote caret implementation to store the information in the server.
2002-10-17 01:24:33 +00:00
Alexandre Julliard
a9e8f59c95
Moved mouse capture handling into the server.
2002-10-12 01:24:37 +00:00
Alexandre Julliard
5030bda77c
Reimplemented Get/SetActiveWindow, Get/SetFocus and
...
Get/SetForegroundWindow by storing the information in the
server. Implemented correct inter-process window activation.
2002-10-11 23:41:06 +00:00
Alexandre Julliard
ab5063b217
Added server-side infrastructure for the thread input structure.
...
Reimplemented AttachThreadInput() and added GetGUIThreadInfo().
2002-10-11 18:50:15 +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
7dafa61700
Fixed a number of bugs in the handling of window parent and owner and
...
added a regression test (based on the work of Bill Medland).
2002-09-25 00:21:56 +00:00
Alexandre Julliard
341b7dceb4
Implemented the ntdll virtual memory functions, and made the kernel
...
functions use them.
2002-09-17 18:54:42 +00:00
Eric Pouech
93bfa0d6b1
Implementation for console control events (includes process groups
...
support).
2002-06-02 21:22:22 +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
9d80215254
A few optimizations in the process startup requests now that Winelib
...
apps are started differently from Unix ones.
2002-05-24 21:20:27 +00:00
Martin Wilck
9ca4285a9f
Fixed ReadFile() semantics when reading asynchronously on sockets.
...
Provide more accurate status codes than STATUS_UNSUCCESSFUL.
2002-04-25 22:58:59 +00:00
Martin Wilck
bff7e69981
Implemented server framework for asynchronous IO on sockets.
2002-04-25 21:31:11 +00:00
Martin Wilck
d15bf1c0fe
Fixed handling of deferred connections in WSAAccept().
2002-04-23 22:03:42 +00:00
Martin Wilck
2b47fb3cee
- separate cleanly between async scheduling and file IO related issues.
...
- make the API compatible with other types of async requests (e.g. for
sockets).
- remove exports of async IO related functions for DLL separation.
2002-04-05 22:53:57 +00:00
Chris Morgan
417296c4af
Implement OpenThread() winapi call.
...
Implement a few pthreads functions.
2002-04-02 00:49:05 +00:00
Alexandre Julliard
6543a6522a
Transfer the full process startup info as well as the command-line
...
through the server.
2002-03-29 18:28:56 +00:00
Alexandre Julliard
81f2a7307b
Send message for WSAAsyncSelect sockets directly from the server,
...
instead of using the service thread. Finished separation of ws2_32.
2002-03-23 20:43:52 +00:00
Alexandre Julliard
aeb566052f
Correctly fill parent pid, module size and module name in process and
...
module snapshots. Based on patches by Eric Pouech and Andreas Mohr.
2002-03-22 00:21:23 +00:00
Mike McCormack
fc93261150
Begin to make wine an SMB client.
2002-03-12 19:24:04 +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
3c4538c8db
Reimplemented DebugBreakProcess.
2002-02-27 01:55:02 +00:00
Eric Pouech
fbccb38e18
New XP debugging APIs: implemented DebugActiveProcessStop,
...
DebugSetProcessKillOnExit, DebugBreakProcess.
2002-02-27 01:28:30 +00:00
Martin Wilck
aa47705809
Added support for socket flags.
2002-01-09 21:16:24 +00:00
Martin Wilck
88cd32b2d1
More general approach to file descriptor types and flags.
2002-01-09 20:30:51 +00:00
Alexandre Julliard
8ae5761dd0
Fixed string type in named pipe requests.
2001-12-31 22:26:51 +00:00
Mike McCormack
6f011c0847
- move async activation into the server
...
- implement async queues
2001-12-20 00:07:05 +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
Eric Pouech
0b83d4cbc6
New console code based on Win32 windows.
2001-11-23 23:04:58 +00:00
Alexandre Julliard
805bdc53e8
Store the window caption text in the server.
...
Maintain a paint count separately for each window.
2001-11-13 22:23:48 +00:00
Mike McCormack
309ed4e1f1
Make ConnectNamedPipe work in overlapped mode.
2001-11-07 20:14:45 +00:00
Ove Kaaven
708a846a88
Save a disk file's drive type in the server object.
2001-10-24 00:23:25 +00:00
Alexandre Julliard
ddc3317b7a
Store in the server all the window information accessible with
...
Get/SetWindowLong.
2001-10-22 19:08:33 +00:00
Alexandre Julliard
0d50965a13
Added requests to store window rectangles in the server.
2001-10-16 21:55:37 +00:00
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
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