Commit Graph

250 Commits

Author SHA1 Message Date
Jacek Caban 36c6a16c62 server: Use pipe_end_get_file_info for FilePipeLocalInformation implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-17 10:01:10 +02:00
Jacek Caban 584ffc2341 server: Don't use set_no_fd_status for error handling in pipe objects.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-15 10:49:07 +02:00
Jacek Caban 6b08e60f03 server: Introduce get_file_info request for server-side NtQueryInformationFile implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-22 12:19:43 +01:00
Jacek Caban 2ab2f31f18 server: Allow server side NtQueryVolumeInformationFile implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-03 09:39:52 +02:00
Jacek Caban 7b33613fc4 server: Make fd_queue_async infallible.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-05 10:43:14 +02:00
Jacek Caban 0b4c8bf93f server: Make async_queue object a simple list instead of a server object.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-05 10:39:54 +02:00
Jacek Caban 328f178c25 server: Use default poll only for default read and write queue asyncs.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-03 15:57:46 +02:00
Jacek Caban 10c1f245e4 server: Use create_request_async in flush request handler.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-28 12:35:33 +02:00
Jacek Caban c56c42ff79 server: Use create_request_async in ioctl request handler.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-28 12:32:49 +02:00
Jacek Caban fa0dfe5967 server: Store fd reference in async object for unqueued asyncs.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-28 12:29:04 +02:00
Jacek Caban 2bd828b13c server: Use create_request_async for write requests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-28 12:23:36 +02:00
Jacek Caban 0fb6099b01 server: Preallocate wait handle in create_request_async and return it in read request.
alloc_handle is failable and when we're returning the handle, handling
error properly is not really possible.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-28 12:23:35 +02:00
Jacek Caban 26c5336494 server: Introduce create_server_async and use it in read request handler.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-20 11:45:52 +02:00
Jacek Caban 9d666869f3 server: Remove no longer needed blocking argument from flush fd op.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-12 19:11:29 +02:00
Jacek Caban c9d9adaf65 server: Remove no longer needed blocking argument from write fd op.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-12 19:11:27 +02:00
Jacek Caban 5e584e936b server: Remove no longer needed blocking argument from read fd op.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-12 19:11:26 +02:00
Jacek Caban 047062b28b server: Remove no longer needed blocking argument from ioctl fd op.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-12 19:11:24 +02:00
Jacek Caban a3acdf117f server: Pass existing async object to fd_queue_async.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-22 20:20:50 +01:00
Jacek Caban a9c51f4e8a server: Create async object in flush request handler.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-21 14:24:13 +01:00
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