Commit Graph

1451 Commits

Author SHA1 Message Date
Hans Leidekker 0844b702b4 ntdll: Add implementation of tape IOCTLs. 2006-01-26 13:23:08 +01:00
Dmitry Timoshkov 57a579ffcd Make more arrays const. 2006-01-24 14:00:32 +01:00
Alexandre Julliard 2a192064e8 ntdll: memcpy should behave like memmove in ntdll too. 2006-01-24 12:28:34 +01:00
Alexandre Julliard a1544e0d20 ntdll: Mark all libc-style functions as private to make sure we link
to the real libc functions instead.
2006-01-24 12:24:35 +01:00
Mike McCormack 2735fc58b9 ntdll: Forward ZwNotifyChangeDirectoryFile to NtNotifyChangeDirectoryFile. 2006-01-23 16:39:49 +01:00
H. Verbeet c1f52e0013 ntdll: Add a stubbed NtSetSystemInformation. 2006-01-20 19:41:04 +01:00
Alexandre Julliard 4ce433d826 ntdll: Move the %gs register to the ntdll_thread_regs structure. 2006-01-20 16:54:11 +01:00
Alexandre Julliard a19e3eeb20 ntdll: Move the TEB register to the ntdll_thread_regs structure. 2006-01-20 16:18:06 +01:00
Alexandre Julliard 4202824e9e ntdll: Cleaned up the ioctl functions.
Renamed function parameters to something usable.
Fixed potential event leaks.
2006-01-18 17:18:22 +01:00
Robert Shearman 2d08465b81 ntdll: Loader optimization.
Optimize for the case where a DLL with no path is requested and it is
already loaded.
2006-01-18 14:22:19 +01:00
Mike McCormack 2e32a425db ntdll: Add a test for NtNotifyChangeDirectoryFile. 2006-01-17 13:13:29 +01:00
Mike McCormack 9c58884161 ntdll: Use FILE_OPEN instead of OPEN_EXISTING when calling NtCreateFile. 2006-01-17 13:12:43 +01:00
Mike McCormack a3348cf4a0 ntdll: Use the NTAPI definition of EXCEPTION_ACCESS_VIOLATION. 2006-01-16 20:40:25 +01:00
Mike McCormack 0c728255a4 ntdll: Add a stub implementation of NtNotifyChangeDirectoryFile. 2006-01-16 20:40:11 +01:00
Alexandre Julliard 2878d99216 ntdll: Add debug registers to the context of all exceptions.
Maintain a local cache of the debug registers to avoid server calls
where possible.
2006-01-13 13:58:14 +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
Eric Pouech 2cdace2760 ntdll: Created infrastructure to support IOCTL for serial devices.
- created infrastructure in ntdll to support IOCTL for serial devices
- implemented IOCTLs in ntdll for serial break support
- implemented the kernel32 equivalent on top of those IOCTLs
2006-01-12 13:32:51 +01:00
Vitaliy Margolen 978f470692 ntdll: NtQueryInformationToken change parameters according to PSDK.
Check for NULL pointer.
2006-01-12 13:32:09 +01:00
Detlef Riekenberg 1be185f76e ntdll/tests: Skip tests if NtCurrentTeb doesn't exist. 2006-01-12 13:29:49 +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 2654be08d5 ntdll: Handle NtSetContextThread on the client side (as far as
possible) when setting the context of the current thread.
2006-01-11 20:20:32 +01:00
Eric Pouech 329ab98940 ntdll: Implemented ntdll.NtSetInformationThread(ThreadAffinityMask).
Reimplemented kernel32.SetThreadAffinityMask on top of it.
2006-01-11 12:32:19 +01:00
Alexandre Julliard 90e3865929 ntdll: NtRaiseException doesn't need to be a register function.
Moved common code between NtRaiseException and RtlRaiseException to a
separate raise_exception function.
2006-01-10 17:51:22 +01:00
Alexandre Julliard 45a4e5439b Set refcount to -1 on implicitly loaded dlls to avoid unloading them
(suggested by Michael Ost).
2006-01-04 14:55:33 +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
Eric Pouech b7607aebdc ntdll: Correct implementation for atom query functions. 2006-01-03 17:34:43 +01:00
Alexandre Julliard f54a59c072 ntdll/tests: Try to fail more gracefully on win9x.
Link to NtCurrentTeb dynamically.
2005-12-31 13:24:02 +01:00
Eric Pouech fe36b7baca ntdll: Made DBG_EXCEPTION_HANDLED a synonym of DBG_CONTINUE for exception handlers. 2005-12-20 11:47:27 +01:00
Alexandre Julliard 8651ceb18e ntdll: Make __wine_call_from_32_restore_regs take a context pointer.
Changed exception raise functions to call it explicitly.
2005-12-19 09:59:50 +01:00
Alexandre Julliard 5dc6d95952 ntdll: New implementation of relay thunks.
New implementation of relay thunks that doesn't require modifying code
on the fly, so that the thunks can be put in the text section.
Some performance improvements.
2005-12-18 10:45:01 +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 ae964ac801 Take advantage of the __EXCEPT_PAGE_FAULT macro. 2005-12-16 17:17:57 +01:00
Alexandre Julliard 324d86a3af Exception handling: Added a magic __EXCEPT_PAGE_FAULT macro to make it
easier to handle the common case of trapping page faults.
2005-12-16 16:58:47 +01:00
Alexandre Julliard db7920bb44 We no longer need to handle EXCEPTION_PRIV_INSTRUCTION on page faults. 2005-12-16 16:37:12 +01:00
Alexandre Julliard 07f84d0458 ntdll: More compatible exception information for protection faults.
Added a bunch of test cases.
2005-12-16 16:27:39 +01:00
Alexandre Julliard 15430f6eda Add -register hint in ntdll, kernel and msvcrt spec files. 2005-12-16 12:44:58 +01:00
Alexandre Julliard 50bbfb3c8c ntdll: Reimplemented _chkstk and _alloca_probe directly in assembly. 2005-12-15 10:48:12 +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
Vitaliy Margolen b05340a523 ntdll: Implement FSCTL_PIPE_WAIT NtFsControlFile ioctl.
Implement FSCTL_PIPE_WAIT NtFsControlFile ioctl.
Modify WaitNamedPipeW to use NtFsControlFile.
Replace struct overlapped with event.
2005-12-14 11:14:02 +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
Alexandre Julliard a510a7e117 server: Added access rights mapping to file objects. 2005-12-12 16:46:17 +01:00
Alexandre Julliard 67505c00af server: Support for opening devices.
Added support for opening devices directly with the server when they
don't correspond to a Unix file.
2005-12-12 14:27:45 +01:00
Eric Pouech 681b71ed9a Functions with no paramters must be (void). 2005-12-12 12:42:44 +01:00
Alexandre Julliard 03b040c51d server: Added object attributes to a few more requests. 2005-12-09 14:52:04 +01:00
Alexandre Julliard d02c4a1b82 Make wine_server_fd_to_handle use attributes instead of inherit flag. 2005-12-09 12:22:35 +01:00
Alexandre Julliard 7b910f40f2 server: Use attributes instead of inherit flag in dup_handle request. 2005-12-09 12:21:35 +01:00
Alexandre Julliard 836d07c369 server: Use attributes instead of inherit flag in token requests.
Also use the specified access rights in the open_token request.
2005-12-09 12:17:19 +01:00
Alexandre Julliard f2d7dd645e server: Use attributes instead of inherit flag in process and thread requests. 2005-12-09 12:13:11 +01:00
Alexandre Julliard f11d0a375f server: Use attributes instead of inherit flag in snapshot requests. 2005-12-09 12:09:44 +01:00
Alexandre Julliard 27b1aec925 server: Use attributes instead of inherit flag in file requests. 2005-12-09 12:00:48 +01:00
Alexandre Julliard 0603559de2 ntdll: Check for failure to get the user path in RtlOpenCurrentUser.
Fixed the return value type.
2005-12-08 11:53:42 +01:00
Vitaliy Margolen cf21d4d7ca Move mailslot devices into directory name space. 2005-12-05 13:30:26 +01:00
Vitaliy Margolen babfa79436 Move named pipe objects into directory name space.
Change tests accordingly.
Add small test for WaitNamedPipe.
2005-12-05 13:09:35 +01:00
Vitaliy Margolen 348a3d912b Move mapping (section) objects into directory name space. 2005-12-02 16:13:13 +01:00
Vitaliy Margolen 7c5cb7a229 Move timer objects into directory name space. 2005-12-02 16:05:54 +01:00
Vitaliy Margolen 5daae3dfa9 Move semaphore objects into directory name space. 2005-12-02 16:01:17 +01:00
Vitaliy Margolen f676bc8d85 Move event and mutex objects into directory name space. 2005-12-02 15:55:48 +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
Alexandre Julliard e21a97da85 Fixed some compiler warnings on Darwin. 2005-12-01 12:36:05 +01:00
Vitaliy Margolen 80444dfe51 Implement symbolic link object in wineserver.
Implement Nt[Create|Open|Query]SymbolicLinkObject.
Change tests accordingly.
2005-11-30 19:22:57 +01:00
Vitaliy Margolen 3c6bdcce53 Implement directory object in wineserver.
Implement Nt[Create|Open]DirectoryObject.
Change tests accordingly.
2005-11-29 17:21:05 +01:00
Alexandre Julliard 4cbf118d88 Check for a valid module before attempting to read the export
directory in LdrGetProcedureAddress.
2005-11-29 17:10:30 +01:00
Ge van Geldorp 1a1583a364 Match PSDK STATUS_* definitions. 2005-11-28 17:32:54 +01:00
Vitaliy Margolen 39e922ce72 Handle IOCTL_DISK_CHECK_VERIFY which is synonym for
IOCTL_STORAGE_CHECK_VERIFY.
2005-11-28 10:40:13 +01:00
Alexandre Julliard 0ec7e1a591 Renamed all .cvsignore files to .gitignore. 2005-11-26 13:10:33 +01:00
Francois Gouget d69268e77c Documentation tweaks to make winapi_check happy.
Also specify the documented spec file entry.
2005-11-23 20:14:04 +01:00
Alexandre Julliard cc01e8ff05 Preserve 16-byte stack alignment in the various assembly
functions. Needed for MacOSX.
2005-11-23 19:55:06 +01:00
Steven Edwards c5d8c105c3 Correct URL for version infomation database website. 2005-11-22 12:00:23 +00:00
Vitaliy Margolen 893987b871 Return correct error on name collision when creating new named
objects.
Check for correct error in affected places.
2005-11-21 16:27:03 +00:00
Alexandre Julliard 86397e1d43 Fixed handling of mailslot read timeout to avoid compiler warnings. 2005-11-21 15:23:49 +00:00
Vitaliy Margolen 6d905e81e1 More Object Manager tests. 2005-11-21 15:18:10 +00:00
Ken Thomases a63acd71c8 Updated context definitions for the latest Darwin/x86. 2005-11-15 18:15:56 +00:00
Alexandre Julliard 86f8aef511 Use proper asm name for external functions. 2005-11-15 12:05:45 +00:00
Dmitry Timoshkov adf48a3cc7 Add a test for RtlAllocateAndInitializeSid, make it pass under Wine. 2005-11-15 12:03:46 +00:00
Eric Pouech ca4ae96f33 NtReadFile: now returning correct status in NtReadFile for EOF
conditions (on files) and broken pipe (on named pipes).
2005-11-14 15:11:11 +00:00
Eric Pouech 63e5d5e5b9 Init wShowWindow in RTL_USER_PARAMETERS for Wine processes started
from the command-line.
2005-11-14 11:21:13 +00:00
Francois Gouget 0edbaf7e80 Remove spaces before '\n' in traces. 2005-11-10 12:14:56 +00:00
Markus Amsler ae542af541 Improve c2man Documented-Total count. 2005-11-09 10:30:57 +00:00
Mike McCormack 5b40551458 Add some missing timezones. 2005-11-08 10:57:50 +00:00
Ivan Leo Puoti a1cd3ab653 Implement RtlInitAnsiStringEx. 2005-11-07 11:14:45 +00:00
Robert Shearman 0ede610c4f LdrAccessResource should pop 16 bytes off the stack since it is a
WINAPI function.
2005-11-07 11:11:59 +00:00
Kevin Koltzau 079e7cac17 x86_64 references a named union, ensure unions are not nameless. 2005-11-05 10:43:50 +00:00
Kieran Clancy d1c7458643 Added another CST (Australian Central Daylight Time) to TZ_INFO. 2005-11-03 13:21:23 +00:00
Vitaliy Margolen 4e76f91f1a Get rid of CPU id when copying context 2005-11-03 09:54:47 +00:00
Alexandre Julliard 73c72390f8 Fixed Get/SetThreadContext to work properly on suspended threads.
Added a test case.
2005-11-02 20:54:12 +00:00
Robert Shearman cf8594f0fd Make LdrAccessResource call an internal function to satisfy Shrinker. 2005-11-02 14:18:20 +00:00
Vitaliy Margolen f2686d4620 Fix error returned when opening nonexistent pipes. 2005-11-02 14:15:09 +00:00
Ivan Leo Puoti 198557261b Minor fixes to rtl string functions. 2005-11-02 11:42:31 +00:00
Alexandre Julliard ff7795ef4c Don't send an extra signal when waiting for a debug event, just do a
normal wait.  Return the debug event status directly as return value
of the server call.
2005-11-01 21:47:07 +00:00
Alexandre Julliard d6f7adb367 Don't send the incoming context to the server for get_thread_context,
instead copy only the relevant fields of the return value on the
client side.
2005-11-01 21:41:26 +00:00
Vitaliy Margolen ecca104869 Fix error returned when exceeding allowed instances. 2005-11-01 21:37:30 +00:00
Vitaliy Margolen 1ca6e899ec - Use OBJ_CASE_INSENSITIVE in object lookup.
- Remove case_sensitive flag from namespace.
- Remove todo_wine from now succeeding tests.
2005-11-01 10:22:38 +00:00
Robert Shearman 2a02dd1f05 Make the call exception handler function more compatible with NT and
with what Shrinker expects.
2005-11-01 09:21:03 +00:00
Marcus Meissner 98ed5585c7 Added assembly implementation of EXC_CallHandler. 2005-10-31 14:08:05 +00:00
Alexandre Julliard a2fb7c1644 Added an implementation of the FSCTL_DISMOUNT_VOLUME ioctl that
attempts to unmount the Unix device.
2005-10-28 16:45:24 +00:00
Ivan Leo Puoti ce08973ffa Fix NtQueryDirectoryObject prototype, documentation, and the
definition of the structure it uses.
2005-10-28 16:42:11 +00: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
Alexandre Julliard 51fbfbb9bb Make show_dir_symlinks the default and get rid of the option. 2005-10-27 11:22:47 +00:00
Ivan Leo Puoti e1008c386f Add stub implementation for NtAccessCheckAndAuditAlarm. 2005-10-27 10:25:41 +00:00
Alexandre Julliard cb443bdb04 Attach to implicitly loaded builtin dlls on process startup. 2005-10-26 12:12:44 +00:00
Peter Beutner 4dcab2805c Proper implementation of IOCTL_{STORAGE,CDROM}_CHECK_VERIFY. 2005-10-26 10:13:09 +00:00
Vitaliy Margolen eb8478002d Cosmetic changes to NtCreateNamedPipeFile change "oa" to "attr". 2005-10-26 10:11:08 +00:00
James Hawkins b721ee0d41 Set the file_part for \\?\ long file names too. 2005-10-18 14:12:25 +00:00
Alexandre Julliard 45885d136c In parse_mount_entries return the loop device instead of the mounted
file for loop mounts.
2005-10-13 14:32:22 +00:00
Vijay Kiran Kamuju e573caf8f9 Added PHT time zone. 2005-10-10 18:03:56 +00:00
Alexandre Julliard b87bce1b99 Added a critical section around the fd cache until the race conditions
can be fixed properly.
2005-10-06 12:31:36 +00:00
Alexandre Julliard 7955fb01d7 Clear the single-step flag in setup_exception instead of in the
SIGTRAP handler to avoid having the assigmnent optimized out.
2005-10-04 15:56:34 +00:00
Alexandre Julliard c2bb910877 Ignore the size of the import directory, process imports until we find
a null entry.
2005-10-04 15:54:55 +00:00
Alexandre Julliard baa8bf3c74 Fixed a bug where we could set the wrong handle in the fd cache when
encountering the race condition in wine_server_handle_to_fd.
2005-10-03 18:46:57 +00:00
Ivan Leo Puoti e4512f0d57 Make a stub actually say "stub". 2005-10-03 18:44:52 +00:00
Vitaliy Margolen 6613580ea9 Add a few tests for object manager. 2005-09-30 10:33:54 +00:00
Alexandre Julliard 7e22be4d84 We are no longer generating .dbg.c files. 2005-09-29 10:35:58 +00:00
Alexandre Julliard 7ddab75619 Declare debug channels as static variables so that we don't need to
generate an external .dbg.c file to define them.
2005-09-28 18:34:00 +00:00
Alexandre Julliard a5e59421f5 Use Linux futexes instead of semaphores if possible for critical
section waits.
2005-09-28 18:21:48 +00:00
Eric Pouech b09582a890 Implemented kernel32 process affinity handling on top on ntdll. 2005-09-27 10:52:10 +00:00
Alexandre Julliard 2eaff5074f Fixed exception handling on MacOS. 2005-09-27 09:36:15 +00:00
Alexandre Julliard a443761b8d Export the temp buffer functionality in the debug functions interface
to allow sharing more code between libwine and ntdll.
2005-09-26 16:45:25 +00:00
Alexandre Julliard 43c6396e94 Use int instead of long in interlocked_* functions for 64-bit
compatibility.
2005-09-26 13:51:58 +00:00
Eric Pouech e21aa6a184 - now passing access rights when creating a named pipe in NTDLL
- reimplemented Kernel32.CreatePipe purely on top of NTDLL APIs
- anonymous pipe handles should have the SYNCHRONIZE bit set
2005-09-26 11:02:45 +00:00
Francois Gouget a8c7284f92 Assorted spelling fixes. 2005-09-26 10:58:41 +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
Vijay Kiran Kamuju bb53d096b1 Add MYT (Malaysian Time) and NOVST (Novosibirsk Summer Time). 2005-09-26 09:55:59 +00:00
Alexandre Julliard 9f859692f9 Replace DPRINTF by TRACE in a few places. 2005-09-25 15:23:21 +00:00
Alexandre Julliard 75c27e17b6 Defined a proper structure for debug channels.
Also put all the function pointers inside a structure and added
__wine_dbg_set_functions to change them instead of exporting the
pointers directly.
2005-09-23 10:52:07 +00:00
Alexandre Julliard 9f1c6de1ef We are no longer generating .spec.c files. 2005-09-21 14:42:52 +00:00
Alexandre Julliard 5cb97d833a Generate 16-bit spec files as assembly code too. 2005-09-21 14:23:54 +00:00
Alexandre Julliard 489c6b3865 Ignore relocations for unmapped pages. 2005-09-21 09:47:12 +00:00
Mike McCormack c818a4e662 Fix "empty body in an if/else-statement" warnings. 2005-09-21 09:46:28 +00:00
Alexandre Julliard 2cf740619f Fixed some trace format strings (reported by Gerald Pfeifer). 2005-09-18 11:15:16 +00:00
Alexandre Julliard 89024a63d3 Make the users of wine_call_from_32_regs save %eax so that we don't
need a special hack in the import thunk.
Added a get_pc_thunk_eax function to simplify the code a bit.
2005-09-18 11:13:54 +00:00
Alexandre Julliard ebf7a5d408 Preliminary implementation of signal handling for x86-64. 2005-09-16 19:40:52 +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 cdf92942b1 Use the proper size for the cmsg_fd structure on 64-bit plaforms. 2005-09-16 18:52:47 +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 7c1925a0f3 Remove the 'L' suffix on a number of constants to avoid comparison
errors on 64-bit platforms.
2005-09-13 15:00:32 +00:00
Eric Pouech ad0168967e Implemented kernel32.GetThreadTimes on top of ntdll's equivalent
function.
2005-09-12 22:01:33 +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 884599112e Use SIZE_T instead of ULONG for the size arguments of the virtual
memory functions.
2005-09-12 10:36:06 +00:00
Alexandre Julliard f8ee161a1b Fixed some traces to use the right printf format and avoid typecasts. 2005-09-12 10:30:05 +00:00
Alexandre Julliard 4c34d9386c Specify 64-bit integers as double instead of long long in spec files
so that we get the correct number of arguments.
2005-09-09 15:05:01 +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 c7d649483b Define GET_IP for x86_64. 2005-09-08 19:17:04 +00:00
Alexandre Julliard 7873573738 Fixed a comment. 2005-09-08 12:42:51 +00:00
Alexandre Julliard b4c69e0f12 Fix a file descriptor leak when opening the first file on a removable
device.
2005-09-08 11:04:34 +00:00
Eric Pouech 60cae6e289 Implemented kernel32:SetThreadPriority on top of ntdll's equivalent
functions.
2005-09-07 13:25:35 +00:00
Ivan Leo Puoti f0db7ab06b Added FSCTL_PIPE_LISTEN support. 2005-09-06 14:09:42 +00:00
Eric Pouech b3badc7dd3 - rewrite kernel32:{Set|Get}PriorityClass on top of ntdll equivalent
- priority for process in wineserver is now the NTDLL form (no longer
  the kernel32 one)
2005-09-06 10:25:11 +00:00