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
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
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
59797f292e
Pass specific access rights to wine_server_handle_to_fd.
2005-12-12 17:15:26 +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
Alexandre Julliard
27b1aec925
server: Use attributes instead of inherit flag in file requests.
2005-12-09 12:00:48 +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
Alexandre Julliard
e21a97da85
Fixed some compiler warnings on Darwin.
2005-12-01 12:36:05 +01:00
Ge van Geldorp
1a1583a364
Match PSDK STATUS_* definitions.
2005-11-28 17:32:54 +01:00
Alexandre Julliard
86397e1d43
Fixed handling of mailslot read timeout to avoid compiler warnings.
2005-11-21 15:23:49 +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
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
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
Vitaliy Margolen
eb8478002d
Cosmetic changes to NtCreateNamedPipeFile change "oa" to "attr".
2005-10-26 10:11:08 +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
Ivan Leo Puoti
f0db7ab06b
Added FSCTL_PIPE_LISTEN support.
2005-09-06 14:09:42 +00:00
Alexandre Julliard
bc22e2f03d
Moved the FileFsDeviceInformation query to a separate function.
2005-08-24 18:27:27 +00:00
Ivan Leo Puoti
aab12f5f7c
Implement FSCTL_PIPE_DISCONNECT in NtFsControlFile and make
...
DisconnectNamedPipe call it.
2005-08-18 10:59:26 +00:00
Ivan Leo Puoti
9f3af964c7
Improve NtCreateNamedPipe trace.
2005-08-16 15:57:59 +00:00
Ivan Leo Puoti
dfb887dc9f
NtCreateNamedPipeFile is no longer a stub, so fix TRACE() call.
2005-08-16 11:13:21 +00:00
Vincent Béron
ca26076164
Use proper macro for using IOKit includes.
2005-07-24 16:15:06 +00:00
Uwe Bonnes
38eb243bc1
Wait for the object multiple times until TIMEOUT is met.
2005-07-11 14:23:24 +00:00
Pierre d'Herbemont
cca2b04ab7
Move the (Mac OS X) IOKit headers to the top of the file to prevent a
...
compilation failure.
2005-06-20 10:31:04 +00:00
Robert Shearman
0c5118144a
- Don't free the fileio object because it will be freed anyway in
...
fileio_terminate on error.
- Print out statuses in hex, rather than decimal.
2005-06-09 09:45:42 +00:00
Robert Shearman
e51dd36453
Implement overlapped I/O with named pipes.
2005-06-08 19:11:46 +00:00
Uwe Bonnes
271a8f99be
Call fileio_terminate for FILE_AsyncWriteService.
2005-05-26 16:07:53 +00:00
Juan Lang
f23e8fec10
Implement NtQueryVolumeInformationFile for type
...
FileFsDeviceInformation on FreeBSD.
2005-05-20 19:16:37 +00:00
Alexandre Julliard
e4412a618c
Removed the special casing of kernel32 and ntdll for the TEB
...
definition in winternl.h.
2005-05-16 17:52:10 +00:00
Robert Lunnon
9e40b70d90
Implement NtQueryVolumeInformation for Solaris.
2005-05-07 12:16:21 +00:00
Ivan Leo Puoti
26d2b8bf5e
Add parameter checking to NtReadFile/NtWriteFile.
2005-04-25 16:02:16 +00:00
Alexandre Julliard
240d4ee9e1
Remove a few more instances of strncpy.
2005-04-25 15:51:45 +00:00
Eric Pouech
5a2591d96d
- moved named pipe creation to ntdll
...
- server now handles the named pipe flags as the NTDLL values (not the
KERNEL32 ones)
- named pipes in server now use the async IO mechanism for
connect/wait ops
2005-04-18 14:57:04 +00:00
Mike McCormack
016206c1e1
Move mailslot set and query info implementation to ntdll.
2005-04-11 14:20:49 +00:00
Mike McCormack
2ab6a775bd
Implement mailslots.
2005-03-30 19:02:15 +00:00
Mike McCormack
6c42be25e7
Implement CreateMailslot using NtCreateMailslotFile.
2005-03-28 10:03:56 +00:00
Francois Gouget
93416cdaf7
Assorted spelling fixes.
2005-03-23 13:15:18 +00:00
Ivan Leo Puoti
627d2fa7a2
Improve parameter checking in NtCreateFile.
...
Add documentation for ea_buffer and ea_length.
2005-03-21 10:28:23 +00:00
Ulrich Czekalla
e3b59eac24
Don't mark a file as readonly if it has any write bit set.
2005-03-16 19:48:42 +00:00
Alexandre Julliard
d0ee9f9309
Avoid spaces before preprocessor directives, that's not portable.
2005-03-02 12:23:20 +00:00
Eric Pouech
4634447d6b
- got rid of include/async.h
...
- fixed some overlapped issues in socket handling
- moved kernel32.CancelIo implementation to ntdll
2005-01-14 19:54:38 +00:00
Rein Klazes
3058548eb8
On Linux, use fstatfs instead of fstatvfs. It is too buggy.
2005-01-06 20:44:52 +00:00
Eric Pouech
9dc3843cba
Fixed some regressions from the previous change.
2005-01-03 14:43:15 +00:00
Dmitry Timoshkov
e04da6bb72
Add a test for ReadFile/WriteFile fault handling, make it pass under
...
Wine.
2004-11-28 14:58:11 +00:00
Eric Pouech
6d0712a375
Moved kernel32.DeleteFileW core implementation to ntdll.NtDeleteFile.
2004-11-21 15:29:44 +00:00
Hamish
630273d34a
Fix for async writes to comm ports.
2004-11-09 20:12:18 +00:00
Alexandre Julliard
efb8be7e82
Added a fallback implementation of futimes.
2004-10-07 04:25:05 +00:00
Francois Gouget
c27db9b07c
Assorted spelling fixes.
2004-09-14 19:31:22 +00:00
Mike McCormack
03425cb09d
Added stub implementations for NtDeleteFile and NtCancelIoFile.
2004-08-27 19:11:01 +00:00
Robert Shearman
f84a53c099
Handle ECONNRESET in FILE_GetNtStatus.
2004-08-19 02:41:55 +00:00
Robert Shearman
eee6adc9b6
- Errors should only be reported to I/O completion routine after
...
NtReadFile has succeeded.
- Test case for this behaviour.
2004-08-19 02:34:51 +00:00
Emmanuel Maillard
2300ce663a
- Update build system to support IOKit and CoreFoundation frameworks
...
on Darwin.
- Add support for the -framework "name" linker option.
- NtQueryVolumeInformationFile set device info on Darwin.
2004-08-19 01:20:45 +00:00
Rein Klazes
6293769f52
Do not make a directory read-only.
2004-08-18 20:57:30 +00:00
Alexandre Julliard
6a27b48895
Fd type is no longer used, get rid of it.
2004-08-18 00:04:58 +00:00
Eric Pouech
1ffddb4d0c
- better support for non-blocking COMM and socket read/writes:
...
+ added necessary semantics to fd flags
+ no longer uses fd type (but fd flags) read/write semantic behavior
- fixed socket code to use the proper manifest constants
- fixes for kernel32.GetOverlappedResult without hEvent set
- in ntdll.Nt{Read|Write}File
+ always reset the event
+ added support for longlong offsets
+ better object disposal in error handling code paths
2004-08-17 23:37:55 +00:00
Mike McCormack
278f743a4c
Stub implementation and declaration for NtCreateNamedPipeFile.
2004-08-16 21:08:38 +00:00
Alexandre Julliard
2bcef9e1fb
Don't use lseek when truncating a file to avoid corrupting the current
...
file position.
2004-06-17 23:05:48 +00:00
Alexandre Julliard
8c29b5f0cc
Removed the no longer used SMB file I/O support, we can't do reliable
...
file I/O in user space anyway.
2004-05-14 22:24:48 +00:00
Alexandre Julliard
b592cbbc18
Reimplemented GetFileType and SetEndOfFile using ntdll functions.
2004-05-01 02:44:00 +00:00
Alexandre Julliard
d4874d6406
Added a few more info classes in NtQueryInformationFile.
...
Use NT file names in CreateNamedPipeW.
Reimplemented GetFileInformationByHandle, GetFileSize and GetFileTime
using ntdll functions.
2004-04-30 21:03:09 +00:00
Alexandre Julliard
ff07c20446
Moved support for opening named pipes to ntdll.
2004-04-30 19:04:19 +00:00
Alexandre Julliard
ffcc67abf1
Added auto-detection of DOS drive devices based on finding the
...
corresponding mount point in /etc/mtab or /etc/fstab.
2004-04-29 20:04:48 +00:00
Alexandre Julliard
cf67839bc4
Pass the creation disposition to wine_nt_to_unix_file_name so that it
...
can return the correct error code in all cases.
Changed MoveFileExW to use wine_nt_to_unix_file_name to avoid
computing the NT name twice.
Fixed crash in GetDriveTypeW with a NULL root.
2004-04-27 02:15:52 +00:00
Alexandre Julliard
9db147e5e4
Make DIR_nt_to_unix return STATUS_NO_SUCH_FILE instead of
...
STATUS_OBJECT_NAME_NOT_FOUND to indicate that the last component
didn't exist to allow distinguishing it from legitimate errors.
Export it from ntdll, renamed to wine_nt_to_unix_file_name.
2004-04-23 02:46:18 +00:00
Alexandre Julliard
4bb759e8ad
Properly set IO_STATUS_BLOCK.Information in NtCreateFile.
2004-04-21 22:26:44 +00:00
Alexandre Julliard
e4409325d2
Reimplemented GetFileAttributesExW and GetCompressedFileSizeW using
...
the corresponding ntdll functionality.
2004-04-20 04:06:49 +00:00
Alexandre Julliard
174e2a6464
Reimplemented GetFileAttributesW, SetFileAttributesW and SetFileTime
...
using the corresponding ntdll functionality.
2004-04-20 00:36:29 +00:00
Alexandre Julliard
716878c5b1
Fixed a number of NT status values to be closer to NT behavior.
2004-04-16 23:32:40 +00:00
Alexandre Julliard
e792fb74ba
Implemented NtCreatelFile using the new symlink scheme.
...
Use NtCreateFile in the loader, and get rid of the CreateFileW upcall
hack.
2004-04-12 23:31:09 +00:00
Alexandre Julliard
743997fa38
Replace the get_file_info request by an fstat() on the client side.
2004-04-08 04:39:59 +00:00
Alexandre Julliard
db4517010b
Handle the set_file_pointer request on the client side.
2004-04-07 22:02:09 +00:00
Alexandre Julliard
0adec9a7c1
Better support for device handles in NtQueryVolumeInformationFile.
2004-04-07 03:58:55 +00:00
Alexandre Julliard
670711ef25
Handle file mappings on removable media entirely inside ntdll.
2004-04-06 23:13:47 +00:00
Alexandre Julliard
01c5ef37cc
Partial implementation of NtQueryVolumeInformationFile.
2004-04-06 04:19:41 +00:00
Alexandre Julliard
f30cfa8858
Implemented NtQueryDirectoryFile (partly based on a patch by Eric
...
Pouech).
2004-03-16 01:32:02 +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
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
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
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
Marcus Meissner
41beb71636
Allow offset of NULL to NtWriteFile.
2004-01-09 20:09:08 +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
Robert Shearman
3842103c74
Handle EIO file error.
2003-11-21 23:53:44 +00:00
Carlos Lozano
b40a287e03
NtReadFile checks that offset is not null.
2003-11-11 21:57:07 +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
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
Jon Griffiths
7787587587
Documentation updates.
2003-07-18 22:55:28 +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
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
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
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
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
Mike McCormack
ef8b94622a
- rewrite of the named pipe code
...
- allow NtFileFlushBuffers to wait
- allow DisconnectNamedPipe to invalidate client cached fd
- fix the pipe test now that one extra test passes
2003-05-15 04:22:45 +00:00
Eric Pouech
b6338878a8
Moved kernel32.FlushFileBuffers to ntdll.NtFlushBuffersFile.
2003-04-22 04:04:17 +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
Patrik Stridvall
75dee506ae
Replace 0x%p with %p.
2002-12-05 19:56:15 +00:00
Andrew John Hughes
ed800c69c8
Build ntdll with -DSTRICT.
2002-11-21 03:45: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
Dmitry Timoshkov
d75aed2c92
Convert most of the file APIs to Unicode.
2002-08-27 01:13:58 +00:00
Patrik Stridvall
d016f819f1
Added include protection for unistd.h and sys/time.h.
2002-08-17 00:43:16 +00:00
Mike McCormack
55d1ea7c75
Partially implement NtOpenFile and NtReadFile.
2002-06-14 00:36:20 +00:00
Vincent Béron
9a62491660
Removed trailing whitespace.
2002-05-31 23:06:46 +00:00
Juergen Schmied
76a9fa12f7
Types and partial implementation for NtQueryVolumeInformationFile.
2002-05-09 19:40:30 +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
Dmitry Timoshkov
4e78461b5e
Print FIXME() for not implemented NtQueryVolumeInformationFile.
2002-01-04 18:24:51 +00:00
Patrik Stridvall
044855c6ec
Documentation fixes.
2001-07-11 18:56:41 +00:00
Patrik Stridvall
3ca9823941
Documentation ordinal fixes.
2001-06-20 23:03:14 +00:00
Patrik Stridvall
8b216b3d02
Documentation ordinal fixes.
2001-06-19 18:20:47 +00:00
Dimitrie O. Paun
529da54394
Require {DECLARE,DEFAULT}_DEBUG_CHANNEL statements to end in a ;
2000-11-27 23:54:25 +00:00
Juergen Schmied
02d45e52c5
- implementation of RtlReg* (read access), RtlEvent*, RtlSemaphore*,
...
NtAllocateLocallyUniqueId
- implementation or stubs for NtAccessCheck, NtSetSecurityObject,
RtlClearBits, RtlEqualPrefixSid, RtlFindClearBits,
RtlFormatCurrentUserKeyPath, RtlGetControlSecurityDescriptor,
RtlIdentifierAuthoritySid, RtlImpersonateSelf, RtlInitializeBitMap,
RtlInitializeGenericTable, RtlMakeSelfRelativeSD,
RtlPrefixUnicodeString, RtlSetBits, RtlUnicodeToMultiByteN,
RtlUpcaseUnicodeStringToOemString, RtlUpcaseUnicodeToOemN,
RtlValidSid, RtlxUnicodeStringToOemSize
- corrected most RtlString* functions, added documentation
- more fixes and partial implementations
2000-01-23 22:35:33 +00:00
Patrik Stridvall
b8684a266b
Fixed some of the issues reported by winapi-check.
1999-07-31 17:32:05 +00:00
Alexandre Julliard
156570906f
Converted to the new debug interface, using script written by Patrik
...
Stridvall.
1999-05-23 10:25:25 +00:00
Patrik Stridvall
b4b9fae671
New debug scheme with explicit debug channels declaration.
1999-04-19 14:56:29 +00:00
Juergen Schmied
026d9db8c5
- sorted API by groups
...
- new stubs: NtQueryDirectoryFile, ZwQueryDirectoryFile
- impl.: RtlAllocateHeap, RtlCreateHeap, RtlDestroyHeap, RtlFreeHeap,
RtlGetDaclSecurityDescriptor, RtlGetSaclSecurityDescriptor
- impl. by Rex Jolliff (rex@lvcablemodem.com ): RtlTimeToTimeFields,
RtlTimeFieldsToTime
1999-03-09 17:47:51 +00:00