server: Added get_file_info implementation for named pipe and mailslot devices.
This commit is contained in:
parent
5bcd0888ef
commit
1acb930db8
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
Loading…
Reference in New Issue