From 1acb930db82d805de6244f4f5b2ccdf839d28265 Mon Sep 17 00:00:00 2001 From: Alexandre Julliard Date: Tue, 13 Dec 2005 12:00:11 +0100 Subject: [PATCH] server: Added get_file_info implementation for named pipe and mailslot devices. --- server/mailslot.c | 18 ++++++++++++------ server/named_pipe.c | 18 ++++++++++++------ 2 files changed, 24 insertions(+), 12 deletions(-) diff --git a/server/mailslot.c b/server/mailslot.c index d4e277bd523..12d9a781082 100644 --- a/server/mailslot.c +++ b/server/mailslot.c @@ -153,6 +153,7 @@ static struct fd *mailslot_device_get_fd( struct object *obj ); static struct object *mailslot_device_lookup_name( struct object *obj, struct unicode_str *name, unsigned int attr ); static void mailslot_device_destroy( struct object *obj ); +static int mailslot_device_get_file_info( struct fd *fd ); static const struct object_ops mailslot_device_ops = { @@ -172,12 +173,12 @@ static const struct object_ops mailslot_device_ops = static const struct fd_ops mailslot_device_fd_ops = { - default_fd_get_poll_events, /* get_poll_events */ - default_poll_event, /* poll_event */ - no_flush, /* flush */ - no_get_file_info, /* get_file_info */ - default_fd_queue_async, /* queue_async */ - default_fd_cancel_async /* cancel_async */ + default_fd_get_poll_events, /* get_poll_events */ + default_poll_event, /* poll_event */ + no_flush, /* flush */ + mailslot_device_get_file_info, /* get_file_info */ + default_fd_queue_async, /* queue_async */ + default_fd_cancel_async /* cancel_async */ }; static void mailslot_destroy( struct object *obj) @@ -304,6 +305,11 @@ static void mailslot_device_destroy( struct object *obj ) if (device->mailslots) free( device->mailslots ); } +static int mailslot_device_get_file_info( struct fd *fd ) +{ + return 0; +} + struct mailslot_device *create_mailslot_device( struct directory *root, const struct unicode_str *name ) { struct mailslot_device *dev; diff --git a/server/named_pipe.c b/server/named_pipe.c index d8892ed4695..8b25bc103b5 100644 --- a/server/named_pipe.c +++ b/server/named_pipe.c @@ -200,6 +200,7 @@ static struct fd *named_pipe_device_get_fd( struct object *obj ); static struct object *named_pipe_device_lookup_name( struct object *obj, struct unicode_str *name, unsigned int attr ); static void named_pipe_device_destroy( struct object *obj ); +static int named_pipe_device_get_file_info( struct fd *fd ); static const struct object_ops named_pipe_device_ops = { @@ -219,12 +220,12 @@ static const struct object_ops named_pipe_device_ops = static const struct fd_ops named_pipe_device_fd_ops = { - default_fd_get_poll_events, /* get_poll_events */ - default_poll_event, /* poll_event */ - no_flush, /* flush */ - no_get_file_info, /* get_file_info */ - default_fd_queue_async, /* queue_async */ - default_fd_cancel_async /* cancel_async */ + default_fd_get_poll_events, /* get_poll_events */ + default_poll_event, /* poll_event */ + no_flush, /* flush */ + named_pipe_device_get_file_info, /* get_file_info */ + default_fd_queue_async, /* queue_async */ + default_fd_cancel_async /* cancel_async */ }; static void named_pipe_dump( struct object *obj, int verbose ) @@ -437,6 +438,11 @@ static void named_pipe_device_destroy( struct object *obj ) if (device->pipes) free( device->pipes ); } +static int named_pipe_device_get_file_info( struct fd *fd ) +{ + return 0; +} + /* this will be deleted as soon an we fix wait_named_pipe */ static struct named_pipe_device *named_pipe_device;