Commit Graph

287 Commits

Author SHA1 Message Date
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
Andreas Mohr
1c99af4a7a Check the attributes of the *current* section, not only the attributes
of the *first* section...
2000-12-03 04:02:09 +00:00
Patrik Stridvall
7a4e599780 Fixed some issues found by winapi_check. 2000-12-01 23:53:46 +00:00
Dimitrie O. Paun
2af03e45b5 Do not include sys/ptrace.h and sys/user.h unconditionally.
Other portability fixes.
2000-11-29 20:04:09 +00:00
Dimitrie O. Paun
0b7a7bbc06 Include config.h in files that test for constants defined in it. 2000-11-25 01:31:17 +00:00
Alexandre Julliard
914406f854 Moved LDT handling to libwine.so. Changed the interface to use the
exported LDT_ENTRY structure.
2000-11-14 01:54:49 +00:00
Mike McCormack
1eac1911c7 - created server object for handling async i/o
- implemented WaitCommEvent with the EV_RXCHAR flag
- implemented GetOverlappedResult
2000-11-13 19:27:21 +00:00
Joerg Mayer
abe635cfd7 Get rid of some warnings about unused variables, signed/unsigned
comparisons and incomplete initializations.
2000-11-11 00:38:37 +00:00
Alexandre Julliard
908464d448 Authors: Andreas Mohr <amohr@codeweavers.com>, Dimitrie O. Paun <dimi@cs.toronto.edu>, Patrik Stridvall <ps@leissner.se>
Various warning fixes.
2000-11-01 03:11:12 +00:00
Joerg Mayer
650ba4df23 Move inline and static to the beginning of declarations. 2000-10-29 18:06:04 +00:00
Federico Schwindt
a5b696b6b4 Fixes for OpenBSD. 2000-10-28 00:32:08 +00:00
Kristoffer Gleditsch
d2e2bb240a Added LDFLAGS to linking of wine-related binaries. 2000-10-25 21:36:54 +00:00
Patrik Stridvall
a9f6a9daec Explicitly initialize structures. 2000-10-24 02:22:16 +00:00
Joerg Mayer
959d73e8dd Reduce the number of warnings about missing initializers. 2000-10-22 23:56:32 +00:00
Gerald Pfeifer
1f0123649f Add appropriate casts to caddr_t for the third parameter of ptrace(). 2000-10-17 00:25:59 +00:00
Alexandre Julliard
57f05e1913 Converted a few more server requests to the new mechanism. 2000-10-15 00:40:25 +00:00
Stephane Lussier
21b099f082 After accept is called on the socket, the listening socket needs to be
reselected.
2000-10-13 17:04:52 +00:00
Alexandre Julliard
454355ece1 Convert NtQueryKey and NtEnumerateKey to the new request mechanism.
Fixed a few bugs.
2000-10-02 03:46:58 +00:00
Alexandre Julliard
bcf393a5e5 Converted some of the registry server requests to the new request
mechanism.
2000-10-01 01:44:50 +00:00
Stephane Lussier
0d5f1ab2d9 Socket returned by accept function of Microsoft API should keep the
properties of the listening socket. This is also true for non-blocking
property.
2000-09-27 22:27:33 +00:00
Andreas Mohr
c941effc24 Make GetTickCount not use the whole Unix epoch (since 1970) any more,
since that crashed several games or caused problems with them as they
aren't used to a high Windows uptime of more than 24.9 days.
2000-09-22 22:37:56 +00:00
Mike McCormack
654fcc721b Implemented SetCommMask, SetCommTimeouts, GetCommMask, GetCommTimeouts. 2000-09-16 20:55:12 +00:00
Mike McCormack
44b5bf5998 Added serial port object to the server. 2000-09-07 18:39:51 +00:00
Ove Kaaven
7a0f96c908 Adapted Winsock to Linux 2.4 TCP socket poll() behaviour
(thanks to Berend Ozceri for finding the problem).
2000-09-06 19:40:23 +00:00
Alexandre Julliard
92643003cf Converted a lot of server requests to the new exception handling
mechanism.
2000-08-31 01:59:51 +00:00
Alexandre Julliard
9c2370bd75 Added exception handling wrapper to a number of server requests.
Changed a few requests to use the new vararg mechanism.
2000-08-30 00:00:48 +00:00
Alexandre Julliard
8611353053 Added the data structures and macros that will be needed to support
reentrant server requests.
2000-08-29 03:54:30 +00:00
Albert den Haan
1c79bbb13d Fixed typo in HKEY_CURRENT_CONFIG name. 2000-08-28 19:30:43 +00:00
Alexandre Julliard
6c8d9171cd Added a real root key and simplified creation of the HKEY_* special root keys.
Do not prefix all keys with the name of the top key when saving to a file.
Try to load $WINEPREFIX/config into the Wine config branch at startup.
2000-08-26 04:40:07 +00:00
Alexandre Julliard
ea1afcef49 Added APC support in waitable timers. 2000-08-22 20:08:37 +00:00
Alexandre Julliard
c19e1a7e19 Implemented SEC_IMAGE mappings and shared PE sections (with the help
of Peter Ganten).
2000-08-14 20:20:01 +00:00
Alexandre Julliard
c10c9ef4f1 Made server startup more robust against races caused by a previous
server terminating at the same time.
2000-08-11 21:16:53 +00:00
Hidenori Takeshima
66791afa8f Fix for 64-bit negative seek value. 2000-07-31 23:26:50 +00:00
Alexandre Julliard
7e495e1d66 Make unicode.o into a separate ELF library so that we can use it from
the wineserver too.
2000-07-25 21:01:59 +00:00
Stephane Lussier
56adb25f7d In set_socket_event, the event should be signaled if there's a pending
network event corresponding to the events the application wanted to be
notified.
2000-07-16 18:14:01 +00:00
Andreas Mohr
ed923a57ca More verbose error message. 2000-06-15 00:32:13 +00:00
Alexandre Julliard
2f158c2678 Removed @PROGEXT@ (it was broken anyway).
Improved 'make install'.
Cleaned up the main Makefile.
2000-06-14 21:45:38 +00:00
Alexandre Julliard
a37dec0c7e Pass the main exe name in the CREATE_PROCESS debug event. 2000-06-08 00:57:24 +00:00
Ulrich Weigand
afd6a4b810 Updated support for Solaris/Sparc architecture. 2000-06-04 01:48:05 +00:00
Turchanov Sergei
43a27e3696 Implemented local atoms in the server. 2000-05-30 20:32:06 +00:00
Alexandre Julliard
c5e433a3a6 Moved idle event handling to the server. 2000-05-30 19:48:18 +00:00
Patrik Stridvall
17d1e9e5e2 Fixed issues found by winapi_check. 2000-05-23 23:38:32 +00:00
Alexandre Julliard
a01004d828 Added support for registry values larger than the server buffer.
When loading a registry file, automatically determine overlap between
key name and file contents based on the first key name.
Removed v1 saving code.
Save USER\.Default separately into ~/.wine/userdef.reg.
2000-05-14 22:57:57 +00:00
Alexandre Julliard
d27624be16 Store process file name in startup info.
Fixed exe_file handling.
2000-05-03 18:42:40 +00:00
Alexandre Julliard
f818d42fae Fixed COORD structure definition.
Fixed GetLargestConsoleWindowSize to not return a structure when
called from the Window binary.
2000-05-03 17:48:21 +00:00
Alexandre Julliard
ba3e2abc99 Small optimization. 2000-05-03 17:45:34 +00:00
Alexandre Julliard
5b4f3e8d6d Rewrote Unix process launching to allow passing startup information to
Winelib apps. Improved handling of execve() failures.
2000-05-01 16:24:22 +00:00
Patrik Stridvall
e29dbc5814 Fixed some warnings. 2000-04-24 18:04:24 +00:00
Alexandre Julliard
27d31a5d43 Removed permission checks in create_key and delete_key. It seems
Windows doesn't check anything.
2000-04-16 20:28:42 +00:00
Alexandre Julliard
07d8446918 Implemented thread and (partial) module snapshots, based on the work
of Andreas Mohr <amohr@student.ei.uni-stuttgart.de>.
2000-04-16 19:45:05 +00:00
Alexandre Julliard
c970904c2c Save the registry on server exit without client intervention.
Removed "alt" registry files since we now have symlinks and
WINEPREFIX to replace them.
2000-04-16 17:21:13 +00:00
Alexandre Julliard
d804111dc5 Made server launching somewhat cleaner and faster. 2000-04-14 14:42:41 +00:00
Alexandre Julliard
6a72dc52bd Load done event now created by the server. 2000-04-14 13:42:00 +00:00
Eric Pouech
9d10afa499 Clear status for sending exception event. 2000-04-09 18:39:31 +00:00
Alexandre Julliard
11342151c9 Temporary hack to share handles between processes sharing the same
address space.
2000-04-08 21:02:47 +00:00
Alexandre Julliard
f6507ed235 Do not send a debug event for a thread until the previous event for
the same thread has been continued.
2000-04-06 22:05:16 +00:00
Alexandre Julliard
de1d5ad444 Added support for WINEPREFIX environment variable. 2000-04-06 20:36:17 +00:00
Alexandre Julliard
d3928317d6 Increment suspend count before attempting attach in suspend_for_ptrace. 2000-04-04 19:55:28 +00:00
Alexandre Julliard
ef88637f5b Made request tracing more robust against bogus lengths. 2000-04-04 19:33:27 +00:00
Alexandre Julliard
b73421dd91 Set thread start address to 0 on events generated by
DebugActiveProcess.
Return a correct address in the simulated exception event.
2000-03-30 19:30:24 +00:00
Ove Kaaven
cb98a6ed7a Handle POLLHUP better (delay FD_CLOSE notification until all data has
been read). Made WSAEnumNetworkEvents atomic. Convert socket event
error codes properly. Made accept()-ed sockets inherit the listening
socket's WSAAsyncSelect().
2000-03-26 18:21:16 +00:00
Andreas Mohr
32a5b63866 Moved some registry definitions to winnt.h. 2000-03-26 14:41:10 +00:00
Francois Gouget
6d77d3a1df Use min/max instead of MIN/MAX. 2000-03-25 21:44:35 +00:00