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