Alexandre Julliard
cf5188b654
Attempt at fixing POLLHUP handling for Linux 2.2.x.
2002-06-21 19:06:28 +00:00
Alexandre Julliard
4144b5b8fc
Create the server directory and socket file in /tmp.
...
Use fcntl file locking to ensure exclusion on the server socket and to
better recover from crashes.
Flush the registry before closing the socket to avoid timeouts on the
client side.
Moved get_config_dir functionality to libwine.
2002-06-20 23:21:27 +00:00
Alexandre Julliard
88e4261903
Store dirty flag in each registry key and use it to save only modified
...
branches.
2002-06-20 23:18:56 +00:00
Eric Pouech
93bfa0d6b1
Implementation for console control events (includes process groups
...
support).
2002-06-02 21:22:22 +00:00
Vincent Béron
9a62491660
Removed trailing whitespace.
2002-05-31 23:06:46 +00:00
Alexandre Julliard
65adc24f14
Fixed next_user_handle to also work on deleted handles.
2002-05-31 18:25:53 +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
ca96de344b
Fixed process startup synchronization broken by previous change.
2002-05-25 21:15:03 +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
Eric Pouech
47205b823e
Fixed missing wineconsole notification of title modification.
2002-05-11 22:53:56 +00:00
Alexandre Julliard
ce830a9c18
Added mkinstalldirs to create directories more portably.
2002-05-09 04:31:39 +00:00
Alexandre Julliard
9a68b7bef0
Link the tools and the server against libwine so we can use the
...
portability functions in there.
2002-04-27 21:19:22 +00:00
Martin Wilck
75242f9bef
Fixes to FD_CLOSE handling.
2002-04-27 01:06:09 +00:00
Alexandre Julliard
5769d1de00
Better support for configure detection of missing types, added check
...
for ssize_t.
Removed a couple of no longer used portability functions.
Various portability fixes in port.h.
2002-04-26 19:05:15 +00:00
Martin Wilck
ff1f320ac8
Fixed some bugs in my recently submitted patch series.
2002-04-26 18:31:19 +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
54ba272090
Add more flexibility to the queue_async server call by moving most
...
functionality into the object's queue_async method.
2002-04-24 21:29:54 +00:00
Martin Wilck
d15bf1c0fe
Fixed handling of deferred connections in WSAAccept().
2002-04-23 22:03:42 +00:00
Alexandre Julliard
ca18f1580b
Clear mapping->shared_file on error.
2002-04-20 21:07:24 +00:00
Martin Wilck
18c1514c74
STATUS_CANCELLED is correct for cancelled requests (corresponds to
...
ERROR_OPERATION_ABORTED).
2002-04-14 19:33:52 +00:00
Uwe Bonnes
4f7d893ccb
get_window_children: only decrement available size if element was
...
written.
2002-04-11 17:32:10 +00:00
Alexandre Julliard
ad16fc9e3b
Avoid crash when trying to attach to a terminating process.
2002-04-06 00:03:33 +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
Alexandre Julliard
f5e0f0c60a
Added timer on server exit to wait a bit for new clients.
...
Don't remove the socket until the registry is closed to avoid a race.
2002-04-03 22:51:18 +00:00
François Gouget
f6662576e3
Don't suspend a terminated thread.
2002-04-02 02:53:45 +00:00
Alexandre Julliard
4705b8a60e
Avoid crash when trying to attach to a terminating process.
2002-04-02 02:50:24 +00:00
Chris Morgan
417296c4af
Implement OpenThread() winapi call.
...
Implement a few pthreads functions.
2002-04-02 00:49:05 +00:00
Francois Gouget
0763abf115
Fix warnings for Linux, FreeBSD and Solaris.
2002-04-01 21:08:16 +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
15979fda75
Fixed handling of timer callback routines when the thread owning the
...
callback terminates.
2002-03-23 18:50:04 +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
Mike McCormack
32521abd4b
Finish any pending WaitCommEvents if the event mask is set to 0.
2002-03-12 19:19:57 +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
Rein Klazes
7e105b49c4
Allow integer atoms in set_property and remove_property. Needed by
...
FindText common dialog.
2002-01-31 23:34:18 +00:00
Alexandre Julliard
86e5efb6b3
Work around ftruncate implementations that don't support extending
...
files.
2002-01-29 02:51:12 +00:00
Eric Pouech
0faceb05fc
Implemented interprocess DDE message posting.
2002-01-18 19:22:55 +00:00
Alexandre Julliard
8ba769f45f
Check unix_pid again after attach.
2002-01-12 21:16:33 +00:00
Marcus Meissner
93c3faef94
Add refcounting to the thread member of the pipe user.
2002-01-12 21:16:13 +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
Martin Wilck
b1c45b9424
Fixed a bug that caused APCs to be "forgotten".
2002-01-09 19:09:57 +00:00
Martin Wilck
718b1b711b
Add server side support for async IO on files.
...
Use pread/pwrite to read/write from the offset specified in the
overlapped structure.
2002-01-07 21:02:15 +00:00
Eric Pouech
a90875686f
Fixed color definition (bg and fg were swapped).
...
Fixed some initialisation issues.
Fixed exit condition when nothing was allocated.
2002-01-02 21:45:47 +00:00
Alexandre Julliard
8ae5761dd0
Fixed string type in named pipe requests.
2001-12-31 22:26:51 +00:00
Alexandre Julliard
839dfda7a9
Save the registry before exiting on a SIGTERM.
2001-12-26 23:11:49 +00:00
Mike McCormack
89bb3abf7d
Handle ReadIntervalTimeout=MAXDWORD special case a bit better.
2001-12-21 19:17:33 +00:00
Mike McCormack
6f011c0847
- move async activation into the server
...
- implement async queues
2001-12-20 00:07:05 +00:00
Eric Pouech
3940d8a294
Let the console renderer be defined as a thread.
2001-12-04 20:17:43 +00:00
Alexandre Julliard
9caa71eef4
Redesign of the server communication protocol to allow arbitrary sized
...
data to be exchanged.
Split request and reply structures to make backwards compatibility
easier.
Moved many console functions to dlls/kernel, added code page support,
changed a few requests to behave properly with the new protocol.
2001-11-30 18:46:42 +00:00
Alexandre Julliard
e806c97610
Skip queue cleanups if queue has been destroyed already.
2001-11-24 03:44:47 +00:00
Eric Pouech
0b83d4cbc6
New console code based on Win32 windows.
2001-11-23 23:04:58 +00:00
Francois Gouget
5c84fff413
Only include 'sys/user.h' for Linux. Fixes a compilation error on
...
FreeBSD 5.0.
2001-11-20 18:52:42 +00:00
James Juran
49c779a862
Prevent warnings about labels at end of switch statements when
...
compiling with gcc-3.x.
2001-11-19 02:24:14 +00:00
Francois Gouget
6e04f591f6
Fix the Solaris and FreeBSD compilation errors introduced by the
...
recent winsock update.
2001-11-19 02:23:22 +00:00
Alexandre Julliard
47f9821817
Moved WIN_FindWinToRepaint functionality to the server.
2001-11-14 21:28:36 +00:00
Francois Gouget
272023190e
Make winsock.h and winsock2.h independent from the Unix headers.
...
Make them compatible with both the Unix C headers and the MSVCRT
headers.
Ensure compatibility with the Unix headers via the USE_WS_PREFIX
macro.
Add WINE_NOWINSOCK: prevents winsock.h from being included from
windows.h when defined.
Add ws2tcpip.h, move definitions to the right header.
2001-11-14 21:26:23 +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
Alexandre Julliard
c4be541dfa
Avoid ftruncate to work around broken UMSDOS file system.
2001-11-07 20:25:12 +00:00
Mike McCormack
309ed4e1f1
Make ConnectNamedPipe work in overlapped mode.
2001-11-07 20:14:45 +00:00
Bill Medland
9e5af61ed5
Prevent danger of accessing freed memory (theoretical but unlikely
...
bug).
2001-11-06 22:25:11 +00:00
François Gouget
1425941e29
Fix the #include order for config.h.
...
Add #include "config.h" directives where needed.
2001-11-06 20:57:11 +00:00
Alexandre Julliard
4a9c83998c
Allow owner to be the desktop window.
2001-11-06 17:54:15 +00:00
Alexandre Julliard
ac2e4f1e3d
Don't keep main exe and dlls handles open when the file is on
...
removable media.
2001-10-25 19:52:12 +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
516e40e154
Make sure that GetMessagePos and GetMessageTime return sane values
...
for all messages.
2001-10-17 17:48:49 +00:00
Alexandre Julliard
0d50965a13
Added requests to store window rectangles in the server.
2001-10-16 21:55:37 +00:00
Francois Gouget
386cf6e342
When including 'wine/port.h', include it first.
...
Remove redundant 'config.h' includes.
2001-10-14 16:25:47 +00:00
Francois Gouget
e5ddd26dd7
When including config.h, include it first.
2001-10-14 16:18:52 +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
Eric Pouech
c73316db5b
- fixed copy&paste bug (GENERIC_WRITE instead of GENERIC_READ)
...
- when getting the type of a handle, it has to be done even if no fd
is attached to it (console for example)
2001-10-08 20:57:12 +00:00
Mike McCormack
568c67e173
Make serial fd blocking mode depend on FILE_FLAG_OVERLAPPED.
2001-10-08 20:40:57 +00:00
Alexandre Julliard
646d621fec
Added get_file_info support to named pipes and sockets to avoid
...
breaking the get_handle_fd request.
2001-10-05 19:45:45 +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
5af055d8df
Avoid list corruption when linking window with HWND_BOTTOM (thanks to
...
Gerard Patel).
2001-09-24 01:13:48 +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
bc878ef4d9
Convert user handles received from client to full handles.
2001-09-12 17:09:24 +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
Francois Gouget
126e6b8175
Rename the regular WS_FD_XXX macros to FD_XXX.
...
Rename the Wine specific WS_FD_XXX macros to FD_WINE_XXX.
2001-08-24 19:14:56 +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
Daniel Walker
c86517fcb6
- Fix for nonblocking sockets using WSAEventSelect() (patch from Ove
...
Kaaven).
- Changed WSAEnumNetworkEvents() so it only returns events that the
application is looking for.
- Changed sock_poll_event() to interpret a POLLIN event with zero
bytes waiting to be read as a POLLHUP.
2001-08-23 23:25:33 +00:00
Mike McCormack
05b6618ff3
Unconditionally set O_NONBLOCK when opening.
2001-08-21 17:01:48 +00:00
Alexandre Julliard
b8dd37d239
Don't create the WINEPREFIX directory if it doesn't exist.
2001-08-09 21:22:33 +00:00
Andreas Mohr
d66130ac9d
Don't crash if send_thread_wakeup() fails.
2001-08-07 19:31:43 +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
Bernhard Rosenkraenzer
5dda1f7e2c
Set executable permissions when creating .exe/.com files.
2001-07-23 18:09:41 +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
Ove Kaaven
705e7d708b
Added STATUS_* constant for named pipes. Return STATUS_PIPE_NOT_AVAILABLE
...
when opening a named pipe if the pipe exists but no instances of it are
currently waiting for a connection.
2001-07-17 00:38:00 +00:00
Alexandre Julliard
5f258c68f3
Backed out the suspend_process_for_ptrace change.
...
Fixed a couple of races in ptrace code.
2001-07-14 00:50:30 +00:00
Alexandre Julliard
10109e6083
Removed unused functions suspend/remove_all_threads.
2001-07-12 22:35:20 +00:00
Alexandre Julliard
7614180e2d
Small fixes to the debugger support.
2001-07-11 17:30:59 +00:00
Alexandre Julliard
e630aa0b68
Merge WM_MOUSEMOVE messages.
2001-07-11 17:29:01 +00:00
Mike McCormack
de7c3003e2
Start implementing named pipes.
2001-07-10 19:16:49 +00:00
Alexandre Julliard
9f55ae6f62
- Remove cooked hardware messages when they are dropped (reported by
...
Gerard Patel).
- Convert all posted 32-bit messages to Unicode before storing them in
the queue.
- Faster implementation of MSG_IsPointerMessage.
- Moved a couple of functions from queue.c to message.c.
2001-06-28 04:37:22 +00:00
Mike McCormack
585e976f1a
Remove truncate debug message printed on successful truncates.
2001-06-22 23:20:36 +00:00
Alexandre Julliard
4b0343dc5f
Moved queue paint count to the server. Removed a few no longer used
...
routines.
2001-06-20 22:55:31 +00:00
Alexandre Julliard
838d65aebe
Moved hardware message queue handling to the server.
2001-06-19 19:16:41 +00:00
Alexandre Julliard
4b29d669fc
Ignore EAGAIN errors in read_request.
2001-06-19 18:23:13 +00:00
Bill Medland
e81bf3f3ce
SetFilePointer correction; return ERROR_NEGATIVE_SEEK (broken by the
...
64 bit file access enhancement).
2001-06-19 03:30:53 +00:00
Marcus Meissner
6bb990f7fd
Drop any file64 functions, try to use system supplied 64-bit mode by
...
using proper defines.
2001-05-29 20:55:21 +00:00
Gerard Patel
63b1d175b3
Take message filters into account for WM_PAINT too.
2001-05-21 18:33:56 +00:00
Eric Pouech
476c2b4cc3
Fixed reply_message when there is no received message.
2001-05-19 17:38:21 +00:00
Alexandre Julliard
9be457dd3b
Fixed typo in message filter check.
2001-05-18 23:22:12 +00:00
Alexandre Julliard
51ab43bd13
Moved the major part of message queue and window timer handling into
...
the server.
Implemented MsgWaitForMultipleObjectsEx.
2001-05-18 22:51:56 +00:00
Marcus Meissner
3f1ed52d8b
Implemented 64bit file size handling.
...
Removed several unneeded sys/stat.h includes.
2001-05-14 20:09:37 +00:00
Bang Jun-Young
18bf392b41
Added support for NetBSD.
2001-05-09 19:44:47 +00:00
Ove Kaaven
ada7383852
Preserve the TF (Trap Flag) when continuing from a ptraced suspend.
2001-04-27 18:39:47 +00:00
Alexandre Julliard
84fdfd087a
Repaired shared PE data sections.
2001-04-13 22:38:39 +00:00
Alexandre Julliard
21044c6319
Fixed handling of \\Registry prefix.
2001-04-10 21:18:17 +00:00
Alexandre Julliard
09cc91d1a8
Make sure the process socket is non-blocking.
...
Don't fail if nothing ready on recvmsg for a file descriptor.
2001-04-04 00:11:13 +00:00
Michael McCormack
1c32a46d5a
Use poll() on the client-side during server waits to implement
...
overlapped I/O.
2001-03-22 20:09:34 +00:00
Alexandre Julliard
a5a872efca
Use the new send_fd mechanism for the set_console_fd server request.
2001-03-22 19:35:27 +00:00
Jeff Garzik
3ea0c073f8
Warning fixes.
2001-03-21 20:31:26 +00:00
Jeff Garzik
f46eb1db43
Added some inclusions of string.h where necessary.
2001-03-21 20:30:46 +00:00
Mike McCormack
147ddfefcb
Removed broken support for EV_TXEMPTY because it causes busy loops.
2001-03-14 17:25:52 +00:00
Mike McCormack
7526540e03
Add missing release object so server exits cleanly.
2001-03-14 17:25:26 +00:00
Alexandre Julliard
e5dedb1906
Added support for nested server waits (to allow waiting in signal
...
handlers).
2001-03-08 01:16:41 +00:00
Alexandre Julliard
566a52ad8c
Changed isolated for loops to while loops (based on a patch by Andreas
...
Mohr).
2001-03-05 19:34:17 +00:00
Alexandre Julliard
8859d77279
Create the server pipes on the client side and transfer them to the
...
server on thread creation.
Use a single per-process socket instead of one per thread for
transferring file handles between client and server.
2001-03-01 22:13:49 +00:00
Alexandre Julliard
f52424055f
New mechanism to transfer file descriptors from client to server.
2001-02-28 21:45:23 +00:00
Alexandre Julliard
67a749999a
New set of macros for server calls; makes requests without variable
...
part somewhat faster.
2001-02-27 02:09:16 +00:00
Alexandre Julliard
d90e964cee
Added separate server pipe to wait on blocking server calls.
...
Send the complete request/reply through the request fifo instead of
just a dummy byte.
Convert error status to text in server reply tracing.
2001-02-21 04:21:50 +00:00
Alexandre Julliard
5f195f8c01
Small server protocol cleanups.
2001-02-20 23:45:07 +00:00
Alexandre Julliard
a4bc5a2138
Pass the stdin/stdout handles on startup to use as console (based on a
...
patch by Eric Pouech).
2001-02-16 19:08:19 +00:00
Alexandre Julliard
e939eae00b
Made exception_event_request non-blocking, and added
...
get_exception_status to retrieve the exception result returned by the
debugger.
2001-01-26 20:45:41 +00:00
Alexandre Julliard
e9936d96e1
Changed wait_process and wait_debug_event requests to never block;
...
waiting is always done through WaitForSingleObject().
2001-01-26 00:22:26 +00:00
Andreas Mohr
22c80a2e9a
Workaround for SuSE 7 2.2.16 kernel bug.
2001-01-12 23:02:39 +00:00
Josh DuBois
558b66077f
Added a simple usage() function.
2001-01-11 22:28:35 +00:00
Mike McCormack
21ea8a9107
Calculate the timeout time once when the async is created.
2001-01-07 21:46:17 +00:00
Alexandre Julliard
2362380b64
Added separate queue for "system" APCs that get called even when the
...
thread is not in an alertable state.
Specify the select_request timeout as absolute value so that we can
restart the request when interrupted.
2001-01-06 01:48:51 +00:00
Alexandre Julliard
ad29b90d08
Send the exe file handle in init_process_done request.
2001-01-05 22:24:15 +00:00
Alexandre Julliard
8081e5a1e5
Added handle_t type to server interface so that we can make handles
...
pointers later on.
Always use 0 to signal invalid handle in server requests.
2001-01-05 04:08:07 +00:00
Alexandre Julliard
7f74824d9f
Fixed error recovery during thread creation.
2000-12-26 00:30:30 +00:00
Alexandre Julliard
63411dbde5
Avoid dup'ing file descriptors when not necessary.
...
Do not send fd to the client if ops->get_fd() fails.
2000-12-22 21:12:36 +00:00
Alexandre Julliard
d549f6909e
Use a separate FIFO pair for server requests that don't need to pass a
...
file descriptor.
Associate file descriptors with handles on the server side so that we
don't need to pass the fd every time the client wants to use it.
2000-12-22 02:04:15 +00:00
Alexandre Julliard
1ab243bac1
Merged the get_read_fd and get_write_fd requests.
2000-12-19 02:12:45 +00:00
François Gouget
ecae926945
Needs to include windef.h.
2000-12-15 21:30:35 +00:00
Alexandre Julliard
0b6a79c961
Converted enum_key_value request to the new request mechanism.
2000-12-15 20:57:00 +00:00
Martin Pilka
0c86432ea5
Changed the condition so it also works in case when sscanf returns EOF.
2000-12-12 00:34:44 +00:00
Alexandre Julliard
e2222fd8ff
Use libwine and libwine_unicode directly from their build directory
...
instead of using symlinks.
2000-12-06 00:05:14 +00:00