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
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
Ove Kaaven
77c30552aa
Handle socket POLLERR/POLLHUP conditions properly.
...
Clear error field for OOB notifications.
2000-03-25 21:41:43 +00:00
Alexandre Julliard
9a0e28f153
Fixed a couple of file descriptor leaks.
...
Always call USER signal proc in the right context.
Cleaned up THREAD_Create.
2000-03-25 19:14:37 +00:00
Huw D M Davies
361adc80b7
Ensure that non-NULL terminated stings are saved correctly.
2000-03-24 19:46:30 +00:00
Peter Hunnisett
de1ff66d81
Changed PTRACE_PEEKUSER to PTRACE_PEEKUSR and PTRACE_POKEUSER to
...
PTRACE_POKEUSR for libc5(?) compile.
2000-03-24 19:45:11 +00:00
Alexandre Julliard
12f29b5076
Have threads and processes exit more cleanly whenever possible.
2000-03-17 15:16:57 +00:00
Alexandre Julliard
cd8cf5e7c5
Avoid SIGSTOP/SIGCONT race when ptrace is disabled.
...
Fixed context flags handling (thanks to Eric Pouech).
2000-03-15 19:47:44 +00:00
Alexandre Julliard
98aacc7751
Avoid SIGSTOP/SIGCONT race when ptrace is disabled.
2000-03-15 19:46:14 +00:00
Alexandre Julliard
f2f1ff333e
Fixed bug in generate_startup_debug_events().
2000-03-15 19:45:15 +00:00
Alexandre Julliard
ea0d028a0b
Added specific routines for OUTPUT_DEBUG_STRING and EXCEPTION debug events.
...
Generate a breakpoint event on process attach.
Misc cleanups in request handling.
2000-03-10 22:16:10 +00:00
Alexandre Julliard
05f0b71bb3
Store the list of loaded dlls in the server, and generate debug events
...
internally.
2000-03-09 18:18:41 +00:00
Alexandre Julliard
5fb54566d2
Added server protocol version check.
2000-03-08 22:01:02 +00:00
Patrik Stridvall
7e9913f463
Fixed some warnings.
2000-03-08 18:25:22 +00:00
Alexandre Julliard
00641d5b1c
Removed PDB32_DEBUGGED flag and send all debug events unconditionally.
...
Implemented IsDebuggerPresent().
2000-03-08 16:41:37 +00:00
Alexandre Julliard
ff81d78708
Generate CREATE_PROCESS/THREAD debug events internally in the server.
2000-03-08 12:01:30 +00:00
Patrik Stridvall
0e06d62334
Fixed Solaris specific compiler issue.
2000-02-26 13:16:13 +00:00
Patrik Stridvall
49bcb93262
Fixed some issues found by winapi_check.
2000-02-25 20:55:33 +00:00
Alexandre Julliard
67a24c8cfb
Store the handle of the process exe file in the server.
...
Removed PROCESS_Initial().
2000-02-18 21:54:32 +00:00
Dave Pickles
717bf7e9ea
Added definition for STILL_ACTIVE.
2000-02-13 16:04:14 +00:00
Juergen Lock
2d33ab91f4
Added configure check for the unix domain sockaddr length.
2000-02-13 16:03:29 +00:00
Alexandre Julliard
b849d79104
Moved global atoms to the server (based on the work of Sergei
...
Turchanov <turchanov@otvprim.ru>).
2000-02-13 13:56:13 +00:00
Juergen Lock
578276568f
Added context functions for FreeBSD.
2000-02-07 16:03:08 +00:00
Ulrich Weigand
8a1bdb3074
Added configure check for sys/reg.h.
2000-01-30 22:22:22 +00:00
Patrik Stridvall
de20c2ab08
Solaris support for {set,get}_thread_context added.
2000-01-30 00:23:12 +00:00
Alexandre Julliard
a661187be6
Added our own user_regs_struct definition for better compatibility.
2000-01-29 23:35:42 +00:00
Patrik Stridvall
fb32c7bb38
Fixed minor issues found by winapi_check.
2000-01-29 21:02:19 +00:00
Juergen Schmied
788d8d554c
Get HCU name from unix user name.
2000-01-27 05:37:54 +00:00
Alexandre Julliard
0a7c1f6c5b
Implemented GetThreadSelectorEntry through the server.
2000-01-27 02:54:17 +00:00
Alexandre Julliard
2fe57779fb
Made the server listen for new clients on a Unix socket in
...
$HOME/.wine. Newly started wine processes now attach to an existing
server if one is running.
2000-01-25 01:40:27 +00:00
Alexandre Julliard
cb1fc735f0
Changed the server to return STATUS_* error codes.
2000-01-24 21:58:06 +00:00
Alexandre Julliard
3e2517caa7
Added Get/SetThreadContext support through the server.
2000-01-20 18:59:03 +00:00
Juergen Schmied
5d0ae2dcd9
- removed copying of HKEY_USERS to HKEY_CURRENT_USER
...
- HKEY_CURRENT_USER is now subkey of HKEY_USERS
- changed query_key_info_request to return the key name too (NtQueryKey needs this)
- the rootkeys (MACHINE and USER) do have names
2000-01-09 21:07:01 +00:00
Alexandre Julliard
95e7acb95d
Moved allocation of the socket pair for a new thread to the server.
2000-01-04 02:40:22 +00:00
Alexandre Julliard
79b1ec8290
Made debug events and contexts standard objects.
...
Use sleep_on to wait on debug events.
2000-01-04 02:24:43 +00:00
Alexandre Julliard
9de03f4f6a
Made sleep_on usable from all requests.
2000-01-04 02:23:38 +00:00