Alexandre Julliard
c79cf02fae
ntdll: Make sure to not unmap anything from reserved areas
...
when using NtFreeVirtualMemory with the MEM_SYSTEM flag.
2006-07-13 20:47:07 +02:00
Alexandre Julliard
bb63a325d7
ntdll: Use the map_view() function to allocate TEBs, now that it supports an arbitrary granularity.
2006-07-13 20:38:31 +02:00
Alexandre Julliard
8f47bd0306
ntdll: Support for arbitrary memory allocation granularity.
2006-07-13 20:36:41 +02:00
Dmitry Timoshkov
0042ad4fc7
ntdll: Compile VIRTUAL_Dump only when somebody really needs it.
2006-06-20 20:39:17 +02:00
Francois Gouget
f248440dd4
ntdll: Use page_size instead of page_mask+1.
2006-06-16 11:31:51 +02:00
Robert Shearman
850ae994c6
ntdll: Change the test for no relocation information to use the
...
IMAGE_FILE_RELOCS_STRIPPED flag instead of a zero sized relocations
section.
This fixes loading of resource-only DLLs that have a load-address of
0x400000.
2006-06-14 13:37:25 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Marcus Meissner
08c2555dd8
ntdll: Make the section with AddressOfEntryPoint in it executable.
2006-05-09 12:47:25 +02:00
Detlef Riekenberg
44aab2e23f
ntdll: Added ARM architecture.
2006-04-08 15:49:24 +02:00
Alexandre Julliard
959bbf8b75
server: Get rid of alignment requirements in write_process_memory request.
...
All the alignment handling is now done in the write_process_memory
function inside the server.
2006-04-07 18:41:58 +02:00
Alexandre Julliard
18d7980fd8
ntdll: Limit header_size to the file size.
2006-03-27 21:29:46 +02:00
Alexandre Julliard
7bd0cdafc2
ntdll: Use PROT_NONE instead of 0.
2006-02-24 11:31:24 +01:00
Francois Gouget
f8ed165609
ntdll: Protect sys/stat.h inclusion.
2006-02-07 21:17:45 +01:00
Alexandre Julliard
eca9e4449c
ntdll: Round PE header size to a page boundary for size checks.
2006-01-13 13:52:07 +01:00
Alexandre Julliard
9eae2d714d
ntdll: Round up the mapping size in map_file_into_view when setting
...
the protection bytes.
2006-01-11 20:59:07 +01:00
Alexandre Julliard
67f29999a3
ntdll: Check file size when mapping image sections to avoid SIGBUS errors.
2006-01-03 17:39:23 +01:00
Alexandre Julliard
efffa66330
ntdll: Don't use a real guard page at the bottom of the stack.
...
A no-access page is enough, we can't properly raise an overflow
exception anyway.
2005-12-17 18:47:03 +01:00
Alexandre Julliard
354e7700b3
ntdll: Fixes in virtual memory protection flags.
...
Tweak reporting of virtual protection flags and address space limit to
yield results closer to what Windows does.
2005-12-14 12:17:59 +01:00
Alexandre Julliard
f3dad37ba2
TEB.StackLimit should not include the guard page.
2005-12-12 17:28:32 +01:00
Alexandre Julliard
59797f292e
Pass specific access rights to wine_server_handle_to_fd.
2005-12-12 17:15:26 +01:00
Vitaliy Margolen
348a3d912b
Move mapping (section) objects into directory name space.
2005-12-02 16:13:13 +01:00
Alexandre Julliard
cb56bdf884
Check for need to add area to the reserved list also on unmap.
2005-12-01 18:44:04 +01:00
Alexandre Julliard
e3ef6314fd
Ignore the large address space flag when version is win9x.
2005-12-01 18:42:39 +01:00
Ge van Geldorp
1a1583a364
Match PSDK STATUS_* definitions.
2005-11-28 17:32:54 +01:00
Vitaliy Margolen
a996000ad5
- Send whole OBJECT_ATTRIBUTES.Attributes to the server not just an
...
inherit flag.
- Pass DesiredAccess to the server when creating mailslot.
2005-10-27 18:30:37 +00:00
Francois Gouget
baab789ce8
Replace the 'if (!cond) ; else code' construct with the standard 'do {
...
code } while (0)' construct combined with a regular 'if'.
2005-09-26 09:57:38 +00:00
Alexandre Julliard
9f859692f9
Replace DPRINTF by TRACE in a few places.
2005-09-25 15:23:21 +00:00
Alexandre Julliard
489c6b3865
Ignore relocations for unmapped pages.
2005-09-21 09:47:12 +00:00
Alexandre Julliard
06ea6e6e3f
Fixed a few pointer truncation bugs for 64-bit platforms.
2005-09-16 18:54:19 +00:00
Alexandre Julliard
fb9cead92b
Support arbitrary sizes for the thread signal stack, and set the
...
default size from the MINSIGSTKSZ constant.
2005-09-14 10:36:58 +00:00
Alexandre Julliard
261e376495
Fixed a number of pointer to integer conversions that wouldn't work
...
right on a 64-bit platform.
2005-09-12 15:14:06 +00:00
Alexandre Julliard
22a5332661
Added descriptions for a few more machine types.
2005-09-09 10:42:42 +00:00
Alexandre Julliard
20a1a203c6
Use a more portable scheme for storing the name of a critical
...
section.
2005-09-09 10:19:44 +00:00
Alexandre Julliard
0f41df1681
Use FILE_GetDeviceInfo in NtMapViewOfSection to avoid having to fetch
...
the file descriptor twice.
2005-08-25 10:23:23 +00:00
Alexandre Julliard
4ebd2fc0ff
Better handling of conflicting section information between
...
SizeOfRawData and VirtualSize.
2005-08-15 14:50:06 +00:00
Alexandre Julliard
8c375c7fd4
Don't map data beyond the virtual size of a section.
2005-08-12 11:21:45 +00:00
Alexandre Julliard
9f32a5c865
Added a VIRTUAL_alloc_teb function to allocate TEBs while making sure
...
they don't end up above the address space limit.
2005-08-09 10:43:47 +00:00
Dmitry Timoshkov
40dd77bf5a
Make VIRTUAL_HandleFault return an NTSTATUS.
2005-07-15 11:43:09 +00:00
Dmitry Timoshkov
1dc18952ae
Use SIZE_T type for size variables in NTDLL when appropriate.
2005-07-15 10:01:30 +00:00
Felix Nawothnig
db6a238f28
Replace stubs for information classes in NtQueryVirtualMemory and
...
NtQueryInformationProcess by more descriptive messages.
2005-07-05 14:05:58 +00:00
Vitaliy Margolen
b2e74c3047
Load all dll sections no matter what attributes say.
2005-07-02 10:50:42 +00:00
Mike McCormack
6b636e3e7b
Use RTL_CRITICAL_SECTION instead of CRITICAL_SECTION.
2005-06-25 18:00:57 +00:00
Alexandre Julliard
f724399f60
Add PAGE_GUARD flag to the returned protection of guard pages.
2005-06-21 20:23:02 +00:00
Mike McCormack
04f9f1b066
Don't include winbase.h or winerror.h when not necessary.
2005-06-21 09:52:40 +00:00
Mike McCormack
5b2d5fd758
Use HANDLE instead of HKEY in the NT API.
2005-06-17 13:58:33 +00:00
Alexandre Julliard
bd000a0203
Removed some unnecessary inclusions of thread.h
2005-06-06 20:13:08 +00:00
Mike McCormack
cc4ed1322a
Use LIST_FOR_EACH_ENTRY in virtual memory code.
2005-05-23 09:51:02 +00:00
Dimi Paun
88fe1ff962
Make the argument comments out-of-line.
2005-05-18 09:45:12 +00:00
Alexandre Julliard
3b843d3e7d
Remove all traces of the VIRTUAL_SetFaultHandler support.
2005-04-20 16:26:23 +00:00
Troy Rollo
95fe6abcb7
Fix SEGVs in NtCreateSection and NtMapViewOfSection.
2005-04-19 10:31:28 +00:00
Ivan Leo Puoti
d3edafe1e2
Replace GetCurrentProcess() with NtCurrentProcess() in ntdll.
2005-02-22 19:33:50 +00:00
Gerald Pfeifer
57e00da29e
Fix format string in NtQueryVirtualMemory().
2005-01-24 11:25:41 +00:00
Hans Leidekker
fccfcbf7ba
Stub implementations for EnumPageFiles{A,W}, GetProcessImageFileName{A,W}.
...
Implement GetPerformanceInfo, GetProcessMemoryInfo on top of
NtQueryInformationProcess and GetWsChanges, QueryWorkingSet{,Ex} on
top of NtQueryVirtualMemory.
2005-01-20 19:59:48 +00:00
Alexandre Julliard
646ab89f0a
Support mapping non page-aligned binaries for SEC_IMAGE mappings.
2005-01-04 12:04:06 +00:00
Peter Chapman
505dfdefb5
Fix up several inline assembler blocks so that they produce correct
...
code with the -fomit-frame-pointer gcc flag.
2004-12-02 18:19:25 +00:00
Robert Shearman
2050591370
Fix NtAllocateVirtualMemory declaration and fix users of the
...
function.
2004-10-11 20:59:06 +00:00
Alexander Yaworsky
aadffd1f35
Moved TRACEs to the beginning of functions.
2004-09-22 04:03:10 +00:00
Alexander Yaworsky
8657ad8704
Make RtlCreateUserThread fail if process handle is not for the current
...
process.
2004-09-21 00:23:50 +00:00
Alexandre Julliard
6a27b48895
Fd type is no longer used, get rid of it.
2004-08-18 00:04:58 +00:00
Alexandre Julliard
38affc4097
We no longer need to make the import directory writable, the loader
...
takes care of that now.
2004-06-22 03:02:35 +00:00
Alexandre Julliard
fd9792bdc9
Added support for the IMAGE_FILE_LARGE_ADDRESS_AWARE flag.
2004-06-18 00:26:57 +00:00
Eric Pouech
db52588754
Const correctness.
2004-06-15 00:47:00 +00:00
Alexandre Julliard
dc4d05690e
Don't rely on the reserved area list being empty in reserve_area,
...
since the preloader will need to add things to the list before
startup.
2004-05-28 03:48:09 +00:00
Alexandre Julliard
94d74b5fed
Added support for managing reserved memory areas in libwine and ntdll.
...
Try to reserve everything above 0x80000000 on startup.
2004-05-25 01:29:24 +00:00
Alexandre Julliard
eb04fd22f8
Converted the memory views list to use the standard functions from
...
wine/list.h.
Restructured some functions to always return proper NT status codes.
A couple of optimizations.
Added a few tests for file mappings.
2004-05-21 20:58:44 +00:00
Alexandre Julliard
670711ef25
Handle file mappings on removable media entirely inside ntdll.
2004-04-06 23:13:47 +00:00
Alexandre Julliard
a2ce4ea325
Fixed some potential races in the handling of the view structures.
2004-04-06 20:16:51 +00:00
Mike Hearn
4d2cfee1fa
Improve message given on image map failure.
2004-03-15 20:06:50 +00:00
Dmitry Timoshkov
cba227bcec
Write section access also assumes read access.
2004-02-17 20:22:43 +00:00
Dmitry Timoshkov
fcc2fe18a4
Avoid double checking free type flags in NtFreeVirtualMemory.
2004-02-11 23:56:52 +00:00
Alexandre Julliard
2ad864dc87
Don't request PROT_EXEC permissions when mapping an image file to
...
avoid problems on noexec filesystems with kernel 2.6.
2004-02-11 06:37:49 +00:00
Dmitry Timoshkov
f323d5d31b
Add a test case for Virtual* APIs, fix a few bugs discovered by it.
2004-02-09 20:58:16 +00:00
Alexandre Julliard
36241ceda4
Added memory constraint to avoid miscompilation of the unaligned_mmap
...
function (with help from Paul Streitman).
2004-01-30 22:59:34 +00:00
Ge van Geldorp
399901e054
Rename LARGE_INTEGER and ULARGE_INTEGER members "s" to "u" to conform
...
with PSDK.
2004-01-23 01:51:33 +00:00
Alexandre Julliard
94d5531e6f
Check for overlapping memory views and delete the offending view if
...
necessary, to ensure we never have two views covering the same
address.
2004-01-16 04:52:17 +00:00
Alexandre Julliard
af542075e7
Don't use constructors for ntdll and kernel32 initialization.
2004-01-07 04:50:11 +00:00
Dimitrie O. Paun
2eaefbd1a4
Move content of global.h into the appropriate private headers.
2003-12-08 21:58:55 +00:00
Alexandre Julliard
f3f435ffa1
Added wine_server_release_fd function to release the fd returned by
...
wine_server_handle_to_fd. Fixed a couple of potential fd leaks.
2003-12-01 23:01:12 +00:00
Alexandre Julliard
dfe1df6408
Make sure the protection flags on the memory view of the PE header
...
match the actual mmap protection.
2003-11-11 22:06:59 +00:00
Alexandre Julliard
7924f421e9
Allocate the TEB and signal stack separately from the main stack.
...
Dynamically allocate the initial TEB too so that it is properly
page-aligned.
2003-11-04 04:50:18 +00:00
Alexandre Julliard
7fcc737faa
Fixed type and protection values returned by NtQueryVirtualMemory to
...
be closer to what Windows does.
Allow using MEM_SYSTEM without MEM_RESERVE to avoid 64k alignment.
Use pread instead of lseek+read when faking mmap.
2003-11-03 22:21:55 +00:00
Alexandre Julliard
8824c38e9e
Simplified signal stack allocation a bit, and avoid allocating it on
...
non-i386 platforms.
2003-10-22 03:26:53 +00:00
Pavel Roskin
3ec73af37f
Include ntdll_misc.h to get the GetCurrentProcess/ThreadId macros.
2003-10-08 19:11:08 +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
e37c6e18d0
Fixed header dependencies to be fully compatible with the Windows
...
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Alexandre Julliard
7df1b9e03a
Start using the exported TEB structure from winternl.h where
...
possible.
2003-08-28 19:57:35 +00:00
Alexandre Julliard
02f2813968
Renamed a few TEB fields to use the "official" names.
2003-08-27 23:14:29 +00:00
Alexandre Julliard
19b6a49845
Allocate DebugInfo field for all critical sections (based on a patch
...
by Alex Pasadyn).
Get rid of the Wine-specific CRITICAL_SECTION_INIT macro.
2003-08-12 23:50:54 +00:00
Alexandre Julliard
4f4b980c1e
Implemented NtRead/WriteVirtualMemory.
2003-07-08 21:18:45 +00:00
Eric Pouech
415dfa63e5
Fixed section mapping in PE loading when both
...
IMAGE_SCN_CNT_UNINITIALIZED_DATA and IMAGE_SCN_CNT_INITIALIZED_DATA
are set.
2003-06-21 02:02:27 +00:00
Alexandre Julliard
c808e67da1
Fixed wrong file offset used when mapping the import directory from a
...
shared section.
2003-05-08 03:50:32 +00:00
Alexandre Julliard
54f59e5005
Added comment about why changing ADDRESS_SPACE_LIMIT is wrong.
2003-05-06 18:52:43 +00:00
Dimitrie O. Paun
297f3d898d
Define NONAMELESS{STRUCT,UNION} explicitly in the files that need them.
2003-01-07 20:36:20 +00:00
Andrew John Hughes
ed800c69c8
Build ntdll with -DSTRICT.
2002-11-21 03:45:01 +00:00
Alexandre Julliard
ac36f95082
Disable address space limit check on non-i386 platforms.
2002-11-06 22:33:17 +00:00
Alexandre Julliard
341b7dceb4
Implemented the ntdll virtual memory functions, and made the kernel
...
functions use them.
2002-09-17 18:54:42 +00:00