Commit Graph

204 Commits

Author SHA1 Message Date
Mike McCormack e61ad3a9f3 Implement overlapped completion routines.
Don't use lpOverlapped->OffsetHigh to store bytes to transfer.
2001-07-12 22:29:41 +00:00
Mike McCormack de7c3003e2 Start implementing named pipes. 2001-07-10 19:16:49 +00:00
Mike McCormack a38e5e5771 Implement ReadFileEx and WriteFileEx (lpOverlappedCompletion routine
is not supported yet...)
2001-07-08 20:29:26 +00:00
Patrik Stridvall 01d5e5b071 Documentation fixes. 2001-07-02 19:59:40 +00:00
Mike McCormack 838a3614f6 Declare stubs for ReadFileEx, WriteFileEx. 2001-07-02 18:56:01 +00:00
Patrik Stridvall 3ca9823941 Documentation ordinal fixes. 2001-06-20 23:03:14 +00:00
Patrik Stridvall dae8de69e2 Documentation ordinal fixes (using winapi_fixup). 2001-06-13 20:13:18 +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
Marcus Meissner 3f1ed52d8b Implemented 64bit file size handling.
Removed several unneeded sys/stat.h includes.
2001-05-14 20:09:37 +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
Andreas Mohr 12bf7f1dde GetFileInformationByHandle() fails for pipe handles according to
MSDN, and also for serial handles (FILE_TYPE_CHAR in general ?).
2001-03-05 19:30:52 +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
Gerard Patel d52e1c4be9 Gives back the ERROR_FILE_NOT_FOUND to GetFileAttributes. 2001-02-16 19:05:42 +00:00
Jon Griffiths 0cfa278b02 SetLastError() for GetFileAttributesA. 2001-02-14 00:26:46 +00:00
Patrik Stridvall bca4a8dce0 Documentation argument fixes. 2001-02-12 03:49:57 +00:00
Andreas Mohr c9cf70d448 Some more cleanups. 2001-01-26 20:40:50 +00:00
Alexandre Julliard 7d5bc5c3f9 Removed some direct accesses to the 16-bit task structure. 2001-01-15 20:09:09 +00:00
Mike McCormack eb3e38eb73 Swap lpOverlapped parameters in ReadFile and WriteFile.
The InternalHigh member should contain the number of
bytes transferred.
2001-01-12 19:57:38 +00:00
Mike McCormack f21aac0e0c Implemented asynchronous ReadFile and WriteFile. 2001-01-10 22:45:03 +00:00
François Gouget 4b4f69ad38 The last parameter of CreateFile should be 0 (aka NULL), not -1.
CreateFile returns INVALID_HANDLE_VALUE when it fails, not
HFILE_ERROR.
Added comments.
2001-01-09 20:51:19 +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
Mike McCormack ad72e71fda Implemented GetOverlappedResult. 2000-12-29 19:44:18 +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 5801723b50 Replaced WIN16_GlobalLock16 by "official" function K32WOWGlobalLock16. 2000-12-22 01:09:26 +00:00
Alexandre Julliard 1ab243bac1 Merged the get_read_fd and get_write_fd requests. 2000-12-19 02:12:45 +00:00
Alexandre Julliard 982a223f36 Replaced PTR_SEG_TO_LIN macro by exported MapSL function.
Fixed a few ptr/segptr mismatches.
Moved CONV_RECT/POINT macros to wingdi16.h.
2000-12-13 20:20:09 +00:00
Aric Stewart e4d09327ef Added ASCII-only version of toupper, tolower, strcasecmp and the like
for file and module I/O.
2000-12-03 03:14:29 +00:00
Alexandre Julliard 27bb311d70 Added implementation of lstat to port.c. 2000-11-29 17:48:06 +00:00
Alexandre Julliard 24a62ab9b0 Got rid of the Wine internal lstrcpy* functions and of winestring.h. 2000-11-28 22:40:56 +00:00
Alexandre Julliard 5ce902b0b9 Implemented DosFileHandleToWin32Handle, Win32HandleToDosFileHandle and
DisposeLZ32Handle and use them to replace file.c internal functions.
Renamed WOW* functions into K32WOW*.
2000-11-27 21:59:08 +00:00
Dimitrie O. Paun 864dc5981c Use variable argument macros when compiling with gcc. 2000-11-10 23:31:06 +00:00
Dimitrie O. Paun dbb61c0f3e Use debugging API instead of outputing to stderr directly. 2000-11-04 02:55:54 +00:00
Andreas Mohr 220312e993 Skip directory symlinks in DOSFS_FindNextEx. 2000-10-19 20:38:38 +00:00
Alexandre Julliard 27952ef0ee Added a few more large integer functions. 2000-10-13 20:26:03 +00:00
Alexandre Julliard 83f52d11c1 Moved all Win16 definitions out of the standard Windows headers. 2000-09-26 22:20:14 +00:00
Alexandre Julliard 6dbf67e566 Moved FILE_dommap() to memory/virtual.c (and renamed it VIRTUAL_mmap). 2000-09-18 01:44:08 +00:00
Andreas Mohr 20cd9356a8 - fixes debugger output
- get rid of wrong comments
- fix comments
- .spec spelling fix
- improve warning message
2000-09-12 23:40:40 +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
Marcus Meissner 242d23e9a3 (from IBM TopPage patch) return correct error for already existing
file.
2000-08-21 03:18:32 +00:00
Alexandre Julliard e101f6db3b Cleaned up a few inter-dll dependencies. Added a few imports. 2000-08-14 14:42:41 +00:00
Alexandre Julliard 231674d824 Removed the DOS handles table from the PDB and made it a static
variable.
2000-08-09 22:30:18 +00:00
Alexandre Julliard a007f3364a Moved a few non-standard headers into their respective dlls. 2000-08-09 00:54:58 +00:00
Alexandre Julliard cb10fdab99 Replaced lstrlen/lstrcmp by libc equivalents everywhere we don't need
to trap exceptions.
2000-08-06 02:41:16 +00:00
Hidenori Takeshima 66791afa8f Fix for 64-bit negative seek value. 2000-07-31 23:26:50 +00:00
Andreas Mohr 2caee712a2 Spelling fixes. 2000-07-16 15:44:22 +00:00
Stas Sergeev feb71a6950 mmap() fails with ENODEV on NTFS under Linux. 2000-06-07 03:16:01 +00:00
Gerard Patel f69c1501a8 Revert the test for Virtual_HandleFault in ReadFile/WriteFile. 2000-05-07 18:26:19 +00:00
Alexandre Julliard 045d81f16c Added ENOEXEC error code. 2000-05-01 16:20:23 +00:00
Andreas Mohr af7e1ae5c5 FILE_CreateFile()'s read/write-check was broken due to checking of
ERROR_xxx instead of STATUS_xxx.
2000-04-13 15:58:30 +00:00
Alexandre Julliard fbace6eefe Added a per-drive FailReadOnly flag, and removed the global
--failreadonly option.
2000-04-04 20:35:45 +00:00
Alexandre Julliard 8a971bfec0 Fixed file descriptor leaks. 2000-04-04 19:57:23 +00:00
Patrik Stridvall 2d6457c11a Added/fixed some documentation reported by winapi_check. 2000-03-28 20:22:59 +00:00
Francois Gouget 6d77d3a1df Use min/max instead of MIN/MAX. 2000-03-25 21:44:35 +00:00
Matthew Cline 8bfd825fbe Added WARN messages on open errors. 2000-02-18 19:05:11 +00:00
Alexandre Julliard 90476d6b4a Moved SystemHeap allocations to the process heap. 2000-02-16 22:47:24 +00:00
Alexandre Julliard 383da68cf9 Optimized debugging API to reduce code size. 2000-02-10 22:15:21 +00:00
Marcus Meissner dd7523d518 Handle \\.\<dosdevice> like <dosdevice> in CreateFile. Tested with
help of James Feeney <james@nurealm.net>.
2000-01-23 02:18:27 +00:00
Peter Ganten f6c4388e61 Return an error if lpOverlapped is provided to ReadFile / WriteFile. 1999-12-11 23:08:00 +00:00
Alexandre Julliard 86a755343b Fixed MoveFileExA behavior when target file does not exist. 1999-11-21 02:11:48 +00:00
Moshe Vainer 0ea089b6a8 Stub for GetOverlappedResult. 1999-11-10 19:51:01 +00:00
Gerard Patel c465e198af Remove prefixing by a tilde for GetTempFileName 32bits. 1999-10-24 20:48:54 +00:00
Jim Aston 031f4faaff Fixed compiling with STRICT. 1999-10-23 19:00:02 +00:00
Francois Boisvert 567bcf130f CreateFileA returns HFILE_ERROR when the filename contains a wild card. 1999-09-20 18:31:21 +00:00
Alexandre Julliard beb8fabf22 Removed async I/O support. 1999-08-01 14:51:26 +00:00
Howard Abrams 132774804e Added checks for sys/errno.h, sys/signal.h and sys/mman.h. 1999-07-10 13:16:29 +00:00
Alexandre Julliard 359f497e97 Converted to the new debug interface, using script written by Patrik
Stridvall.
1999-07-04 16:02:24 +00:00
Andreas Mohr e00114c414 Added UnlockFileEx stub. 1999-07-03 11:56:07 +00:00
Gerard Patel 8f3c0a375e Return ERROR_DISK_FULL for WriteFile. 1999-06-27 15:26:37 +00:00
Alexandre Julliard ebe29ef376 Further server optimizations:
- merged request and reply structures
- build requests directly into the buffer to avoid a copy
1999-06-26 08:43:26 +00:00
Alexandre Julliard 5bc78089db Made server communication faster by using a shared memory block.
A few other optimizations in request processing in the server.
Moved automatically generated request definitions to server.h and
removed include/server/request.h.
1999-06-22 17:26:53 +00:00
Uwe Bonnes e4f46dc3a2 CreateFileA/FILE_DoOpenFile: add verbose reporting of arguments. 1999-06-06 17:08:13 +00:00
James Juran e8df90b9ad Add stub for LockFileEx (KERNEL32.513). 1999-06-05 08:57:37 +00:00
Patrik Stridvall b4b9fae671 New debug scheme with explicit debug channels declaration. 1999-04-19 14:56:29 +00:00
Alexandre Julliard d5240f13db Mask off unsupported attributes in _lcreat (bug reported by Andreas Mohr).
Moved _lcreat16_uniq to int21.c
1999-04-03 13:54:51 +00:00
Alexandre Julliard 3f09ec5263 CLIENT_WaitReply: don't clear last error on success; fixed callers
accordingly (based on a patch by Juergen Schmied).
1999-02-28 19:25:51 +00:00
Alexandre Julliard 96c08d817c Use server handles directly for Win32 handles. Removed use of K32OBJ. 1999-02-28 13:27:56 +00:00
Alexandre Julliard a396029270 Large-scale renaming of all Win32 functions and types to use the
standard Windows names.
1999-02-26 11:11:13 +00:00
Marcus Meissner 317af320cf Optimized include/*.h: (recursively) include all headers needed by
this .h file, but only those. Necessary fixes to a lot of .c files,
started optimizing "windows.h" away from some of them. Moved
GetCurrentTask prototype to wine/winbase16.h.
1999-02-17 13:51:06 +00:00
Ulrich Weigand b7b205046f Call VIRTUAL_HandleFault if read/write returns EFAULT. 1999-02-09 15:29:27 +00:00
Juergen Schmied 639568276e Wrong access on server handle was demanded (GENERIC_READ instead of
GENERIC_WRITE).
1999-02-09 14:17:35 +00:00
Alexandre Julliard 4ff2a27c09 Changed DOS extended error handling to be based on SetLastError;
should be more thread-safe this way.
1999-01-31 15:23:45 +00:00
Marcus Meissner 6b5a811175 Some more warnings and bugs fixed. 1999-01-30 13:06:00 +00:00
Marcus Meissner b12e72d685 DOS programs use handles 0-4 without opening/closing any of those
handles first. Split up Init from AllocDosHandle and call it from
the DOSVM.
1999-01-23 14:01:08 +00:00
Alexandre Julliard 62a8b43301 Hacked server-side device support
Added user APCs support.
Many changes to the xterm console to make use of the server (not
finished yet).
Moved some other small stuff to the server.
1999-01-19 17:48:23 +00:00
Alexandre Julliard 8da12c43a9 Group commit for recovery after disk crash.
See Changelog for changes WRT release 990110.
1999-01-17 16:55:11 +00:00
Alexandre Julliard 638f169b1e Recovery of release 990110 after disk crash.
See Changelog for changes between 990103 and 990110.
1999-01-17 16:32:32 +00:00
Alexandre Julliard 0562539d18 Implemented file sharing checks in the server.
Added set file time server request.
Overall clean up of the file handling (DOS device handling is now
broken, should be redone).
1999-01-03 11:55:56 +00:00
Alexandre Julliard 6ebbe3c949 Cleaned up and removed some no longer used code. 1999-01-01 17:04:00 +00:00
Alexandre Julliard 55443878fc Removed client-side wait functions; all waiting is now done through
the server.
1998-12-31 15:52:06 +00:00
Alexandre Julliard fbe63adcc7 Reimplemented Read/WriteFile to use server file descriptors.
Removed file position hack as it is wrong for Win32 (should be redone
for Win16 only).
1998-12-30 12:10:06 +00:00
Alexandre Julliard 338e757d08 Added beginnings of server-side file handling.
Added -debugmsg +server support.
Better server request dumping for varargs requests.
1998-12-27 15:28:54 +00:00
Marcus Meissner ad7538bfc5 Made async IO (SIGIO) stuff from WINSOCK generic useable.
Added async IO support to FILE and CONSOLE objects.
1998-12-14 18:15:10 +00:00
Marcus Meissner 7d123bf0e4 Added Win32 synchro to FILEs (useful only for terminal handles). 1998-12-11 09:13:29 +00:00
Alexandre Julliard 0c0e3bebb8 Authors: Francis Beaudet <francis@macadamian.com>, Sylvain St-Germain <sylvain@macadamian.com>, Thuy Nguyen <thuy@macadamian.com>
Lots of new stubs.
1998-12-10 15:49:22 +00:00
Uwe Bonnes 99f1d37798 Fixed an error in the implementation of FILE_ShareDeny. 1998-11-06 16:39:57 +00:00
Jesper Skov 5c3e457b16 egcs 'ambiguous else' warnings fixes. 1998-11-01 19:27:22 +00:00
Uwe Bonnes 2e52589dea Give tempfile a different name even if they are created in the same
second. Removed some fixmes from the ShareDeny stuff.
1998-11-01 15:04:52 +00:00