Martin Wilck
60cba9999c
Fixed some problems with asynchronous file IO.
2002-11-30 01:48:32 +00:00
Andrew John Hughes
ed800c69c8
Build ntdll with -DSTRICT.
2002-11-21 03:45:01 +00:00
Ryan Cumming
4cda16e03b
Implemented GetFileSizeEx (based on a patch by Steve Lustbader).
2002-11-15 04:12:10 +00:00
Ryan Cumming
768d98e7e9
- Silence annoying "Empty path passed" error.
...
- Set error correctly when an empty path is passed to DeleteFile.
2002-11-08 18:52:18 +00:00
Alexandre Julliard
64e047fed3
Get rid of FILE_ATTRIBUTE_SYMLINK (based on a patch by Bill Medland).
2002-10-25 03:32:10 +00:00
Patrik Stridvall
1298eb4053
Fixed mismatches between the Wine headers and the Microsoft headers.
2002-10-23 18:50:10 +00:00
Martin Wilck
6a504be56f
- Return correct error codes.
...
- Fix behaviour if files are on different Wine drives
- delete source if copy successful
- try rename() - files may be on the same Unix file system.
- Try copy/delete if rename() fails: files may be on the same DOS
drive, but on different Unix file systems.
2002-09-17 01:27:55 +00:00
Marcus Meissner
065d537939
Fixed "conditional expr is always true due to being unsigned < 0"
...
problem.
2002-09-17 00:00:30 +00:00
Dimitrie O. Paun
14fb095758
Mark files starting with a dot as FA_HIDDEN.
...
Add configuration option 'ShowDotFiles' to turn this feature off.
2002-09-16 22:44:38 +00:00
Martin Wilck
b18d32cff0
Wait timeout must be 0 if bWait == FALSE.
2002-09-13 17:55:33 +00:00
Alexandre Julliard
81bdcf126f
Removed references to advapi32 registry functions from some of the
...
kernel functions.
2002-09-13 17:47:44 +00:00
Alexandre Julliard
1668870f38
Fixed warnings caused by new winternl.h.
2002-09-12 22:28:01 +00:00
Patrik Stridvall
9c1de6de30
Moved all the content of the DDK files ntdef.h and ntddk.h to
...
winternl.h.
2002-09-12 22:07:02 +00:00
Martin Wilck
2b54cf91fc
Fix the behavior of GetOverlappedResult() and WSAGetOverlappedResult()
...
with non-manual-reset (auto-reset) events in the OVERLAPPED structures.
2002-09-12 17:56:30 +00:00
Alexandre Julliard
96d05d1559
Fixed permission check when renaming a directory (based on a patch by
...
Andriy Palamarchuk).
2002-08-27 01:29:07 +00:00
Dmitry Timoshkov
d75aed2c92
Convert most of the file APIs to Unicode.
2002-08-27 01:13:58 +00:00
Patrik Stridvall
57bf45067a
MSVC compatibility fixes.
2002-08-26 21:53:24 +00:00
Patrik Stridvall
d016f819f1
Added include protection for unistd.h and sys/time.h.
2002-08-17 00:43:16 +00:00
Juergen Schmied
712caf3596
- Fixed possible loss of data with given overlapped structure on a
...
file opened in non overlapped mode.
- Fixme for file-lock functions.
2002-08-03 19:11:33 +00:00
Eric Pouech
7fcae15632
Made the calls to (Read|Write)Console through a function pointer to
...
ease up ntdll/kernel separation.
2002-07-31 18:46:43 +00:00
Rafael Kitover
530d50c827
Changed dos_handles to store dups of stdio/out/err as per Ove Kaaven's
...
suggestion.
2002-07-31 17:44:30 +00:00
Alexandre Julliard
267ca68253
Fixed HANDLE<->HFILE conversions, since they will be different types
...
when handles are void*.
2002-07-31 17:20:00 +00:00
Alexandre Julliard
034e39b2fe
Check access rights before renaming or deleting files (based on
...
patches by Uwe Bonnes and Dmitry Timoshkov).
2002-06-05 00:47:38 +00:00
Vincent Béron
9a62491660
Removed trailing whitespace.
2002-05-31 23:06:46 +00:00
Alexandre Julliard
be367c7270
Added wine_server_fd_to_handle to replace FILE_DupUnixHandle.
2002-05-30 20:40:02 +00:00
Jason Edmeades
922a5e4681
Silence fixme in unnecessary situation, add missing \n to another fixme.
2002-05-28 22:38:54 +00:00
Martin Wilck
ff1f320ac8
Fixed some bugs in my recently submitted patch series.
2002-04-26 18:31:19 +00:00
Martin Wilck
9ca4285a9f
Fixed ReadFile() semantics when reading asynchronously on sockets.
...
Provide more accurate status codes than STATUS_UNSUCCESSFUL.
2002-04-25 22:58:59 +00:00
Martin Wilck
af16c98f71
Implemented overlapped WSARecvFrom(), WSASendTo(), and
...
WSAGetOverlappedResult().
Fixed shutdown() to work correctly for overlapped sockets (do not
actually do a shutdown() system call as long as there are pending
overlapped requests).
Also added correct error reporting when trying to read or write on a
shut down connection, also for ReadFile()/WriteFile() calls.
2002-04-25 21:34:24 +00:00
Martin Wilck
ef79c38e76
Avoid segfault with overlapped WriteFile() calls.
2002-04-23 19:27:51 +00:00
Martin Wilck
e0587d4a64
GetOverlappedResult: Return ERROR_IO_INCOMPLETE if IO still pending.
...
ReadFile / WriteFile: Use GetOverlappedResult() to check for immediate
completion.
2002-04-17 16:46:06 +00:00
Martin Wilck
08867f7149
- Need a "cleanup" method.
...
- calling the "call_completion" method unconditionally in finish_async
(introduced by me) was wrong, because the thread may never be in an
alertable wait state -> call it only if user completion function is present.
- We need two constant "ops" objects, one with and one without call_completion
method (the event field may NOT be used to determine whether the completion
must be called or not).
2002-04-14 19:34:57 +00:00
Stefan Leichter
f25efa0660
Compile fixes for gcc 2.7.2.3.
2002-04-11 17:34:46 +00:00
Martin Wilck
2b47fb3cee
- separate cleanly between async scheduling and file IO related issues.
...
- make the API compatible with other types of async requests (e.g. for
sockets).
- remove exports of async IO related functions for DLL separation.
2002-04-05 22:53:57 +00:00
Francois Gouget
34372dcbf0
Fix SetFileAttributes to honor the umask (rather than making files
...
world-writable).
2002-03-29 18:17:35 +00:00
Alexandre Julliard
8d1550d1c6
Export the FILE_GetUnixHandle functionality from ntdll.
2002-03-23 18:48:12 +00:00
Mike McCormack
fc93261150
Begin to make wine an SMB client.
2002-03-12 19:24:04 +00:00
Mike McCormack
4a6b990ce8
Set an overlapped hEvent before calling any APCs.
2002-03-11 01:19:29 +00:00
Alexandre Julliard
0799c1a780
Added LGPL standard comment, and copyright notices where necessary.
...
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Gerhard W. Gruber
814a3fa2a1
MoveFileEx now enters the files in the registry when the boot delay
...
flag is set.
2002-02-22 21:30:22 +00:00
Alexandre Julliard
45342a35fe
Fixed function prototype that confused winapi_extract.
2002-01-21 17:37:24 +00:00
Eric Pouech
5cc6105b39
Changed the Wine internal cdrom interface to the NT model.
2002-01-13 01:44:00 +00:00
Martin Wilck
88cd32b2d1
More general approach to file descriptor types and flags.
2002-01-09 20:30:51 +00:00
Martin Wilck
718b1b711b
Add server side support for async IO on files.
...
Use pread/pwrite to read/write from the offset specified in the
overlapped structure.
2002-01-07 21:02:15 +00:00
Mike McCormack
99a5cfea91
- Attempt write before going overlapped in Writefile.
...
- Fix return codes in WriteFileEx.
2002-01-07 18:11:28 +00:00
Mike McCormack
de339f3021
Implement CancelIo properly.
2002-01-07 18:06:59 +00:00
Mike McCormack
9119543795
Set an overlapped's hEvent for ReadFile/WriteFile in an overlapped
...
completion function, not in ReadFileEx or WriteFileEx.
2002-01-01 01:11:32 +00:00
Mike McCormack
5d754fc958
Don't return from overlapped ReadFile on EAGAIN and other non-fatal
...
errors.
2001-12-21 19:16:33 +00:00
Mike McCormack
6f011c0847
- move async activation into the server
...
- implement async queues
2001-12-20 00:07:05 +00:00
Mike McCormack
27cf4a41c2
Implemented timed-out non-overlapped ReadFile.
2001-12-19 18:48:29 +00:00
Alexandre Julliard
9caa71eef4
Redesign of the server communication protocol to allow arbitrary sized
...
data to be exchanged.
Split request and reply structures to make backwards compatibility
easier.
Moved many console functions to dlls/kernel, added code page support,
changed a few requests to behave properly with the new protocol.
2001-11-30 18:46:42 +00:00
Eric Pouech
0b83d4cbc6
New console code based on Win32 windows.
2001-11-23 23:04:58 +00:00
Ove Kaaven
708a846a88
Save a disk file's drive type in the server object.
2001-10-24 00:23:25 +00:00
Francois Gouget
3bb9a36ee0
Spelling, grammar and a bit of comment formatting fixes.
2001-10-22 19:04:32 +00:00
Mike McCormack
ea4f32c4eb
Separate code to overlapped timeouts into FILE_GetTimeout.
2001-10-17 17:45:11 +00:00
Eric Pouech
3bbeb72d3f
Pass security attributes for DOSFS creation.
2001-10-14 16:08:45 +00:00
Mike McCormack
9e1fc62651
Do overlapped reads if and only if the file was opened with
...
FILE_FLAG_OVERLAPPED.
2001-10-10 20:26:58 +00:00
Eric Pouech
c73316db5b
- fixed copy&paste bug (GENERIC_WRITE instead of GENERIC_READ)
...
- when getting the type of a handle, it has to be done even if no fd
is attached to it (console for example)
2001-10-08 20:57:12 +00:00
Mike McCormack
568c67e173
Make serial fd blocking mode depend on FILE_FLAG_OVERLAPPED.
2001-10-08 20:40:57 +00:00
Mike McCormack
ff58be5c7f
Fetch a handle type in FILE_GetUnixHandle.
2001-10-04 16:18:15 +00:00
Uwe Bonnes
ef3d022c62
Check for NULL path argument in DeleteFile.
2001-10-02 17:40:33 +00:00
Ove Kaaven
72f404421c
Make MoveFileEx fail with ERROR_INVALID_PARAMETER (better than
...
crashing) when the source file operand is NULL.
2001-10-01 20:52:00 +00:00
Ove Kaaven
7efa8e258e
A failure to open a pipe should return INVALID_HANDLE_VALUE.
2001-09-25 22:37:32 +00:00
Mike McCormack
b473a0f0b9
Added stub for CancelIo.
2001-08-22 18:02:39 +00:00
Mike McCormack
6f030e8d13
Read data immediately in overlapped ReadFile if possible.
2001-08-20 18:01:17 +00:00
Bernhard Rosenkraenzer
5dda1f7e2c
Set executable permissions when creating .exe/.com files.
2001-07-23 18:09:41 +00:00
Alexandre Julliard
37e9503ae8
Moved server.h to include/wine.
2001-07-19 00:39:09 +00:00
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