Commit Graph

231 Commits

Author SHA1 Message Date
Jacek Caban bede6499ed server: Create async object in ioctl request handler.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-21 14:24:11 +01:00
Jacek Caban a604db1261 server: Create async object in register_async handler.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-21 14:22:48 +01:00
Jacek Caban 8ef4f9a0c8 server: Create async objects in read and write request handlers.
async_get_data allows splitting patches, but will be removed later in
the series.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-21 14:22:46 +01:00
Jacek Caban 91bd81441f server: Allow creating async object not associated with a queue.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-21 14:22:44 +01:00
Jacek Caban cf08bd0e38 server: Create iosb objects inside read/write request handlers.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-01 21:19:38 +01:00
Jacek Caban 64dc8f5c48 server: Store iosb in async object.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-05 16:11:03 +01:00
Jacek Caban ad1e0609a0 server: Get rid of no loner used cancel_async from fd_ops.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-01 13:50:59 +01:00
Jacek Caban 055918c982 server: Store async list in process object and use that to find async in cansel_async request.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-01 13:50:27 +01:00
Jacek Caban 5b2dc08307 server: Allow caching device file handles.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-28 18:35:55 +02:00
Seong-ho Cho ca8a08606d configure: Add AC_HEADER_MAJOR to find where major() is defined.
Signed-off-by: Seong-ho Cho <darkcircle.0426@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-18 18:06:46 +09:00
Charles Davis 1c862ca479 server: Fix int-to-pointer conversion warning (Clang).
Signed-off-by: Charles Davis <cdavis5x@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-27 00:13:30 +09:00
Alexandre Julliard 6ccefdb7c5 server: Support opening file objects from any root, not only directories.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 20:36:17 +09:00
Alexandre Julliard f55db7882d server: Add link_name and unlink_name object operations.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-04 21:07:19 +09:00
Alexandre Julliard 008f14f03f server: Directly return a structure in get_req_unicode_str().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 21:25:12 +09:00
Alex Henrie df59b04057 server: Fix duplicate, incorrect comment describing is_fd_signaled.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-22 01:26:15 +09:00
Sebastian Lackner 4857f95803 server: Return STATUS_CANNOT_DELETE when trying to open readonly file with FILE_DELETE_ON_CLOSE.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-11 19:39:22 +09:00
Francois Gouget 67c2e06fcd ntdll: Work around a conflict between Wine and Solaris list.h.
Signed-off-by: Francois Gouget <fgouget@free.fr>
2015-10-05 22:27:16 +09:00
Sebastian Lackner 0425c0eb95 server: Always switch back to server dir when open_fd returns.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
2015-10-01 16:26:26 +09:00
Sebastian Lackner ec851647e2 server: Implement open_file_object for rootdir pointing to file object. 2015-08-21 14:39:21 +09:00
Sebastian Lackner 1f2a443cb4 server: Implement support for FileLinkInformation class in NtSetInformationFile. 2015-08-21 14:36:02 +09:00
Sebastian Lackner 857d436784 ntdll: Implement FileRenameInformation support. 2015-08-20 18:34:13 +09:00
Erich E. Hoover 6955a298f4 server: Do not permit FileDispositionInformation to delete a file without write access. 2015-08-19 20:19:58 +09:00
Sebastian Lackner 0fabfe7d6b server: Add support for setting file disposition information.
Based on a patch by Dmitry Timoshkov.
2015-08-19 20:19:57 +09:00
Dmitry Timoshkov 9124cb28f9 server: Keep a pointer to parent's fd unix_name in the closed_fd structure. 2015-08-19 20:19:57 +09:00
Alexandre Julliard 47eec1364a server: Ignore FILE_DIRECTORY_FILE on special files. 2015-05-18 17:50:22 +09:00
Alexandre Julliard 83e3a9c9ba server: Allow cancelling async I/O for all object types. 2015-05-06 17:16:16 +09:00
Alexandre Julliard 41ea55294e server: Add read and write requests on file objects. 2015-05-06 17:16:15 +09:00
Alexandre Julliard 860091d2fd server: Add an async structure to the flush request to follow the common pattern. 2015-05-06 17:16:15 +09:00
Alexandre Julliard 837b39b202 server: Add read and write fd member functions.
Also rename no_flush() to no_fd_flush() for consistency.
2015-05-06 09:07:42 +09:00
Alexandre Julliard 6f2ed23c16 server: Retrieve ioctl data directly from the request. 2015-05-06 08:44:29 +09:00
Francois Gouget f4c7e6d607 server: Treat ENOTSUP the same way as ENOLCK, consider locking to be non-functional on that filesystem. 2014-06-18 19:55:33 +02:00
Vincent Povirk 473a3a47a7 server: Try to get a read lock if we can't get a write lock. 2014-05-09 14:16:19 +02:00
Erich E. Hoover d2e216f462 server: Create directories with the specified security attributes. 2013-11-21 19:44:45 +01:00
Huw Davies b47a391e93 server: Android declares syscall() in sys/syscall.h . 2013-09-26 18:15:14 +02:00
Alexandre Julliard 39644bb309 server: Pass a wait queue entry to the signaled/satisfied object functions. 2013-08-27 23:48:36 +02:00
André Hentschel 89e462b141 server: Add checks for DragonFly BSD. 2012-05-29 10:46:34 +02:00
Alexander Morozov d0451f6b3f server: Fix overlapping shared and exclusive locks support. 2011-10-12 17:10:54 +02:00
Alexandre Julliard b00d60f125 server: Only check read/write-specific access bits for file sharing access checks. 2011-07-01 18:33:33 +02:00
Alexandre Julliard 200f8d958f server: Reuse existing file descriptor objects for duplicate file mappings. 2011-04-19 18:29:24 +02:00
Alexandre Julliard 35431ed0e7 server: Check sharing options when duplicating an fd object. 2011-04-18 13:41:32 +02:00
Alexandre Julliard 0ae3816264 server: Use the syscall function instead of inline assembly. 2010-12-23 16:10:12 +01:00
Alexandre Julliard d771f4d17c server: Return an error in get_handle_unix_name for objects that don't have a file name.
This way we fall back to retrieving the Win32 name.
2010-10-19 17:03:40 +02:00
Mike Kaplinskiy ae5ad61fa8 server: Add accept_into_socket to accept into an initialized socket. 2010-08-31 14:23:49 +02:00
Alexandre Julliard a2ca2ebd50 server: Change the removable fd flag to a cacheable flag to make it possible for fd users to set it dynamically. 2010-08-23 17:09:45 +02:00
Alexandre Julliard 7d1d002d4c server: Set a proper error code when dup_fd_object fails. 2010-04-01 18:12:58 +02:00
Alexandre Julliard 151446a2a6 server: Improve parameter checks when opening a directory. 2009-12-08 12:18:44 +01:00
Alexandre Julliard 42806f32e9 server: Add support for opening files from a specified root directory. 2009-12-01 17:38:24 +01:00
Albert Lee 01b972d639 server: Support event ports on Solaris. 2009-11-24 15:53:37 +01:00
Alexandre Julliard 181b3cf07f server: Implement the file sharing check for delete on close with an existing image mapping. 2009-11-23 17:29:22 +01:00
Alexandre Julliard 923d582f07 server: Implement the file sharing check when truncating a file that has an existing mapping. 2009-11-23 17:24:45 +01:00
Alexandre Julliard fd504b6289 server: Implement the special file sharing rules for memory mappings. 2009-11-23 17:10:28 +01:00
Alexandre Julliard 5f808f03e1 server: Store a duplicate of the file descriptor for file mappings. 2009-11-23 16:30:00 +01:00
Henri Verbeet 27705d51e1 server: Store the Unix name in the fd. 2009-11-12 15:31:38 +01:00
Michael Stefaniuc 0eed4405de server: A signed 1-bit bitfield doesn't make much sense; use unsigned. 2009-10-01 11:34:42 +02:00
Mike Kaplinskiy b05774ee7e server: Change cancel_async to take an optional iosb and only_thread. 2009-08-18 12:26:30 +02:00
Alexandre Julliard 7a344c14af server: Avoid a crash when trying to wait on a disconnected pipe client. 2009-06-09 17:01:13 +02:00
Alexandre Julliard 50171c5cc1 server: Make the new named pipe server fd inherit the I/O completion if it was set before connecting. 2009-03-03 11:59:29 +01:00
Alexandre Julliard 7ec95c5bee server: Explicitly specify when an ioctl call needs to be blocking. 2008-12-30 20:37:20 +01:00
Alexandre Julliard 9ed42d2709 server: Get rid of the unused count parameter in fd_queue_async(). 2008-12-26 12:33:31 +01:00
Alexandre Julliard a7b3efde0e server: Store the async handle inside the async_data_t structure. 2008-12-26 12:33:21 +01:00
Alexandre Julliard dc7f170495 server: Add an apc_param_t type to store APC client-side parameters. 2008-12-15 13:29:38 +01:00
Jeff Zaroyko afce615830 wineserver: Don't use O_CREAT and O_EXCL when attempting to open directories. 2008-12-03 09:58:21 +01:00
Petr Sumbera f4575aaa5f server: Workaround for conflict between Wine and Solaris list.h. 2008-04-11 11:14:33 +02:00
Alexandre Julliard a319263230 server: Don't access the process after send_client_fd as it may have been killed. 2008-02-19 16:51:16 +01:00
Andrey Turkin 3afbee5218 server: Store I/O completion information in async structure.
This is to allow completions to be sent on handle close. Also this can
be helpful for AcceptEx/TransmitFile implementation.
2007-12-18 14:25:43 +01:00
Andrey Turkin f1dcf4bf3a server: I/O completion ports can only be used with overlapped I/O. 2007-12-17 11:49:32 +01:00
Alexandre Julliard 8382eb01b2 server: Return correct object types in the get_directory_entry request. 2007-12-05 18:16:42 +01:00
Dmitry Timoshkov f2213dd23f server: Make fd_poll_event static. 2007-12-04 18:40:51 +01:00
Andrey Turkin 27cb7c7274 ws2_32: Make certain winsock functions generate i/o completion messages. 2007-11-15 14:23:23 +01:00
Andrey Turkin c702a91a3c server: Allow async i/o operations to send completion messages. 2007-11-15 14:20:29 +01:00
Rob Shearman c1707d8938 server: Add get_sd and set_sd object operations to allow the security descriptor to be stored somewhere other than server memory, such as on disk. 2007-10-04 12:30:52 +02:00
Alexandre Julliard 24001e8ddc server: Add a default access mapping function for files, and use it for devices too. 2007-10-02 14:20:15 +02:00
Andrey Turkin d1a8155882 server: Allow completion object to be attached to an fd object. 2007-09-28 13:17:18 +02:00
Alexandre Julliard 8765a0da83 ntdll: Fixed file system name comparison on *BSD. 2007-08-29 12:02:13 +02:00
Alexandre Julliard 60901b7542 server: Don't crash when trying to set a file lock on a device. 2007-06-20 13:14:55 +02:00
Alexandre Julliard 8143d42c4c server: Enable kqueue support on Mac OS >= 10.5 now that it's fixed. 2007-06-15 12:41:43 +02:00
Alexandre Julliard fd59e158a7 server: Infrastructure to return a wait handle for blocking ioctls. 2007-05-03 17:43:18 +02:00
Alexandre Julliard 017480d4e2 server: Store valid file options in pseudo file descriptors. 2007-05-03 16:07:30 +02:00
Gerald Pfeifer d529c63ced server: Silence compiler warning in fd_queue_async(). 2007-04-23 13:54:31 +02:00
Alexandre Julliard c18e8d6a69 server: Use the standard file descriptor wait queue for named pipe server async waits. 2007-04-18 16:28:01 +02:00
Alexandre Julliard f3fbae4546 server: Allow specifying the status code to return on file descriptors that don't have a Unix fd. 2007-04-18 16:05:59 +02:00
Alexandre Julliard 737148c57b server: Add a specific data type for ioctl codes so they can be printed as symbols. 2007-04-17 22:06:13 +02:00
Alexandre Julliard aaf477f292 server: Change the timeout handling to use NT-style 64-bit timeouts everywhere. 2007-04-17 20:08:59 +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 635714397f server: Add infrastructure for ioctl server request. 2007-04-16 14:45:03 +02:00
Alexandre Julliard 3f0575943e server: Don't bother with default entry points for objects that don't even return an fd. 2007-04-12 20:21:53 +02:00
Alexandre Julliard d85121f199 ntdll: Store the file access and options in the fd cache, and get rid of the dynamic flags.
This avoids server round-trips for all file I/O.
2007-04-10 22:32:46 +02:00
Alexandre Julliard 7a9363a4d4 server: Rename the get_file_info function to get_fd_type and get rid of the flags. 2007-04-10 22:26:23 +02:00
Alexandre Julliard f85437c57f server: Store the opening options in the file descriptor instead of in the individual objects.
Allows moving the FD_FLAG_OVERLAPPED support to the generic
get_handle_fd request handling.
2007-04-10 22:25:07 +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 ba896e75d7 server: Fix the handling of the signaled status for file descriptors.
File handles are signaled when an I/O operation completes, and reset
when another operation is queued.
2007-04-04 19:39:29 +02:00
Alexandre Julliard b2cba95abd server: Hold a pointer to the queue from the async operations. 2007-04-03 19:36:07 +02:00
Alexandre Julliard 0aae1ca8bf server: Add a separate function to set the timeout of an async I/O operation. 2007-04-02 20:41:59 +02:00
Alexandre Julliard 02ed704be1 server: Check file access in register_async before calling the object method. 2007-04-02 20:24:55 +02:00
Alexandre Julliard df09ac5194 server: Make async I/O queues into real objects. 2007-04-02 20:09:29 +02:00
Alexandre Julliard e92f85474f server: Avoid redundant polling in fd_queue_async_timeout.
Moved the file overlapped flag check to default_fd_queue_async.
2007-04-02 12:48:13 +02:00
Alexandre Julliard 95ba4b553c server: Add a generic wait queue to the file descriptor object. 2007-04-02 12:47:52 +02:00
Alexandre Julliard df651875ad server: Remove the return value of the flush() method, it's not used. 2007-03-27 16:51:44 +02:00
Alexandre Julliard 589ce2bb8d server: Always return STATUS_PENDING when an async I/O operation has been queued. 2007-03-26 19:13:21 +02:00
Alexandre Julliard 94655c8493 server: Implemented the open_file method for named pipe and mailslot devices. 2007-03-22 11:52:40 +01:00