Commit Graph

194 Commits

Author SHA1 Message Date
Alexandre Julliard f6fa72d770 server: Make async I/O transfer sizes always 32-bit. 2008-12-15 13:30:25 +01:00
Alexandre Julliard d1b3d484f7 server: Add functions for conversions between server object handles and pointer-style handles. 2008-12-08 16:05:17 +01:00
A C Hurst ad335b7e7f ntdll: wine_nt_to_unix_file_name() parse string to int instead of cast char, where string may be passed. 2008-11-20 12:16:42 +01:00
Lei Zhang 7fca3486ad ntdll: Skip deleted files in read_directory_getdents. 2008-10-31 12:57:46 +01:00
Alexandre Julliard f0fed2831a ntdll: Ignore some system directories in NtQueryDirectoryFile to avoid recursion troubles. 2008-10-28 13:55:24 +01:00
Francois Gouget 215738a140 dirent.h is a conditional include now. 2008-10-20 11:37:27 +02:00
Alexandre Julliard d350998cec ntdll: Don't bother to check the file name against the mask if stat() succeeded. 2008-06-30 15:10:50 +02:00
Austin English 05faae7b5a Spelling fixes. 2008-04-09 12:07:39 +02:00
Alexandre Julliard 5625c6079e Get rid of the global thread.h header. 2008-03-01 11:57:00 +01:00
Andrey Turkin 7a9210fa85 server: Pass Information field from async I/O APCs. 2007-11-15 14:24:50 +01:00
Andrey Turkin 793453f768 ntdll: Make async i/o functions generate completion messages. 2007-11-15 14:23:37 +01:00
Andrey Turkin c702a91a3c server: Allow async i/o operations to send completion messages. 2007-11-15 14:20:29 +01:00
Alexandre Julliard 7fd1ad5ffa ntdll: Cache the DOS drives stat info for up to one second. 2007-10-18 15:16:07 +02:00
Ken Thomases 54a471732f ntdll: Work around a bug in Mac OS X's getdirentries(). 2007-10-10 13:42:44 +02:00
Alexandre Julliard 1b57c3bf90 ntdll: Don't print traces from async I/O callbacks. 2007-06-29 13:40:42 +02:00
Andrew Talbot bd15feab4a ntdll: Constify some variables. 2007-06-26 12:54:33 +02:00
Alexandre Julliard 8992f89f27 server: Remove the extra apc_arg parameter now that user APCs all require the same arg as the kernel APC. 2007-06-04 15:20:49 +02:00
Alexandre Julliard f6a3a4689f ntdll: Queue an intermediate user APC routine to free the async info. 2007-06-04 15:20:49 +02:00
Peter Oberndorfer 3d57dd3f07 ntdll: Call NtQueryAttributesFile in RtlDoesFileExists_U. 2007-05-04 12:39:45 +02:00
Alexandre Julliard 2669af73df server: Move the server part of device unmounting to the ioctl processing. 2007-04-16 14:54:52 +02:00
Alexandre Julliard 72bff2e445 server: Add support for restarting an async I/O when the client side couldn't finish it right away. 2007-04-10 17:07:27 +02:00
Alexandre Julliard a867553146 server: Use the standard file descriptor signal mechanism for directory changes. 2007-04-04 19:54:33 +02:00
Alexandre Julliard 6d1402cd89 ntdll: Ignore failure to open current directory, it's broken on Mac OS X. 2007-03-29 21:02:59 +02:00
Alexandre Julliard c16eb8efd9 server: Add support for queuing a user APC upon async I/O completion. 2007-03-27 16:42:27 +02:00
Alexandre Julliard ee478bbada ntdll: Better support for NT path names in wine_nt_to_unix_file_name.
Don't map NT namespace 1:1 to Unix, add a magic \??\unix device instead.
More generic support for \??\ devices, with fallback to the wineserver
for paths that don't exist.
2007-03-22 16:35:51 +01:00
Alexandre Julliard 2082a97d45 server: Use a standard async I/O event to signal directory changes. 2007-03-21 14:50:15 +01:00
Alexandre Julliard 111610c45e server: Add an async_data_t structure to store parameters for async I/O requests. 2007-03-20 20:21:12 +01:00
Alexandre Julliard b2c985697f ntdll: Remove unnecessary pointers in fstab parsing on Solaris. 2007-03-17 20:07:10 +01:00
Reinhard Karcher a736ac3f3e ntdll: Fix NtQueryDirectoryFile handling of short names on vfat filesystems. 2007-01-02 12:07:52 +01:00
Alexandre Julliard df29fd3ab3 ntdll: Always return . and .. as the first two entries in directory searches. 2006-12-01 13:11:38 +01:00
Alexandre Julliard 83ce958793 ntdll: Store the fd type in the cache and return it in server_get_unix_fd. 2006-11-20 14:15:06 +01:00
Alexandre Julliard a9f214cb0d ntdll: Added support for reading directories using the BSD getdirentries function. 2006-11-13 15:42:48 +01:00
Alexandre Julliard 9ddb9294da ntdll: Added a server_get_unix_fd function that avoids doing a dup() of the fd when not required. 2006-11-03 11:38:44 +01:00
Hans Leidekker f7b0ba7aa7 ntdll: Win64 printf format warning fixes. 2006-10-18 12:35:26 +02:00
Eric Pouech 449e8557fd ntdll: Plug a memory leak. 2006-10-17 11:13:52 +02:00
Alexandre Julliard 9719b45bb2 ntdll: More workarounds for more kernel bugs in VFAT ioctl mapping on x86-64. 2006-10-14 20:24:07 +02:00
Alexandre Julliard 01dd1ffdc2 ntdll: Implement FSCTL_DISMOUNT_VOLUME for MacOSX. 2006-10-03 14:54:21 +02:00
Alexandre Julliard 2f356c785e ntdll: Fixed buffer overflow in NtQueryDirectoryFile optimisation. 2006-08-07 13:53:31 +02:00
Tijl Coosemans e548d40831 ntdll: Add FreeBSD default serial port device. 2006-08-07 13:11:55 +02:00
Robert Shearman f5cc0f7d09 ntdll: Add an optimisation for NtQueryDirectoryFile to not read the
whole directory if the mask doesn't contain any wildcards and the file
exists on in the directory with the same case as the mask.
2006-08-04 12:04:16 +02:00
Alexandre Julliard 3f2da592ad ntdll: Null-terminate strings returned by VFAT_IOCTL_READDIR_BOTH to work around a kernel bug. 2006-07-19 20:04:45 +02:00
Jeremy White d9de5217ae ntdll: On Solaris, limits.h is required for PATH_MAX. 2006-06-19 22:36:30 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Mike McCormack 23b74754fe ntdll: Recursive notify is implemented. 2006-03-24 12:14:19 +01:00
Mike McCormack e4faabfa64 server: Track created and removed directories in the tree of inodes for inotify.
Add them to or remove them from existing recursive watches.
2006-02-21 11:13:23 +01:00
Mike McCormack 0790f95589 kernel32: ReadDirectoryChangesW fixes.
ReadDirectoryChangesW remembers whether it's recording changes or not.
Don't initialize overlapped->InternalHigh.
The hEvent is cleared when ReadDirectoryChanges is called.
2006-02-07 16:50:36 +01:00
Mike McCormack 0193211946 server: Fill in NtNotifyChangeDirectoryFile's buffer with change data. 2006-02-06 11:58:55 +01:00
Robert Millan 8800352477 Enable for GNU/kFreeBSD the same kernel-specific interface/parameter
that is used with FreeBSD.
2006-02-05 13:06:50 +01:00
Mike McCormack 08351071fd server: Fix the file notification interface to use directory handles. 2006-01-27 12:13:56 +01:00
Mike McCormack 0c728255a4 ntdll: Add a stub implementation of NtNotifyChangeDirectoryFile. 2006-01-16 20:40:11 +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
Ge van Geldorp 1a1583a364 Match PSDK STATUS_* definitions. 2005-11-28 17:32:54 +01: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
Alexandre Julliard 51fbfbb9bb Make show_dir_symlinks the default and get rid of the option. 2005-10-27 11:22:47 +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
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 20a1a203c6 Use a more portable scheme for storing the name of a critical
section.
2005-09-09 10:19:44 +00:00
Alexandre Julliard 5617b716e7 Added a wine_unix_to_nt_file_name function to do proper pathname
conversions instead of relying on GetFullPathName hacks.
2005-08-11 10:41:26 +00:00
Mike McCormack 6b636e3e7b Use RTL_CRITICAL_SECTION instead of CRITICAL_SECTION. 2005-06-25 18:00:57 +00:00
Mike McCormack 04f9f1b066 Don't include winbase.h or winerror.h when not necessary. 2005-06-21 09:52:40 +00:00
Alexandre Julliard 6e764fceda Moved directory options to HKCU\Software\Wine. 2005-06-17 21:07:44 +00:00
Mike McCormack 5b2d5fd758 Use HANDLE instead of HKEY in the NT API. 2005-06-17 13:58:33 +00:00
Alexandre Julliard 2e4bca9db5 Added magic comments to all Wine-specific registry accesses to make
them easier to grep.
2005-06-13 18:56:00 +00:00
Detlef Riekenberg d9033a49da Mark links to dir with FILE_ATTRIBUTE_REPARSE_POINT, so modern
applications can use this additional information.
2005-05-31 13:25:38 +00:00
Francois Gouget 883413faf6 On some systems (linux 2.6.8) AFS fails to set d_reclen to 0 or does
not support VFAT_IOCTL_READDIR_BOTH but returns 0 (success) anyway. So
set d_reclen to 65535 (an impossible value) before the ioctl() and
check it afterwards to work around this bug.
2005-05-30 11:33:42 +00:00
Gerald Pfeifer 4135b43387 Avoid compiler warning in parse_mount_entries(). 2005-05-20 19:24:07 +00:00
Juan Lang f935b51423 Implement get_default_drive_device for FreeBSD. 2005-05-19 11:12:27 +00:00
Robert Lunnon bfec8c229d Implement get_default_drive_device for Solaris. 2005-05-14 18:48:18 +00:00
Francois Gouget 821d4c4645 Fix nativeapi.pm so it knows about AC_HEADER_STAT().
Make the error message about unexpected '#ifdef HAVE_XXX' clearer.
Protect sys/stat.h #includes with the corresponding '#ifdef HAVE_XXX'
check.
2005-05-06 16:22:54 +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 c8c9337aa0 Consider any character above 0x7f to be invalid in a DOS short name. 2005-02-09 13:32:12 +00:00
Alexandre Julliard 50c1a6b959 Fixed read_directory_getdents for large directories (found by Rein
Klazes).
2004-12-09 16:54:20 +00:00
Gerald Pfeifer cd2b2bd99a Avoid a warning on FreeBSD. 2004-12-08 14:09:37 +00:00
Alexandre Julliard da41f988a8 Use a direct getdents syscall on Linux to avoid relying on
implementation details of seekdir/telldir.
2004-12-06 16:48:16 +00:00
Alexandre Julliard 8e1e835d11 Don't try to stat network mounts in parse_mount_entries, we can't
return a meaningful device for them anyway (suggested by Robert
Shearman).
2004-09-13 18:14:15 +00:00
Alexandre Julliard 6a27b48895 Fd type is no longer used, get rid of it. 2004-08-18 00:04:58 +00:00
Hans Leidekker a9b4a471a9 Fix signed/unsigned comparison warnings. 2004-08-13 23:53:44 +00:00
Emmanuel Maillard 58dde17c91 Added Darwin support in get_default_drive_device. 2004-07-07 00:47:10 +00:00
Dmitry Timoshkov 20f25c3468 Cygwin's mntent.h requires stdio.h to be included first. 2004-05-24 19:07:12 +00:00
Alexandre Julliard cb27ab8b13 Added support for mapping UNC filenames to the dosdevices directory. 2004-05-17 21:09: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 553a75e16e Use symlinks in dosdevices/ for the drive devices too.
Store drive types in the registry instead of in the config file.
Added some more code to convert existing config to the new scheme.
2004-04-29 00:27:57 +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 223fcdff77 Moved support for opening DOS device files to ntdll. 2004-04-23 03:22:34 +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 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 1cb0cf4ced Moved wine_get_unix_file_name implementation to ntdll, and changed it
to return an allocated buffer instead of a fixed size one.
2004-04-14 19:40:53 +00:00
Alexandre Julliard 7e65631832 Added support for restarting directory scans on platforms where
seekdir return values cannot be reused on a different directory
object.
Added some checks for invalid file names in DIR_nt_to_unix.
2004-04-14 04:36:21 +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 24df62e32b O_DIRECTORY is not really needed. 2004-03-16 19:19:12 +00:00
Alexandre Julliard f30cfa8858 Implemented NtQueryDirectoryFile (partly based on a patch by Eric
Pouech).
2004-03-16 01:32:02 +00:00