Merged the get_read_fd and get_write_fd requests.
diff --git a/server/pipe.c b/server/pipe.c
index d86fde8..5c830c0 100644
--- a/server/pipe.c
+++ b/server/pipe.c
@@ -37,8 +37,7 @@
static void pipe_dump( struct object *obj, int verbose );
static int pipe_get_poll_events( struct object *obj );
-static int pipe_get_read_fd( struct object *obj );
-static int pipe_get_write_fd( struct object *obj );
+static int pipe_get_fd( struct object *obj );
static int pipe_get_info( struct object *obj, struct get_file_info_request *req );
static void pipe_destroy( struct object *obj );
@@ -52,8 +51,7 @@
no_satisfied, /* satisfied */
pipe_get_poll_events, /* get_poll_events */
default_poll_event, /* poll_event */
- pipe_get_read_fd, /* get_read_fd */
- pipe_get_write_fd, /* get_write_fd */
+ pipe_get_fd, /* get_fd */
no_flush, /* flush */
pipe_get_info, /* get_file_info */
pipe_destroy /* destroy */
@@ -114,7 +112,7 @@
return (pipe->side == READ_SIDE) ? POLLIN : POLLOUT;
}
-static int pipe_get_read_fd( struct object *obj )
+static int pipe_get_fd( struct object *obj )
{
struct pipe *pipe = (struct pipe *)obj;
assert( obj->ops == &pipe_ops );
@@ -124,29 +122,6 @@
set_error( STATUS_PIPE_BROKEN );
return -1;
}
- if (pipe->side != READ_SIDE) /* FIXME: should not be necessary */
- {
- set_error( STATUS_ACCESS_DENIED );
- return -1;
- }
- return dup( pipe->obj.fd );
-}
-
-static int pipe_get_write_fd( struct object *obj )
-{
- struct pipe *pipe = (struct pipe *)obj;
- assert( obj->ops == &pipe_ops );
-
- if (!pipe->other)
- {
- set_error( STATUS_PIPE_BROKEN );
- return -1;
- }
- if (pipe->side != WRITE_SIDE) /* FIXME: should not be necessary */
- {
- set_error( STATUS_ACCESS_DENIED );
- return -1;
- }
return dup( pipe->obj.fd );
}