Commit Graph

950 Commits

Author SHA1 Message Date
Raphael Junqueira ca6b072689 Stub implementations of RtlCreateQueryDebugBuffer,
RtlDestroyQueryDebugBuffer and RtlQueryProcessDebugInformation.
2004-03-18 02:08:43 +00:00
Alexandre Julliard b8d025eeb9 Rewrote the collapsing of . and .. in RtlGetFullPathName_U for better
compatibility.
2004-03-17 01:58:51 +00:00
Alexandre Julliard 24df62e32b O_DIRECTORY is not really needed. 2004-03-16 19:19:12 +00:00
Mike Hearn a54e3216c3 - Add debug SnoopFromInclude/SnoopFromExclude options.
- Correct TRACE debug channel usage in SNOOP_SetupDLL.
- Refactor check_relay_from_relay.
2004-03-16 03:10:07 +00:00
Alexandre Julliard f30cfa8858 Implemented NtQueryDirectoryFile (partly based on a patch by Eric
Pouech).
2004-03-16 01:32:02 +00:00
Mike Hearn 4d2cfee1fa Improve message given on image map failure. 2004-03-15 20:06:50 +00:00
Alexandre Julliard fe8ead56a8 Get rid of ntdll_get_process_heap and ntdll_get_process_pmts by using
standard APIs instead.
2004-03-12 01:59:35 +00:00
Hans Leidekker bdf4aff65b _wto{l,i,i64} parameters are const. 2004-03-11 22:38:38 +00:00
Alexandre Julliard 8548fc2947 Portability fixes. 2004-03-11 00:46:09 +00:00
Alexandre Julliard 615373c587 ASCII string comparisons should not depend on the locale. 2004-03-09 23:29:20 +00:00
Alexandre Julliard 954c570ae3 Reimplemented GetVolumeInformation and SetVolumeLabel; volume label
and serial number are now stored in the filesystem instead of in the
config file (partly based on a patch by Eric Pouech).
2004-03-09 01:03:03 +00:00
Alexandre Julliard 68cc54330e Do not store the Unix file descriptor in the cache structure.
Protect the global cache with a critical section.
2004-03-05 20:45:33 +00:00
Alexandre Julliard db692c8f39 Open a real file handle for drive devices, and get rid of the server
device hacks (based on a patch by Eric Pouech).
2004-03-04 23:00:18 +00:00
Alexandre Julliard bcb5d6b82d Smarter allocation algorithm for the string buffer, to allow
displaying more characters for strings without too many escapes.
2004-03-03 21:34:13 +00:00
Alexandre Julliard 589e115233 We no longer use the .exe.spec.c files. 2004-03-02 21:16:37 +00:00
Rein Klazes 5040309740 In TIME_GetBias make sure there is a cached value for daylight as
well.
2004-03-01 21:23:18 +00:00
Robert Shearman b14950dd5c Update documentation for Rtl functions. 2004-02-27 04:35:43 +00:00
Huw Davies 67e2d6cb4d Cache the result of TIME_GetBias for up to 1 second. 2004-02-27 00:43:20 +00:00
Huw Davies 64ed848712 Call TIME_GetBias rather than RtlQueryTimeZoneInfo if we're only
interested in the bias - it's faster.
2004-02-26 05:26:34 +00:00
Huw Davies f66af59989 Speed up RtlTimeFieldsToTime. 2004-02-25 01:25:00 +00:00
Alexandre Julliard 8cdcbbb342 Tweak the load order algorithm a bit to better reflect the user's
intention, by taking into account non-wildcard module specifications
for all directories.
2004-02-24 01:26:31 +00:00
Alexandre Julliard fc8b376a55 Return right away from import_dll when a dll is not found to avoid
displaying many useless function errors.
2004-02-24 01:25:03 +00:00
Dmitry Timoshkov c2de5fbcb9 Set SA_RESTART sigaction flag for other BSDs beside NetBSD. 2004-02-24 01:21:56 +00:00
Huw Davies 166faa455d Speed up RtlTimeToTimeFields. 2004-02-24 01:01:27 +00:00
Patrik Stridvall ede82e3055 Fixed some issues found by winapi_check. 2004-02-20 20:19:23 +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
Francois Gouget ad5ff7ceeb Assorted spelling and case fixes. 2004-02-09 22:07:42 +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 f19c9e7cdd Get pointer to CreateFileW earlier on during startup.
Make sure we don't crash when loading a dll before the modref for the
main exe has been created.
2004-02-07 01:11:54 +00:00
Francois Gouget 39081ddcd8 Add trailing '\n's to ok() calls. 2004-02-07 01:03:17 +00:00
Francois Gouget f083d70024 Add trailing '\n's to ok() calls.
Spelling fixes in the ok() messages.
2004-02-07 01:02:48 +00:00
Alexandre Julliard 950808af3b Trace register contents on exception. 2004-02-06 05:28:23 +00:00
Alexandre Julliard 4fac95df3d Fixed a couple of race conditions in the wine_pthread routines at
thread startup and exit.
2004-02-05 02:01:35 +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
Francois Gouget 7494b5b980 Add trailing '\n's to ok() calls.
Check whether _MSC_VER is defined.
2004-01-23 02:11:12 +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
Eric Pouech 6c8ee62340 - RtlGetFullPathName_U: rewritten so that the source & destination
buffer can be the same
- GetFullPathName[AW]: now call RtlGetFullPathName_U
- GetShortPathNameW: fixed regression introduced in last patch
2004-01-20 01:40:23 +00:00
Alexandre Julliard de7fab45bc Fixed an error message. 2004-01-19 21:55:32 +00:00
Eric Pouech 210e1abb35 Added support for Unix code page in NTDLL. 2004-01-18 22:11:52 +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
Robert Lunnon 93be53744e Save UESP instead of ESP where UESP defined. 2004-01-16 02:00:24 +00:00
Eric Pouech 9ccb73a8d7 Reimplemented Get{Short|Long}PathName and updated the regression
tests.
2004-01-15 00:20:46 +00:00
Alexandre Julliard 8b39cea352 Fixed __siginfo type for Solaris (based on a patch by Robert Lunnon). 2004-01-14 05:25:07 +00:00
Vincent Béron 6f2b7a5663 Remove a "\" from a multiline string constant by splitting it in two. 2004-01-13 04:57:57 +00:00
Marcus Meissner 41beb71636 Allow offset of NULL to NtWriteFile. 2004-01-09 20:09:08 +00:00
Alexandre Julliard 3604824262 If supported by the linker, prevent the ELF loader from calling the
dll constructors at load time and call them from the dll entry point
instead.
2004-01-08 03:36:53 +00:00
Alexandre Julliard af542075e7 Don't use constructors for ntdll and kernel32 initialization. 2004-01-07 04:50:11 +00:00
Alexandre Julliard 7412125e46 Updates for the new loadorder handling of 16-bit dlls. 2004-01-05 21:19:22 +00:00
Mike Hearn 43cb03be3a Implemented RegFlushKey and NtFlushKey. 2004-01-03 00:38:30 +00:00
Mike Hearn 5f5034ff3b Print exe name when initialization fails. 2003-12-31 00:11:48 +00:00
Alexandre Julliard 5c92266987 Fixed RtlUnwind signature (reported by Pierre d'Herbemont). 2003-12-30 19:26:19 +00:00
Mike McCormack 9acaadea3f Return an SID when GetTokenInformation is called with class
TokenOwner.
2003-12-30 19:17:05 +00:00
Hans Leidekker 73593d7eed Check if a function exists before testing it. 2003-12-15 20:18:50 +00:00
Marcus Meissner 34528b91a9 Fixed potentially uninitialised sz. 2003-12-15 19:46:51 +00:00
Francois Gouget 8f63a714b2 Try not to display uninitialized data in traces (found by Valgrind). 2003-12-13 01:34:40 +00:00
Jon Griffiths ae0ca56453 Added RtlNtStatusToDosErrorNoTeb, RtlGet/Set/RestoreLastWin32Error,
RtlGUIDFromString, RtlStringFromGUID.
2003-12-12 05:56:44 +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 bb4ddfec28 Added a WINEDEBUG environment variable that allows turning on debug
output as early as possible during startup.
2003-12-05 00:17:41 +00:00
Jon Griffiths 03ce33f629 Implement the Rtlp* registry functions. 2003-12-04 20:52:12 +00:00
Alexandre Julliard f752be843e Implement some more register functions using DEFINE_REGS_ENTRYPOINT to
make them available for imports.
2003-12-04 05:51:01 +00:00
Alexandre Julliard e85491274d Moved the DEFINE_REGS_ENTRYPOINT macros to include/wine/port.h.
Removed the C fallback code, do that in the callers instead.
2003-12-04 05:48:03 +00:00
Alexandre Julliard 86c905ab0c We no longer need a special case for codepages on startup,
initialization is done in the correct order now.
2003-12-04 05:13:03 +00:00
Alexandre Julliard 0382aead65 Removed no longer used extra space allocated in the modref structure. 2003-12-03 20:28:41 +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 854e59d9ec Allow RELAY_SetupDLL to be called twice on the same dll. 2003-12-01 22:49:33 +00:00
Alexandre Julliard 2ae6f4bd24 Fixed bitmap range checking to avoid integer overflows. 2003-11-29 00:23:23 +00:00
Francois Gouget 82bff6bddd Only convert '/'s to '\\'s up to the '\0' as the rest of the buffer
may not be initialized (found by Valgrind).
2003-11-28 23:36:06 +00:00
Alexandre Julliard 402b79a1e8 Porting fixes. 2003-11-27 00:59:36 +00:00
Dmitry Timoshkov 602c4a7e8a Fix another RtlReAllocateHeap call. 2003-11-26 22:03:21 +00:00
Alexandre Julliard cba157e998 Better support for loading exe files as libraries.
Make sure kernel32 and ntdll have a full path name even though they
are loaded before we know the system dir.
2003-11-25 05:28:57 +00:00
Alexandre Julliard 6281d82e87 Store the thread entry point in the startup info passed to the new
thread instead of the TEB.
2003-11-25 03:42:05 +00:00
Alexandre Julliard 9e73f55af3 Store the last error code at the TEB offset used by NT instead of the
Win9x one.
2003-11-25 01:53:23 +00:00
Alexandre Julliard 16b4411669 Removed MODULE_GetLoadOrderA. 2003-11-25 01:03:04 +00:00
Dimitrie O. Paun c762f5d7af RtlHeapReAllocate() should not allocate memory.
Add small test to make sure it doesn't return.
Don't import ntdll for tests, we need to load it dynamically.
2003-11-25 01:02:02 +00:00
Robert Shearman 3842103c74 Handle EIO file error. 2003-11-21 23:53:44 +00:00
Dimitrie O. Paun f448b79e79 RtlReAllocateHeap() does not allocate memory. 2003-11-20 23:44:13 +00:00
Alexandre Julliard 746d900b04 Force minimum stack size to 1Mb for Xlib. 2003-11-18 00:14:17 +00:00
Alexandre Julliard f9be2f3d21 Removed some unnecessary includes. 2003-11-17 20:31:29 +00:00
Alexandre Julliard 8fb98a41e0 Added wine_ldt_is_system() to replace the IS_SELECTOR_SYSTEM macro,
and stop exporting the WINE_LDT_FIRST_ENTRY constant.
2003-11-17 20:12:56 +00:00
Alexandre Julliard daeccba704 Moved the exec_wine_binary function to the wine library, and use it to
exec the wineserver too.
2003-11-11 22:21:29 +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
Ulrich Czekalla fd5e811c4e Added stubs for AccessCheckByType, AddAuditAccessAce,
GetNamedSecurityInfoA, GetNamedSecurityInfoW.
Implemented ConvertStringSecurityDescriptorToSecurityDescriptorW,
DeleteAce, MakeAbsoluteSD, GetAclInformation, ConvertStringSidToSidW,
RtlDeleteAce, RtlQueryInformationAcl.
2003-11-11 22:03:24 +00:00
Carlos Lozano b40a287e03 NtReadFile checks that offset is not null. 2003-11-11 21:57:07 +00:00
Jukka Heinonen d7ee5f3f31 Fix race in real mode event handling.
Merge real mode pending event checking routines.
Remove some obsolete code.
2003-11-11 00:44:10 +00:00
Alexandre Julliard 50fba7ffec Moved the remaining SYSDEPS_* functions to the wine_pthread interface.
Let the pthread library allocate the stack itself.
2003-11-09 01:25:23 +00:00
Alexandre Julliard 4dba172e55 Added server_abort_thread to replace SYSDEPS_AbortThread.
Removed no longer used SIGNAL_Block and SIGNAL_Reset.
Moved some internal ntdll definitions to ntdll_misc.h.
2003-11-06 00:08:05 +00:00
Alexandre Julliard 8574412e1e Added wine_pthread_create_thread and wine_pthread_exit_thread to the
pthread support, and removed the corresponding SYSDEPS functions.
Moved stack allocation for new threads to wine_pthread_create_thread
to allow more flexibility.
2003-11-05 23:31:11 +00:00
Ulrich Czekalla da10653f6f Implemented RtlSelfRelativeToAbsoluteSD and RtlMakeSelfRelativeSD.
Fixed some related SE_SELF_RELATIVE bugs.
2003-11-05 01:41:20 +00:00
Alexandre Julliard 063cff8686 Use the signal stack pointer to determine the current thread.
Converted the SIGUSR2 handler to use setup_exception (probably still
not working properly).
2003-11-05 00:52:29 +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
Gerald Pfeifer bcb09c198d The CDDA case of CDROM_RawRead() no longer works on FreeBSD -CURRENT,
remove it.  Also, combine the FreeBSD and NetBSD NYI notes.
2003-11-04 04:23:49 +00:00
Alexandre Julliard a062677a95 Allocate a memory view for builtin dlls so that VirtualQuery returns
something sensible.
2003-11-03 22:23:09 +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 7370f60120 Implemented RtlCreateUserThread, and use it to move thread creation to
ntdll.
2003-10-31 00:16:20 +00:00
Alexandre Julliard 0f95d5498d Fixed race in %gs selector restoring during vm86 mode return.
Minor cleanups.
2003-10-30 23:15:56 +00:00
Pavel Roskin 0f252372b7 Include ntdll_misc.h to avoid undefined reference to GetProcessHeap
when compiled without optimization.
2003-10-30 23:06:41 +00:00
Alexandre Julliard 07931f2d70 Removed no longer needed SIGNAL_Unblock() function. 2003-10-28 21:46:46 +00:00
Alexandre Julliard 54b1d87daf Implemented Add/RemoveVectoredExceptionHandler. 2003-10-28 21:22:50 +00:00
Alexandre Julliard 4cb001967a Switch back to the main process stack before calling exception
handlers.
2003-10-28 00:30:55 +00:00
Alexandre Julliard 8f1b861e27 Repaired relay debugging for kernel and ntdll (spotted by Uwe
Bonnes).
2003-10-28 00:25:32 +00:00
Uwe Bonnes d0f86f640b get_full_path_helper: Handle the case \\.\\ as intended; fix length
arguments for memmove.
2003-10-28 00:07:56 +00:00
Alexandre Julliard 2e4f0bc9ba Use sigsetjmp instead of setjmp in Wine internal exception handlers to
make sure the signal mask is restored properly.
2003-10-24 04:30:13 +00:00
Alexandre Julliard f9df57d94d Call the application entry point from kernel32, some apps depend on
that.
2003-10-24 00:32:36 +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
Alexandre Julliard 5e4e0de15f A signal stack is not needed on PowerPC. 2003-10-22 03:25:38 +00:00
Dave Belanger 2c39191ef1 Fix splitpath and wsplitpath for the file extension. 2003-10-21 23:51:06 +00:00
Alexandre Julliard bbc5242fbc Fixed handling of relay and snoop include/exclude lists to behave as
documented (based on a patch by Rein Klazes).
2003-10-16 00:24:49 +00:00
Alexandre Julliard 2937826866 Rewrote splitpath and wsplitpath to avoid modifying the path
separators.
2003-10-15 02:34:51 +00:00
Jukka Heinonen 46f29944c3 Remove races from DPMI async event handling. 2003-10-14 05:20:34 +00:00
Gerald Pfeifer 9b4b21b7b0 Fix function pointer variable declaration in __wine_process_init(). 2003-10-14 05:19:24 +00:00
Alexandre Julliard e55d5937ac Set or clear the BeingDebugged flag in the PEB when a debugger is
attached to or detached from a process.
Don't send exception events to the server unless a debugger is
present.
2003-10-14 01:30:42 +00:00
Alexandre Julliard 08a64e6e6a Moved the pthread emulation into the main binary so that we don't need
to link it against ntdll.
2003-10-10 23:37:18 +00:00
Alexandre Julliard a438ebc509 Fixed importing of dlls with no exports (reported by Warren Baird).
Don't crash on an empty load order specification (reported by Maxime
Bellengé).
Try to avoid crashing when an import is missing for a builtin dll.
2003-10-10 23:28:51 +00:00
Alexandre Julliard 21066d0d44 Link kernel32 as a normal dll. 2003-10-10 00:23:47 +00:00
Alexandre Julliard 410e6b7b39 Changed the init code to make libwine load only ntdll and transfer
control to it, and then have ntdll load kernel32 using the normal
loader mechanisms.
Get rid of BUILTIN32_LoadExeModule.
2003-10-10 00:12:17 +00:00
Alexandre Julliard 5cb5aa6346 Use the Rtl bitmap functions to implement Tls allocation.
Get rid of the PDB structure.
2003-10-09 19:58:56 +00:00
Alexandre Julliard 96118aeafb Added a few missing exports. 2003-10-09 05:00:41 +00:00
Alexandre Julliard 20e73d739a Moved the constructor for the initial TEB to ntdll so that it runs as
early as possible on startup.
2003-10-09 04:59:03 +00:00
Alexandre Julliard 67d9f38059 Added __wine_set_signal_fs function to avoid sharing the
SYSLEVEL_Win16CurrentTeb variable between kernel and ntdll.
On the kernel side, replaced SYSLEVEL_Win16CurrentTeb by
CallTo16_TebSelector stored directly in the asm relay code to avoid a
run-time relocation.
2003-10-08 22:59:22 +00:00
Alexandre Julliard 2de67b8428 Duplicate parts of the relay debugging init code into kernel to avoid
referencing ntdll internal symbols.
2003-10-08 22:41:12 +00:00
Alexandre Julliard 0de2fde550 Moved build_command_line back to kernel and make it handle Unicode
properly.
2003-10-08 22:38:52 +00:00
Pavel Roskin e5e1844d24 Include ntdll_misc.h to get the GetCurrentProcess/ThreadId macros. 2003-10-08 22:34:37 +00:00
Pavel Roskin 3ec73af37f Include ntdll_misc.h to get the GetCurrentProcess/ThreadId macros. 2003-10-08 19:11:08 +00:00
Pavel Roskin 91f234f267 Eliminate dependency on SetLastError(). 2003-10-08 19:10:33 +00:00
Alexandre Julliard 687ecfa312 Moved a few more functions to the dlls/kernel directory. 2003-10-08 04:24:49 +00:00
Alexandre Julliard b81d9e7cf4 Link all remaining files that contain kernel APIs into kernel32.dll
instead of ntdll.dll. Removed a number of no longer needed files.
2003-10-08 03:57:02 +00:00
Alexandre Julliard 953849f2fc Added hack to call CreateFileW through a pointer so that we don't need
to link to kernel functions.
Commented out SMB support in NtReadFile for now.
2003-10-08 03:51:31 +00:00
Alexandre Julliard 01def427b7 Pass the cdrom device path in CDROM_InitRegistry so that ntdll doesn't
need to call DRIVE_GetDevice.
Get rid of GetDriveType calls.
2003-10-08 02:59:22 +00:00
Alexandre Julliard 87ae825bf8 Get rid of the argv0 and full_argv0 global variables. 2003-10-08 00:45:01 +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 146afcc98c Removed references to GetSystemDirectoryW.
Optimized module lookup a bit.
Keep track of the modref pointer across builtin dll loads to avoid
having to look it up by name afterwards.
2003-10-07 22:56:34 +00:00
Rein Klazes c6c404dcd6 Added a check for <scsi/scsi.h> and include it in dlls/ntdll/cdrom.c. 2003-10-07 22:49:22 +00:00
Alexandre Julliard 5d9422b09f Rewrite of the dll file search algorithm to better deal with the
broken behavior of RtlDosSearchPath_U.
2003-10-07 03:48:42 +00:00
Alexandre Julliard 509e4d175a A couple more fixes in RtlGetFullPathName_U.
Reverted my previous fix in RtlDosSearchPath_U, extension handling is
supposed to be broken.
2003-10-07 03:46:34 +00:00
Alexandre Julliard 632676b17e Moved the final process init and dependency loading to
dlls/ntdll/loader.c, (ab)using the LdrInitializeThunk entry point.
2003-10-06 21:18:51 +00:00
Alex Pasadyn 0f5db95401 Fix buffer length error code for NtQueryInformationToken. 2003-10-06 21:04:06 +00:00
Daniel Marmier 0348649853 Fixed warnings with gcc option "-Wwrite-strings". 2003-10-06 21:03:32 +00:00
Alexandre Julliard 841f898663 Converted process creation to Unicode. 2003-10-04 04:09:41 +00:00
Alexandre Julliard 5e3549bf3b Implemented RtlCreateProcessParameters and related functions. 2003-10-04 03:11:57 +00:00
Eric Pouech 7760413f6b Fixed a couple of bugs in RtlGetFullPathName_U. 2003-10-04 03:06:58 +00:00
Uwe Bonnes 6d59b887cd SNOOP_ShowDebugmsgSnoop(): check for NULL function name. 2003-10-04 03:05:58 +00:00
Michael Günnewig 4d375d1b8b Fixed warnings with gcc option "-Wwrite-strings". 2003-10-04 03:04:45 +00:00
Alexandre Julliard fbb5390a32 Avoid closing the cdrom if we failed to open it. 2003-10-03 04:35:55 +00:00
Pavel Roskin 8956e41b82 Add support for SCSI CD-ROMs to CDROM_GetInterfaceInfo().
Fix device number for IDE CD-ROMs.  Return 0 for unsupported drives.
2003-10-03 04:33:25 +00:00
Alexandre Julliard 4137aecaa5 Changed LdrLoadDll to only search for the dll in the specified path,
using ntdll functions.
Moved LOAD_WITH_ALTERED_SEARCH_PATH functionality to LoadLibraryEx
where it belongs.
2003-10-02 04:58:49 +00:00
Alexandre Julliard 28c3c2f0f0 Fixed a couple of bugs in RtlDosSearchPath_U and RtlGetFullPathName_U.
Make RtlDoesFileExists_U do something useful by calling CreateFileW
for now.
2003-10-02 04:43:45 +00:00
Gerald Pfeifer aa0f37940f Cast time_t parameters to fprintf(...,"%l",...) to long. 2003-10-02 04:29:30 +00:00
Jon Griffiths 4c1fa161a3 Documentation updates. 2003-10-01 03:20:21 +00:00
Alexandre Julliard c30cefb2d5 Store module names in Unicode in the server. 2003-09-30 01:04:19 +00:00
Alexandre Julliard f80b869939 Converted most of the loader code to Unicode. 2003-09-29 20:42:24 +00:00
Alexandre Julliard 1cb92bbeec Converted the load order code to use Unicode throughout. 2003-09-27 03:50:40 +00:00
Alexandre Julliard 74c5efeb76 Moved WINE_MODREF definition to loader.c.
Removed short module name from WINE_MODREF, Windows doesn't have it.
Rewrote LdrGetDllHandle to only use Unicode.
2003-09-25 23:55:35 +00:00
Alexandre Julliard 2052538a47 Moved loadorder support to dlls/ntdll.
Removed the --dll option and replaced it by the WINEDLLOVERRIDES
environment variable.
2003-09-25 20:33:41 +00:00
Jon Griffiths 90535ce905 Various test fixes for XP/msvc. 2003-09-25 20:29:40 +00:00
Alexandre Julliard 16cd86197a Moved DLLFLAGS to a separate variable instead of including it in
DEFS.
2003-09-24 19:01:44 +00:00
Alexandre Julliard 240b0a9b48 Moved the Windows version code to dlls/ntdll, and implemented
RtlGetVersion and RtlVerifyVersionInfo.
Moved the 16-bit and DOS version support to dlls/kernel.
2003-09-24 05:26:00 +00:00
Jon Griffiths fe455456af Documentation updates. 2003-09-24 05:14:39 +00:00
Steven Edwards 807e4af46e Porting fix. 2003-09-22 19:28:21 +00:00
Alexandre Julliard a37e7608c7 Moved 32-bit relay and snoop support to dlls/ntdll. 2003-09-19 04:32:39 +00:00
Alexandre Julliard 97ad311e71 Moved the 32-bit builtin loader and the remaining bits of the PE
loader into dlls/ntdll/loader.c.
2003-09-19 04:04:57 +00:00
Eric Pouech c3e6c095e1 Implemented kernel32.GetIoProcessCounters and stubbed
ntdll.NtQueryProcessInformation(ProcessIoCounters).
2003-09-19 00:06:45 +00:00
Alexandre Julliard 52f692fb9b Moved the wine server client-side support to dlls/ntdll. Removed a
couple of unnecessary functions.
2003-09-18 23:27:19 +00:00
Alexandre Julliard ec39821750 Moved 16-bit global heap, DOS memory and selector functions to
dlls/kernel.
2003-09-18 20:58:41 +00:00
Alexandre Julliard bff860c4b1 Moved synchronization and syslevel routines to dlls/kernel. 2003-09-18 04:39:13 +00:00
Alexandre Julliard dccbbcd5d5 Link msdos/int21.c into kernel for now, until it is properly moved to
winedos.
2003-09-18 00:58:48 +00:00
Alexandre Julliard 9eb1d2c7fa Moved I/O port handling to dlls/winedos. 2003-09-17 22:45:46 +00:00
Alexandre Julliard aaf3503ea5 Moved almost all remaining process, thread, fiber and exception
functions to dlls/kernel.
2003-09-17 05:31:32 +00:00
Alexandre Julliard 1479aebda3 Moved instruction emulation to dlls/kernel. 2003-09-17 04:34:31 +00:00
Steven Edwards c07808a04b Remove redundant includes. 2003-09-17 04:16:51 +00:00
Alexandre Julliard 65e7196fed Moved most kernel string functions to dlls/kernel. 2003-09-16 20:35:42 +00:00
Alexandre Julliard 0f170015f1 Moved most 32-bit heap functions to dlls/kernel. 2003-09-16 20:34:14 +00:00
Eric Pouech 9fd54b2838 - Implemented a few information classes in NtQuerySystemInformation.
- Added handle information to (wineserver) process snapshot.
2003-09-16 01:07:21 +00:00
Francois Gouget ae50013017 Fix the case of product and company names. 2003-09-08 19:38:45 +00:00
Alexandre Julliard 2eb5d8b9b1 On TlsFree, clear the released TLS index in all threads. 2003-09-08 19:02:01 +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 80e34dbb66 Moved the implementation of the pthread wrappers to dlls/kernel. 2003-09-03 00:26:08 +00:00
Alexandre Julliard ca3bfd8318 Export SYSDEPS_SwitchToThreadStack() functionality from libwine as
wine_switch_to_stack().
2003-08-29 22:23:42 +00:00
John K. Hohm a3f6410f9e Set SE_GROUP_ENABLED in Attributes of Administrators SID during
NtQueryInformationToken for TokenGroups.
2003-08-29 22:10:53 +00:00
Alexandre Julliard 7df1b9e03a Start using the exported TEB structure from winternl.h where
possible.
2003-08-28 19:57:35 +00:00
Dave Belanger 06da8c2869 Fixed a compile error. 2003-08-28 19:39:42 +00:00
Alexandre Julliard b91e9cb3e6 Renamed a few more TEB fields. 2003-08-28 03:44:41 +00:00
Alexandre Julliard ee106783d0 Renamed EXCEPTION_FRAME to EXCEPTION_REGISTRATION_RECORD since that
seems to be the official name.
2003-08-28 03:07:56 +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 bf97962a51 Avoid including stackframe.h if it's not needed. 2003-08-27 02:52:17 +00:00
Alexandre Julliard 94463d7bbe Moved profile functions to dlls/kernel. 2003-08-26 02:54:37 +00:00
Alexandre Julliard 0ac9690081 Moved 16-bit relay and snoop support to dlls/kernel. 2003-08-26 02:28:59 +00:00
Alexandre Julliard 3be5d62b29 Moved 16-bit calls initialization and exception handling to kernel32.
Store the call_to_16 return address on the stack from the C code so
that we don't need two variants of call_to_16_regs.
2003-08-25 00:56:37 +00:00
Alexandre Julliard 9ca159b61a Moved 16-bit builtin module handling to dlls/kernel/ne_module.c. 2003-08-23 23:07:10 +00:00
Alexandre Julliard af62e83d1c Got rid of 16-bit glue code generation since it is no longer used. 2003-08-23 00:45:20 +00:00
Alexandre Julliard 5fbb446cfc Moved most of the 16-bit task support and NE module loader to
dlls/kernel.
2003-08-23 00:03:40 +00:00
Alexandre Julliard aee989a7ed Store the debug info structure on the thread stack.
Moved thread initialization code from sysdeps.c to thread.c to avoid
an indirection.
2003-08-21 21:34:33 +00:00
Alexandre Julliard 864ca06832 winnls.h must not include winbase.h. 2003-08-20 18:22:31 +00:00
Dmitry Timoshkov 4aec75f017 Apply only specified tests.
Implement IS_TEXT_UNICODE_REVERSE_SIGNATURE, IS_TEXT_UNICODE_STATISTICS
and IS_TEXT_UNICODE_NULL_BYTES tests.
Revert IS_TEXT_UNICODE_ODD_LENGTH test.
2003-08-20 03:34:45 +00:00
Alexandre Julliard 9b8a0595bc _ftol should return a 64-bit int (spotted by Jon Griffiths). 2003-08-19 01:03:08 +00:00
Jon Griffiths 08922859c6 Make RtlTimeToSecondsSince1970 consistent with other time calls.
Documentation fixes.
2003-08-19 00:56:34 +00:00
Jon Griffiths 228f22e967 Add some new types and functions.
Remove ITU_IMPLEMENTED_TESTS, its not part of the Win32 Api.
2003-08-18 19:54:13 +00:00
Eric Pouech a851c88001 Regression fixes for Nt{Read|Write}File:
- actually block in TIMEOUT mode
- in overlapped mode, if any data is already available then process it
  without returning a pending status code
2003-08-18 19:45:53 +00:00
Alexandre Julliard 03d7998970 Moved __errno_location() handling to pthread.c, and added similar
handling for __res_state().
2003-08-15 03:55:06 +00:00
Alexandre Julliard 52b9cedb8e Don't try to allocate the debug info before the process heap exists. 2003-08-13 01:09:45 +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 06e34ffc12 Minor tracing fix. 2003-08-12 20:34:06 +00:00
Alexandre Julliard 97d862c93c Fixed the pthread wrappers to work with the new glibc/linuxthreads
interface in glibc 2.3.2.
2003-08-12 18:59:13 +00:00
Alexandre Julliard d7fca891e9 Avoid non-portable long long constants. 2003-08-06 22:09:11 +00:00
Alexandre Julliard 8669193d11 Properly free thread stacks on NPTL systems. 2003-08-02 00:44:25 +00:00
Mike McCormack 36cd6f5dbb Added a security token object in wineserver. 2003-07-24 00:07:00 +00:00
Pierre d'Herbemont 8eb55b8892 Added PowerPC support in SYSDEPS_SwitchToThreadStack. 2003-07-24 00:02:40 +00:00
Marcus Meissner 20ea3a2d52 Added missing register defines for Linux/PPC. 2003-07-21 20:03:07 +00:00
Jon Griffiths 3c95046d03 Fix -W warnings. 2003-07-19 03:06:03 +00:00
Alexandre Julliard 0fb0f2a306 Print status codes in hex. 2003-07-18 23:00:49 +00:00
Jon Griffiths 7787587587 Documentation updates. 2003-07-18 22:55:28 +00:00
Jon Griffiths b62fb40f54 Added some new Rtl* tests. 2003-07-18 22:55:15 +00:00
Pierre d'Herbemont 3b9f280d81 Change __darwin__ to __APPLE__. 2003-07-16 23:29:40 +00:00
Pierre d'Herbemont 41670d3ed7 Added support for the TEB on Mac OS X. 2003-07-16 23:29:14 +00:00
Francois Gouget 3ca761220a Spelling fixes (s/occured/occurred/ and variants). 2003-07-15 20:53:39 +00:00
Paul Rupe eede817da2 register_new_async sets status already. Do not overwrite it with the
function's return value.
2003-07-11 21:44:17 +00:00
Alexandre Julliard 09029b2878 Implemented the SMTO_ABORTIFHUNG flag of SendMessageTimeout. 2003-07-11 04:09:42 +00:00
Dmitry Timoshkov 14d766845c Fix spec entry for ZwSetTimerResolution. 2003-07-09 19:44:51 +00:00
Alexandre Julliard 4f196ead13 Implemented the ThreadBasicInformation case for
NtQueryInformationThread.
2003-07-09 02:57:57 +00:00
Mike McCormack 99c67eefcd Null parameters need to be quoted on the commandline. 2003-07-09 02:50:15 +00:00
Alexandre Julliard 4f4b980c1e Implemented NtRead/WriteVirtualMemory. 2003-07-08 21:18:45 +00:00
Alexandre Julliard d9780a8b3e Fixed compile when functions are not inlined. 2003-07-03 18:12:38 +00:00
Francois Gouget 14a5d168e9 Fixed some common spelling errors. 2003-07-02 04:37:26 +00:00
Eric Pouech 675b75597b - removed next & prev fields from WINE_MODREF and implement instead
the three linked lists in LDR_MODULE
- added PEB_LDR_DATA structure to PEB
- removed a couple of no longer needed global & static variables
2003-07-01 03:38:56 +00:00
Jukka Heinonen 2a3ce4c425 Start processing asynchronous DOS events in DPMI mode. 2003-07-01 03:37:41 +00:00
Alexandre Julliard 217fdab78f Implemented NtDelayExecution and make Sleep call it.
The handle count must not be 0 in NtWaitForMultipleObjects (spotted by
Troy Rollo).
2003-06-30 21:00:15 +00:00
Dmitry Timoshkov 85d4281616 Implement LCMapString using unicode collation tables.
Move CompareString and LCMapString to dlls/kernel/locale.c.
2003-06-27 19:02:23 +00:00
Alexandre Julliard 4cb212063b Moved some of the process functions to dlls/kernel.
Removed kernel dependencies from sysdeps.c and moved it to dlls/ntdll.
2003-06-27 04:08:04 +00:00
Alexandre Julliard b379334271 Make sure to return an error if load_dll fails because the load order
is empty.
2003-06-27 04:06:23 +00:00
Troy Rollo b58e121326 Removed FIXME when loading second exe file. 2003-06-27 04:05:27 +00:00
Eric Pouech 9bd4f6bf15 - made async.h ready for use in ntdll: replaced all calls to kernel32
functions with ntdll equivalent
- replaced status setter/getter for wine async structures with direct
  access to a (now included) IO_STATUS_BLOCK structure
- since we now have a IO_STATUS_BLOCK in async_private, we no longer
  need in most of the user (derivated) structures a field for
  LPOVERLAPPED (it's stored as the IO_STATUS_BLOCK)
- rewrote the async.h users accordingly
- implemented ntdll.Nt{Read|Write}File and let
  kernel32.{Read|Write}File(Ex)? use those new ntdll functions
- rewrote smb read/write interfaces to be more ntdll stylish (no
  overlapped yet)
2003-06-26 02:08:17 +00:00
Eric Pouech 583bb3fd3e - started implementing ntdll.NtDeviceIoControlFile and made
kernel32.DeviceIoControl call it
- changed cdrom ioctl function's prototype to stick to
  ntdll.NtDeviceIoControlFile signature
2003-06-24 19:28:21 +00:00
Alexandre Julliard dc4b0c7655 Moved tape.c to dlls/kernel.
Moved critical section and resource update functions to dlls/kernel.
Started moving some of the thread functions too.
2003-06-24 03:34:15 +00:00
Eric Pouech f6a70969e1 - start moving a few file related functions from files/file.c to
dlls/kernel subdir (also splitting 16bit APIs in a separate file)
- implemented ntdll.Nt{Lock|Unlock}File, and made use of those for the
  kernel32 equivalent
- implemented a few information classes in NtQueryInformationFile and
  NtSetInformationFile (still lots of missing classes)
- enhanced the get_file_info server request in order to implement
  correctly NtQueryInformationFile (change time & file alloc size)
- rewrote registry loading to comply with latest changes
2003-06-24 02:32:01 +00:00
Eric Pouech c962a6997c - in kernel32, replaced all {Enter|Leave}CriticalSection calls with
ntdll counterparts
- {Enter|Leave}CriticalSection is now a pure forward from kernel32 to
  ntdll (we now longer can use {Enter|Leave}CriticalSection in kernel32)
- replaced a few kernel32 heap management calls from ntdll, with
  RtlHeap* equivalents
2003-06-23 18:12:28 +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
Francois Gouget 9591836ffb 'sizeof type' is best avoided as it won't always compile (e.g. 'int
main() {return sizeof int;}'). Use 'sizeof(type)' instead.
2003-06-18 19:45:22 +00:00
Francois Gouget c5f775a9c7 Typos/spelling fixes. 2003-06-18 03:30:39 +00:00
Eric Pouech 9d0fa2f02e - kernel32's environment tests: a few more tests now succeed
- added some console related tests to process creation
- added a few more test cases to the ntdll environment tests
2003-06-18 03:24:20 +00:00
Eric Pouech b53b5bcb50 - fixed a couple of bugs in ntdll environment functions (one in trace,
the other one in environment variable expansion)
- the process parameters, when passed thru wineserver, are now fully
  handled in ntdll, they are stored in the RTL_USER_PROCESS_PARAMETERS
  structure.
- later on in kernel32 loading sequence, those parameters are copied
  into STARTUPINFO shadow structures
- later modification to those paramters are now reflected to the
  RTL_USER_PROCESS_PARAMETERS structure (and STARTUPINFO is kept
  untouched) (for example, StdHandle setting) (Win 2k behaves like this)
- ENVDB has been removed
- command line inheritance (from unix command line) is now purely in ntdll
- all kernel32 environment functions now rely on their ntdll counterparts
- goodies: input/output handle inheritance while asking for a detached
  console is better handled; a few more kernel32 environment tests now
  pass ; silenced a valgrind warning in process creation
2003-06-18 03:23:22 +00:00
736ff98510 Added AddAccessAllowdAceEx, AddAccessDeniedAceEx, GetAclInformation. 2003-06-16 19:44:06 +00:00
Mike Hearn 25b4d10138 Add the ID of the blocking thread to the error message. 2003-06-16 19:36:22 +00:00
Eric Pouech 2e5cdf95da Implemented:
- RtlDoesFileExists_U as a stub
- RtlDosSearchPath_U
2003-06-16 01:24:30 +00:00
Jukka Heinonen ae906923a1 Remove SIGALRM handler.
Reserve TEB field for DPMI virtual interrupt flag.
2003-06-16 01:18:26 +00:00
Eric Pouech 1bb3859ece Added support for overlapped ioctl requests (and a few other
cosmetics).
2003-06-13 16:33:50 +00:00
Eric Pouech 8638b26483 Correctly convert into EXCEPTION_RECORD SIGTRAPs received from
DebugBreakProcess.
2003-06-07 00:33:13 +00:00
Yorick Hardy 4b1f667e73 Improve CDROM_GetIdeInterface (becomes CDROM_GetInterfaceInfo), in
order to better support SCSI drives.
2003-06-04 20:15:59 +00:00
Yorick Hardy 6dd0685f74 Use SA_RESTART on NetBSD. 2003-06-04 20:15:10 +00:00
Jukka Heinonen 38fa857648 Timer routines must check for NULL timer name. 2003-06-04 20:14:24 +00:00