Commit graph

87 commits

Author SHA1 Message Date
Paul Gofman
385142bb9e server: Check for system regs before suspending for ptrace.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-26 21:30:30 +02:00
Alexandre Julliard
308bd35746 server: Store a machine ID instead of a CPU in the context structure.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-27 10:40:53 +02:00
Torge Matthies
102a0b189b server: Fix page size calculation in write access check.
Signed-off-by: Torge Matthies <openglfreak@googlemail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-25 08:57:59 +01:00
Jacek Caban
80ceafc2a1 server: Don't change cached thread context in set_thread_context.
Let the caller take care of that.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-22 16:47:41 +02:00
Alexandre Julliard
53375be47c server: Reset hardware breakpoint sizes before setting them.
Workaround for kernel bug 200965.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-18 17:18:09 +01:00
Frédéric Fauberteau
708a2c991f wineserver: Support debug registers on NetBSD.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46229
Signed-off-by: Frédéric Fauberteau <triaxx@NetBSD.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-04 16:13:11 +01:00
Matteo Bruni
1f006f075d server: Avoid writing out of bounds in get_selector_entry().
Fixes c6dfce2723.

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-16 19:19:43 +01:00
Zebediah Figura
c6dfce2723 server: Fix pointer arithmetic in get_selector_entry().
The selector table is exclusively 32-bit, so trying to get selector entries
with a 64-bit wineserver will return the wrong values due to the different
size of (long *).

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-12 11:09:48 +01:00
Alexandre Julliard
abe0b1c57b server: Initialize debug registers in new threads if necessary.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-27 17:04:04 +02:00
Alexandre Julliard
9a07d210f1 server: Add a platform-specific entry point to initialize registers of a new thread.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-27 17:04:04 +02:00
Alexandre Julliard
8d817997ce configure: Add a check for sys/ucontext.h and include it where appropriate. 2014-07-23 19:06:58 +02:00
Francois Gouget
d3cc10724e server: Include either sys/user.h or asm/user.h.
This avoids redefinitions with old Linux kernel headers.
2013-10-07 14:44:34 +02:00
Huw Davies
2a32d5765a server: Android has struct user in asm/user.h. 2013-09-24 18:58:24 +02:00
Dmitry Timoshkov
bfe3b3bdb6 server: Set error to STATUS_PROCESS_IS_TERMINATING if the process is terminating. 2013-05-08 12:44:46 +02:00
Alexandre Julliard
fc7e81be15 server: Don't support debug registers in ptrace if sys/user.h is missing. 2013-02-13 17:19:42 +01:00
Alexandre Julliard
2b95df8fbd server: Use the __NR_ names for Linux system calls. 2013-01-21 21:37:10 +01:00
Alexandre Julliard
1fd55b7334 server: Get rid of the waitpid wrapper. 2012-09-24 22:27:30 +02:00
Adrian Bunk
9d5c178b24 server: Use waitpid() instead of wait4(). 2012-09-24 22:27:30 +02:00
André Hentschel
89e462b141 server: Add checks for DragonFly BSD. 2012-05-29 10:46:34 +02:00
Henri Verbeet
e7728c4132 server: Try writing to /proc/<pid>/mem in write_process_memory(). 2011-09-22 09:36:29 +02:00
Grazvydas Ignotas
2cc56f379c server: Set debug enable bits briefly to commit the addresses to kernel. 2011-07-18 16:23:30 +02:00
Grazvydas Ignotas
fa179b1c26 server: Set RW and LEN bits of DR7 before setting DR0-DR3. 2011-07-18 16:23:30 +02:00
Austin English
599afa06b7 server: Add missing checks for FreeBSD_kernel. 2011-01-17 14:26:24 +01:00
Alexandre Julliard
185f637080 server: Use the tgkill system call on all Linux platforms. 2010-12-27 12:07:16 +01:00
Alexandre Julliard
10b6d6ba4d server: Use tgkill to send signals on x86_64 too. 2010-07-28 16:28:26 +02:00
Michael Stefaniuc
5c8b44cd24 server: Simplify tkill() and remove unreachable code (Smatch). 2010-07-28 16:28:23 +02:00
Maarten Lankhorst
c054b5f86d wineserver: Use syscall instead of int $0x80. 2010-07-22 10:24:45 +02:00
Alexandre Julliard
1a79912a10 server: Try to use /proc/pid/mem to read process memory since it should be faster. 2010-07-21 13:23:58 +02:00
Eric Pouech
1298f2233f server: Fix write_process_memory on Wow64. 2010-04-20 11:17:03 +02:00
Eric Pouech
9f49c6a05f server: Correctly set the DR0..7 registers on Linux for x86_64 architecture. 2010-04-08 12:28:25 +02:00
Alexandre Julliard
034c6c3e58 server: The ptrace interfaces uses longs, not ints. 2009-06-18 15:17:26 +02:00
Alexandre Julliard
5316dd011f server: Define a generic context structure instead of using the platform-specific version. 2009-04-08 19:59:23 +02:00
Alexandre Julliard
2cf868c0be server: Move ldt_copy to the init_process_done request and make it a client_ptr_t. 2008-12-31 15:09:59 +01:00
Alexandre Julliard
8e9c156e14 server: Make the address argument for read/write_process_memory a client_ptr_t. 2008-12-30 14:11:58 +01:00
Tijl Coosemans
0c4f152ec7 server: Use thr_kill2 syscall to signal threads on FreeBSD. 2007-08-23 20:19:09 +02:00
Tijl Coosemans
60833da9f2 loader: Use thr_self syscall to get thread id on FreeBSD. 2007-08-09 15:01:04 +02:00
Andrew Talbot
b1788c8462 server: Replace inline static with static inline. 2007-03-17 20:05:05 +01:00
Alexandre Julliard
ae4ecb6c64 server: Print a trace when sending a signal to a thread. 2007-01-18 12:23:29 +01:00
Alexandre Julliard
c273498ef4 server: Implement process control using Mach primitives for Mac OS.
With help from Ken Thomases.
2006-12-29 20:38:49 +01:00
Alexandre Julliard
cd1c7fc056 server: Add hooks to support process tracing mechanisms other than ptrace. 2006-12-29 16:56:11 +01:00
Alexandre Julliard
48b74b3237 server: Split get_thread_from_pid to allow lookups by tid or pid only. 2006-12-29 16:53:33 +01:00
Eric Pouech
5b1f3b14ca ntdll: Fixed returned status for NtQueryThreadInformation's ThreadDescriptorTable
(spotted by Peter Oberndorfer).
2006-11-15 11:24:41 +01:00
Andrew Talbot
e60c86657a server: Cast-qual warning fix. 2006-10-09 15:23:28 +02:00
Michael Stefaniuc
a624977f21 server: Fix some comparisons between signed and unsigned. 2006-07-26 11:11:04 +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
Alexandre Julliard
7b767fb71c server: Try harder to find a suitable thread for read/write_process_memory. 2006-07-25 11:41:47 +02:00
Alexandre Julliard
c242c3b3f3 server: Fixed get_thread_context for x86_64. 2006-07-11 12:06:38 +02:00
Alexandre Julliard
498742ff6c server: Moved get/set_thread_context implementation to ptrace.c. 2006-06-27 21:27:47 +02:00
Jonathan Ernst
360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Alexandre Julliard
f9ff7bf4d9 server: Remove the use_ptrace variable. 2006-04-13 21:52:55 +02:00